ユーザ用ツール

サイト用ツール


css

CSS

セレクタ

セレクタのタイプ

*全て
E要素セレクタ
E#xIDセレクタ
E.xクラスセレクタ
E[x]属性セレクタ、属性値によって選択する
E:x疑似クラスセレクタ、ユーザ操作や要素の位置、数などで特定の状態である要素を選択する
E::x疑似要素セレクタ、HTMLの要素ではない部分を要素のようにを選択する
E1 E2子孫セレクタ、E1の子孫要素であるE2
E1 > E2子セレクタ、E1の子要素であるE2
E1 + E2隣接セレクタ、E1の次の弟要素であるE2
E1 ~ E2間接セレクタ、E1の全ての弟要素であるE2
E:not(s)否定疑似クラスセレクタ、sで指定したセレクタに該当しないE

属性セレクタ

E[attr]attr属性を持つE要素
E[attr=“hoge”]値がhogeであるattr属性を持つE要素
E[attr*=“hoge”]値がhogeに部分一致するattr属性を持つE要素
E[attr^="hoge"]値がhogeに前方一致するattr属性を持つE要素
E[attr$=“hoge”]値がhogeに後方一致するattr属性を持つE要素
E[attr~=“hoge”]値がhogeであるattr属性を持つE要素、値を複数もつ場合はどれか一つが一致すればよい
E[attr|="hoge"]値をハイフン区切りし、そのうちどれかがhogeであるattr属性を持つE要素

疑似クラスセレクタ

E:rootルート要素、HTML文書ではhtml要素のこと
E:nth-of-type(n)兄弟要素中のE要素でn番目のもの
E:nth-last-of-type(n)兄弟要素中のE要素で後ろからn番目のもの
E:first-of-type兄弟要素中のE要素で最初のもの = E:nth-of-type(1)
E:last-of-type兄弟要素中のE要素で最後のもの = E:nth-last-of-type(1)
E:only-of-type兄弟にE要素がひとつしかない場合、そのE要素
E:nth-child(n)兄弟の中でn番目にあるE要素
E:nth-last-child(n)兄弟の中で後ろからn番目にあるE要素
E:first-child兄弟の中で最初の要素であるE
E:last-child兄弟の中で最後の要素であるE
E:only-child兄弟要素のないE要素
E:empty子要素の無いE要素
E:linkリンク
E:visited訪問済みリンク
E:activeアクティブ
E:hoverマウスオーバー
E:focusフォーカス
E:targetページ内リンクターゲット
E:lang(fr)言語
E:enabled有効
E:disabled無効
E:checkedチェック
E:indeterminateJavaScriptでindeterminateがtrueにされた場合

xxxx-childとxxxx-of-typeは兄弟要素の中の位置、順番で指定する疑似クラス。childは全ての兄弟要素が数え上げの対象になるが、of-typeでは自分と同一種類の兄弟要素のみが数え上げの対象になる。

nth の指定方法

an + b の形で指定できる(b + an はダメ、n = 0,1,2,3…、a, bは整数)

  • 2を指定すると2番目のみ
  • 2nを指定すると偶数番目
  • evenを指定すると偶数番目(⇒ 2n と同じ)
  • oddを指定すると奇数番目(⇒ 2n + 1 または 2n - 1 と同じ)
  • 3nを指定すると3の倍数番目
  • 10n-1を指定すると、9、19, 29 .. 番目
  • n+2と指定すると2つ目の要素以降が対象(=最初の要素を除外)
  • -n+4とすると最初の4つまでを指定(a = -1, b = 4)

nth-xxx では n に 0, 1, 2, 3, 4 … を代入して選択される要素を計算する

  • 2 は 2, 2, 2, 2, 2 … なので、2番目のみが選択される(a = 0, b = 2、 0n + 2 と考える)
  • n は 0, 1, 2, 3, 4 … なので、全ての要素が選択される。
  • 2n+1 は 1, 3, 5, 7, 9 … となるので、奇数が選択される。
  • -n+4 は 4, 3, 2, 1, 0, -1, -2 … となるので最初の4つが選択される(0番目やマイナス番目の要素は存在しない)
  • n+2 は 2, 3, 4, 5, 6 … となるので2つ目以降が選択される

of-typeとchild

いずれも兄弟要素の中の指定番目の要素を選択するもの

  • -of-typeは、自分と異なる兄弟要素を数えない。
  • -childは、自分と異なる兄弟要素も数える。

子要素がすべて同一の要素であれば、どちらを使っても同じである。

疑似要素セレクタ

E::first-lineE要素の1行目
E::first-letterE要素の1文字目
E::afterE要素の後に生成された空間
E::beforeE要素の前に生成された空間

CSS振り分け

外観モードによる振り分け

OSのダークモードへの対応(Firefox 67以降など、2019年3月現在対応ブラウザなし)

<!-- ライトモード、prefers-color-theme未対応の場合のCSS -->
<link rel="stylesheet" href="light.css">
<!-- ダークモードのCSS -->
<link rel="stylesheet" media="(prefers-color-scheme: dark)" href="dark.css">

iPhone用のview port設定(拡大縮小の禁止設定)

<meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0; user-scalable=0;">

iPhone、iPad用にCSS振り分け

<!-- iPhone -->
<link rel="stylesheet" media="screen and (max-device-width: 480px)" href="iphone.css">
 
<!-- iPhone Not Retina -->
<link rel="stylesheet" media="screen and (max-device-width: 480px) and (-webkit-min-device-pixel-ratio: 1)" href="iphone3.css">
 
<!-- iPhone Retina -->
<link rel="stylesheet" media="screen and (max-device-width: 480px) and (-webkit-min-device-pixel-ratio: 2)" href="iphone4.css">
 
<!-- iPad -->
<link rel="stylesheet" media="screen and (min-device-width: 481px) and (max-device-width: 1024px)" href="iPad.css">
 
<!-- iPad 縦表示 -->
<link rel="stylesheet" media="screen and (min-device-width: 481px) and (max-device-width: 1024px) and (orientation:portrait)" href="iPadPortrait.css">
 
<!-- iPad 横表示 -->
<link rel="stylesheet" media="screen and (min-device-width: 481px) and (max-device-width: 1024px) and (orientation:landscape)" href="iPadLandscape.css">
 
<!-- PC用 -->
<link rel="stylesheet" media="screen and (min-device-width: 1025px)" href="pc.css">
css.txt · 最終更新: 2019/03/18 04:24 by nullpon