一覧へ戻る
ダークモードに対応
このサイトは余白を使ったデザイン・レイアウトで、白背景のクリーンな雰囲気は気に入っているんだけど、環境によって、また人によっては眩しいと感じると思ったのでダークモードも選択できるようにした。
Astro公式のチュートリアルを参考に、Header内のメニューの横にライト/ダークテーマ切り替え用のボタンを設置。
global.cssで色をCSS変数として定義し、サイト内で直接指定していた色をCSS変数へ置き換えた。実際に定義したデザイントークンはこんな感じ。
:root {
--color-text: #18181b;
--color-muted: #71717a;
--color-bg: #fafafa;
--color-surface: #fff;
--color-border: #f4f4f5;
--color-hover: #fafafa;
--color-divider: #e4e4e7;
--color-accent: #2563eb;
}
html.dark {
--color-text: #f4f4f5;
--color-muted: #a1a1aa;
--color-bg: #18181b;
--color-surface: #27272a;
--color-border: #3f3f46;
--color-hover: #323238;
--color-divider: #52525b;
--color-accent: #60a5fa;
}