css擬似クラスと擬似要素およびセレクタ優先度
4404 ワード
擬似クラスは架空の状態または特殊な属性を持つ要素であり、cssを使用してスタイル修飾することができる.よく見られるいくつかの偽類は次のとおりです.
擬似クラスの前には常にコロン(:)が付けられます.
よく見られるいくつかの偽元素
擬似要素では、css 3は2つのコロン(::)を導入しますが、ブラウザとの互換性を向上させるために、単一のコロン(:)を使用することもできます.しかし、いくつかの要素には2つのコロンを使用する必要があります::backdrop.
疑似エレメントがCSSによって生成されるコンテンツは、
この擬似要素を使用して追加したテキストは選択できないことを覚えておいてください.
HTML:
CSS:
次のようにレンダリングされます.
注意:「Hello」のスペースも同時に追加されました.
なお、この擬似要素を使用して追加した内容は選択できません.
HTML:
CSS:
レンダリングの結果は次のとおりです.
注意:
再度、
HTML:
最初の行のテキストに画像、プレーヤー、テーブルなどの要素が含まれている場合、最初のアルファベットは影響を受けずに選択できます.
これは、画像や外部設定を使用する必要がない場合に、段落の魅力を高めるなど、段落において良い応用です.
ヒント:
CSS:
段落で使用する場合、たとえば、テキストが包まれていても、段落の最初の行のテキストにスタイルを変更します.
CSS:
まず、cssセレクタ(cssセレクタ)にはどのようなものがありますか?
1.ラベルセレクタ(body,div,p,ul,liなど)
2.クラスセレクタ(例:class=“head”、class=“head_logo”)
3.IDセレクタ(id=“name”、id=“name_txt”など)
4.グローバルセレクタ(例:*番)
5.セレクタの組み合わせ(例:.head.head_logo、注意両セレクタはスペースキーで区切られている)
6.子孫セレクタ(#head.nav ulli親セットから子孫セットへのセレクタなど)
7.グループセレクタdiv,span,img{color:Red}は、同じスタイルのラベルグループ表示である
8.セレクタの継承(div pなど、2つのセレクタがスペースキーで区切られていることに注意)
9.擬似クラスセレクタ(例えば、リンクスタイル、a要素の擬似クラス、4つの異なる状態:link、visited、active、hover).
10.文字列が一致する属性選択子(^$*の3種類で、それぞれ開始、終了、含む)
11.サブセレクタ(div>p、大きい番号付き)
12.CSS隣接兄弟セレクタ(例:h 1+p、プラス記号+)
属性の後に異なるレベルで使用!importantは、ページ内の任意の場所で定義された要素スタイルを上書きします.スタイル属性として要素に書き込まれるスタイル1、idセレクタ2、クラスセレクタ|ダミークラスセレクタ(nth-childなど)|属性セレクタ([title])3、ラベルセレクタ4、ワイルドカードセレクタ5、ブラウザカスタマイズまたは継承
以上のcssは互いに総括的なソートを上書きします:!important>行内スタイル>IDセレクタ>クラスセレクタ=擬似クラス=プロパティ>ラベル>ワイルドカード>継承>ブラウザデフォルトプロパティリファレンスリンクhttps://www.w3cplus.com/css/an-ultimate-guide-to-css-pseudo-classes-and-pseudo-elements.html
:link ,:visited,:hover,:active,:first-child,:nth-child,:nth-of-type
擬似クラスの前には常にコロン(:)が付けられます.
:link
疑似要素はリンクの正常な状態を表し、アクセスされていないリンクを選択する.visited擬似クラスは、すでにアクセスされているリンクに使用されます.:hover
擬似クラスは、ユーザのマウスがリンクの上にあるときに要素のスタイルを修飾するために使用される.:active
マウスクリック時のアクティブ化を示します.ここで宣言する必要があります.:link
擬似要素は、このカテゴリのすべての擬似要素の前に宣言する必要があります.その順番は:link
・、:visited
、:hover
、:active
.p:nth-child(n)
2つを満たす:1、p要素2、親要素のn番目の子であるp:nth-of-type(n)
親要素のn番目の段落(p)の偽要素は、仮想的な要素がHTML要素と同じように扱うことができることを示す.違いは、ドキュメントツリーまたはDOMには存在しません.これは、実際に偽要素を指定していないことを意味しますが、CSSを使用して作成できます.よく見られるいくつかの偽元素
:after,:before,:first-letter
擬似要素では、css 3は2つのコロン(::)を導入しますが、ブラウザとの互換性を向上させるために、単一のコロン(:)を使用することもできます.しかし、いくつかの要素には2つのコロンを使用する必要があります::backdrop.
疑似エレメントがCSSによって生成されるコンテンツは、
content
属性結合:before
または:after
疑似エレメントによって実現される.::BEFORE/:BEFORE
:before
擬似要素とその兄弟:after
別のHTML要素にコンテンツ(テキストまたはグラフィック)を追加するために使用される.同様に、追加されたコンテンツはDOMに実際には存在しないが、操作可能である.また、コンテンツの属性はCSSで宣言する必要があります.この擬似要素を使用して追加したテキストは選択できないことを覚えておいてください.
HTML:
Ricardo
CSS:
h1:before {
content: "Hello "; /* Note the space after the word Hello. */
}
次のようにレンダリングされます.
Hello Ricardo!
注意:「Hello」のスペースも同時に追加されました.
::AFTER/:AFTER
:after
ダミー要素は、別のHTML要素にコンテンツを追加するために使用される(同様にテキストまたはグラフィックである).追加されたコンテンツはDOMには存在しませんが、操作可能です.よりよく機能するためには、コンテンツ属性をCSSで宣言する必要があります.なお、この擬似要素を使用して追加した内容は選択できません.
HTML:
Ricardo
CSS:
h1:after {
content: ", Web Designer!";
}
レンダリングの結果は次のとおりです.
Ricardo, Web Designer!
::BACKDROP (EXPERIMENTAL)
::backdrop
ダミーエレメントはボックスであり、フルスクリーンエレメントの後に生成されるが、他のすべてのコンテンツの上にある.これはよく:fullscreen
擬似クラスと組み合わせてスクリーンの背景色を最大化します.デフォルトの黒を使用したくない場合は.注意:
::backdrop
疑似要素は二重コロンを使用する必要がありますが、単一コロンを使用しても機能しません.再度、
:fullscreen
擬似クラスの例を続けてみましょう.HTML:
This heading will have a solid background color in full-screen mode.
::FIRST-LETTER/:FIRST-LETTER
:first-letter
擬似要素は、テキストの最初の文字を選択するために使用される.最初の行のテキストに画像、プレーヤー、テーブルなどの要素が含まれている場合、最初のアルファベットは影響を受けずに選択できます.
これは、画像や外部設定を使用する必要がない場合に、段落の魅力を高めるなど、段落において良い応用です.
ヒント:
:before
擬似要素を使用して生成されたコンテンツテキストは、DOMに存在しなくても、そのテキストの最初のアルファベットを指定できます.CSS:
h1:first-letter {
font-size: 5em;
}
::FIRST-LINE/:FIRST-LINE
:first-line
疑似エレメントは、エレメントの最初の行を指定します.ブロックレベルの要素で機能し、行内の要素では機能しません.段落で使用する場合、たとえば、テキストが包まれていても、段落の最初の行のテキストにスタイルを変更します.
CSS:
p:first-line {
background: orange;
}
セレクタ優先度
まず、cssセレクタ(cssセレクタ)にはどのようなものがありますか?
1.ラベルセレクタ(body,div,p,ul,liなど)
2.クラスセレクタ(例:class=“head”、class=“head_logo”)
3.IDセレクタ(id=“name”、id=“name_txt”など)
4.グローバルセレクタ(例:*番)
5.セレクタの組み合わせ(例:.head.head_logo、注意両セレクタはスペースキーで区切られている)
6.子孫セレクタ(#head.nav ulli親セットから子孫セットへのセレクタなど)
7.グループセレクタdiv,span,img{color:Red}は、同じスタイルのラベルグループ表示である
8.セレクタの継承(div pなど、2つのセレクタがスペースキーで区切られていることに注意)
9.擬似クラスセレクタ(例えば、リンクスタイル、a要素の擬似クラス、4つの異なる状態:link、visited、active、hover).
10.文字列が一致する属性選択子(^$*の3種類で、それぞれ開始、終了、含む)
11.サブセレクタ(div>p、大きい番号付き)
12.CSS隣接兄弟セレクタ(例:h 1+p、プラス記号+)
優先度
属性の後に異なるレベルで使用!importantは、ページ内の任意の場所で定義された要素スタイルを上書きします.スタイル属性として要素に書き込まれるスタイル1、idセレクタ2、クラスセレクタ|ダミークラスセレクタ(nth-childなど)|属性セレクタ([title])3、ラベルセレクタ4、ワイルドカードセレクタ5、ブラウザカスタマイズまたは継承
//css
:first-child{
color:green;
}.aa{
color: red;
}[title]{
color:blue;
}
//dom
f
以上のcssは互いに総括的なソートを上書きします:!important>行内スタイル>IDセレクタ>クラスセレクタ=擬似クラス=プロパティ>ラベル>ワイルドカード>継承>ブラウザデフォルトプロパティリファレンスリンクhttps://www.w3cplus.com/css/an-ultimate-guide-to-css-pseudo-classes-and-pseudo-elements.html