Quantcast
Channel: CSSタグが付けられた新着記事 - Qiita
Viewing all articles
Browse latest Browse all 8945

【初心者向け】もうz-indexの数字で迷うのはヤメにしたい!

$
0
0

どうも7noteです。z-indexのめちゃくちゃな指定はもうヤメにします!

要素の前後の優先順位を決めることができる、z-indexですが便利です。
便利だけど、適当に指定していると思わぬ順番になってしまい、ぐちゃぐちゃに。。。
重ね順の指定ってムズカシイ。

ということで、マイルールを決めます!

その前に、z-indexについておさらい

CSS の z-index プロパティは、位置指定要素とその子孫要素、またはフレックスアイテムの z 順を定義します。より大きな z-index を持つ要素はより小さな要素の上に重なります。
引用元:https://developer.mozilla.org/ja/docs/Web/CSS/z-index

1. 「z-indexを何も指定しないと、後ろに書かれた要素が上にくる。」

2. 「使えるのは整数のみ。(0やマイナスは可)」

ちなみに最大値「2147483647」、最小値「-2147483647」が限界。

3. 「z-indexを有効にするためにはposition指定が必要」

  • position: relative;
  • position: absolute;
  • position: fixed;
  • position: sticky;

これらが指定されている要素にz-indexを指定することでz-indexが有効化されます。

※つまりposition: static;(初期値)には効かない。

本題:z-indexのマイルールを決める

(※以下は私のマイルールです。変更の可能性大。)

使用場所数値~補足
背景的に使いたい大きな要素-100
背面に隠す要素-1 ~ -99疑似要素とか
基準値0初期値
普段使うもの1 ~ 98バルーンとか。
リンクエリア拡大99「biggerlink」や「linkarea」などaタグのクリック範囲を広げるもの
---
モーダル①999※画面固定する要素を含まない
画面固定する要素1000画面固定するヘッダーやフッターなど
---
固定ヘッダーの上にくるnavメニュー1010※ナビゲーションメニューが覆いかぶさるようなやつ
---
モーダル②9999すべてを覆いつくすモーダル

解説

  • 要素の後ろに隠したいもの⇒マイナス値
  • スクロールができる要素に対して⇒1~998
  • スクロールができる要素を覆う⇒999
  • 固定する要素に対して⇒1000~

イメージとしてはこんな感じで設定しています。

-背景-
-基準-
-コンテンツ-
-固定コンテンツ-

大きくこの4層に分けることで大体のレイアウトに対応できるようなイメージです。
もちろんサイトのデザインによって変更が必要な場所も出てくると思うので、その際は予備で空いている間等に設定しなおすことでなんとかなるはず・・・

▼運用イメージ

たとえばスライドショーの矢印なんかはスクロールができる要素であることが多いので、10とかを設定しておきます。
写真タップで、拡大写真を表示したいようなモーダルの動きは、固定ヘッダーも覆うような全画面のデザインなら9999。モーダルよりも固定ヘッダーを上にしておいておきたい場合は999を指定。もし変更したくなっても1桁変えるだけなので簡単!

まとめ

まだ実運用経験が少ないルールですので、他にz-indexを使う場面を追加していく予定ではありますが、「私はこうしています!」みたいなルールがあればぜひ共有してください!

参考:
https://developer.mozilla.org/ja/docs/Web/CSS/z-index
https://saruwakakun.com/html-css/basic/z-index
https://tech.basicinc.jp/articles/170

おそまつ!

~ Qiitaで毎日投稿中!! ~
【初心者向け】WEB制作のちょいテク詰め合わせ


Viewing all articles
Browse latest Browse all 8945

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>