This repository has been archived by the owner on Dec 20, 2022. It is now read-only.
Replies: 4 comments 11 replies
-
NアニメページはNuxt.jsで作成されていて、head内にstyleでCSSが入っているよう |
Beta Was this translation helpful? Give feedback.
0 replies
-
/*
カラーパレットを一括置き換え
*/
function recolorPalette() {
//styleタグの数だけ実行
const originalStyleElements = document.querySelectorAll('head style');
originalStyleElements.forEach(e => {
//オリジナルのCSSを取得
const orginalStyleContent = e.textContent;
//カラーパレットの置き換え
//置き換えしたものを再度置き換えないように、一時的に頭に@@をつけ、後ほど#に修正
let recolor = orginalStyleContent;
recolor = recolor.replaceAll('#000000', '@@FFFFFF');
recolor = recolor.replaceAll('#FFFFFF', '@@000000');
recolor = recolor.replaceAll('#252525', '@@FFFFFF');
recolor = recolor.replaceAll('@@', '#');
//置き換えたCSSを元のCSSに置き換え
e.textContent = recolor;
});
} |
Beta Was this translation helpful? Give feedback.
2 replies
-
単純な色変えでは難しかった |
Beta Was this translation helpful? Give feedback.
7 replies
-
どの色の範囲を無彩色として扱うのかが課題 |
Beta Was this translation helpful? Give feedback.
2 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
各ページは、一定のデザインシステムで制作されているため
運営のもとのCSSにある色コード指定は数色に絞られる
であれば、JSで運営のstyle.cssを読み取り
文字列置き換え関数を使い、CSSテキスト内の関係するカラーコードを一括置き換えを行ったCSSファイルを動的に作成して<style>タグ内に入れてしまう。
(どのカラーコードをどう置き換えるかは、ページ毎に定義する)
こうすると以下のメリットが有るのではないか
単純なカラーコード置き換えで解決できない部分については、従来どおり個別にCSSセレクタで書き換える
Beta Was this translation helpful? Give feedback.
All reactions