CSSのz-indexの確認や管理を便利にする方法

何かと管理が面倒で、ややこしいことになりがちなz-indexですが、今回はそんなz-indexを確認したり管理するのに役立つ情報をまとめておきます。
Chrome拡張機能:DevTools z-index
![[z-index]タブ](https://webrandum.net/mskz/wp-content/uploads/2020/05/image_2-10-1024x557.png)
Chrome拡張機能のDevTools z-indexを使うと、z-indexが設定されている要素とその値がリストで表示されます。
インストールするだけで[Elements]に[z-index]タブが追加され、そこから並びと設定されてある値まで分かります。
Chrome開発者ツール:Layers
Chrome開発者ツールに元から備わっている機能で、ウェブサイト上のz-indexの関係を立体的に確認できます。
使い方は、Chrome開発者ツールを開いて、右上の3点をクリックして[More tools]→[Layers]で新しく「Layers」タブが追加されます。

あとはその「Layers」タブへ移動して、回転アイコンを選択してドラッグすると、サイト上を立体的に見れます。

z-indexの値が大きくなるほど、距離は離れるようになっているので、どの要素の上にどの要素が来ているのかも視覚的に分かりやすく確認できます。
マップで管理する
SCSSのマップ機能を使うと、簡単にz-indexの管理ができます。
// z-indexの並び順
$z-list: (
header,
nav,
pulldown,
child
);
// 関数の定義
@function z($name) {
@return index($z-map, $name);
}
// 関数の使用例
.header {
z-index: z(header); // 1
}
.child {
z-index: z(child); // 4
}マップ内の順番がそのままz-indexの値になります。
並びを変えたいときは$z-listのマップ内の順を変えるだけで済むので、管理がかなりラクになります。
さらに入れ子などにも対応した管理方法も下記で紹介されています。


WordPressで「現在メンテナンス中のため、しばらくの間ご利用いただけません。」の状態でログインできなくなった場合の対処法
Visual Studio Codeでパス補完機能を細かく設定して自分好みにできる拡張機能「Path Autocomplete」
Nuxt.jsでページを作成・追加する方法|Nuxt.jsの基本
Visual Studio Codeの設定を複数の端末間で同期する「Settings Sync」機能の使い方
Vue CLI 3でfaviconの設定をする方法
Webデザイナーを目指す専門学生が技術ブログを書くメリット
HTML・CSSでWebサイト制作を行う際に必要なツール
HTTP/2が設定されているはずなのに、ブラウザ上でHTTP/1.1になってしまう場合はセキュリティソフトを確認
SourceTreeのカスタムアクションを使って差分ファイルだけをまとめる方法
Android実機で表示しているサイトを、Chrome開発者ツールで開いて検証する方法
iTerm2で「Use System Window Restoration Setting」を設定しているとアラートが表示されて機能しない
Google Chromeのサイト内検索(カスタム検索)機能を別のプロファイルに移行する方法
iPadで入力モードを切り替えずに数字や記号をすばやく入力する方法
iPhoneやiPadでYouTubeの再生速度を3倍速や4倍速にする方法
Keynoteで有効にしているはずのフォントが表示されない現象
MacのKeynoteにハイライトされた状態でコードを貼り付ける方法
AirPodsで片耳を外しても再生が止まらないようにする方法
iTerm2でマウスやトラックパッドの操作を設定できる環境設定の「Pointer」タブ
DeepLで「インターネット接続に問題があります」と表示されて翻訳できないときに確認すること
Ulyssesの「第2のエディタ」表示を使って2つのシートを横並びに表示する
AppCleanerでMacアプリを関連ファイルごと完全に削除する
操作に没頭できる!Firefox版 Arcのようなブラウザ「Zen Browser」
chezmoi(シェモア)で始めるdotfiles管理
GitHubの通知を見逃さない!通知に特化したアプリ「Gitify」
Keyboard Maestroの変数基礎
Neovimを使い始める最初の一歩として便利な「LazyVim」
ウェブサイトをmacOSアプリとしてラッピングする「Unite Pro」
Keyboard Maestroの「Macro Debugger」で複雑なマクロのデバッグを行う方法
無料版でも高機能なランチャーアプリ「Raycast」の基本機能と環境設定
OnyXでターミナルを使わずにmacOSの詳細設定を行う