序文 CSS がフロントエンド開発の基本的なスキルであるならば、「セレクター」は基礎中の基礎です。これらの紛らわしいセレクターをコピーしたり学習したりしているのであれば、あなたは正しい場所に来ています、私の古い友人よ。 この記事では、それぞれの機能を直接比較して、すぐに習得できるようにします。
第一子と末子 次の 2 つのセレクターは、兄弟セットの最初の要素と一致します。 注: このセレクターが機能するには、実際に満たす必要がある条件が 3 つあります。
ここでは 最初のタイプと最後のタイプ これらの 2 つのセレクターは、要素が実際にグループ内の最初の (最後の) 要素であるかどうかに関係なく、同じタイプの最初の (最後の) 要素と一致します。 注: このセレクターが機能するには、実際に満たす必要がある条件が 2 つあります。
ここでは 唯一の子と唯一の型
上図の「分離された」要素は最初の 最初の n 番目の子と n 番目の最後の子 これらの疑似クラス セレクターの最も興味深い点は、式 実際、数学的な観点からルールを理解するのは非常に簡単なので、私たちの考え方は CSS によって固められています。たとえば、次のコードがあります。 <スタイル> p:n番目の子(2n+1){ 色:青; } </スタイル> <本文> <p>最初の行</p> <p>2行目</p> <p>3行目</p> </本文> 思考モード:
結果: |
式 | 説明する |
---|---|
2n | すべての偶数要素 |
2n+1 | すべての奇数要素 |
n と n+1 | すべての要素 |
2+2 番目 | 2 番目の要素以降の要素 (2 番目の要素を含む) |
3+3 番目 | 3番目の要素以降の要素(3番目の要素を含む) |
0オン | 一致するものはありません |
3n+4 | 4、7、10、13 .... |
1 | 最初の要素のみに一致 |
-n+2 | 最初の2つの要素のみに一致します |
n番目の子(奇数) | 奇妙な要素 |
n番目の子(偶数) | 偶数要素 |
ただし、 nth-child
依然として同じ兄弟要素のセットに一致することを忘れないでください。興味深いのは、 nth-child
セレクターを使用してフィルタリングしますが、スタイルを適用するときに、一致した要素にスタイルを適用しないことです。
上の図では、 <div>
内の 2 つの<p>
要素のグループが兄弟要素として一致していますが、興味深いことに、3 番目の<p>
要素「3 行目」も一致しています。つまり、一致した<p>
要素ではなく、兄弟要素のグループにスタイルが直接適用されます。ただし、図の「3 番目のグループ」の<p>
が<div>
である場合、異なるタイプのスタイルは適用されないことに注意してください。
nth-last-child
は後ろから前へのバージョンですが、ここでは詳細な例は示しません。
MDN では、要素の数に応じて要素のスタイルを制御できる興味深い例も紹介されています。
li:n番目最後の子(n+3)、 li:n番目最後の子(n+3) ~ li { 色: 赤; }
<h4>4 つの項目のリスト (スタイル付き):</h4> <オル> <li>1つ</li> <li>2</li> <li>3</li> <li>4</li> </ol> <h4>2 つの項目のリスト (スタイルなし):</h4> <オル> <li>1つ</li> <li>2</li> </ol>
n 番目のタイプと n 番目の最後のタイプ
nth-of-type
:
nth-of-type
がnth-child
と異なることに気付きましたか? 計算後、スタイルは兄弟要素ではなく、一致した要素に適用されます。
nth-last-of-type
、ここでは詳しく説明しません。
以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。
>>: Docker で Elasticsearch Kibana と ik Word Segender をデプロイする詳細な説明
サンプルコード: java.util.Random をインポートします。 java.util.UUI...
目次1. 必要な環境をインストールする //gccをインストールする yum で gcc-c++ を...
デフォルトでは、ヘッダーの幅と高さはコンテンツに応じて自動的に調整されます。ヘッダーの幅と高さを手動...
1. モジュールをインポートし、検証状態を定義する PIL から Image、ImageDraw、...
効果図は以下のとおりです。 <!DOCTYPE html> <html lang=...
この記事を書いている時点でのReactのバージョンは16.13.1です1 npm run eject...
<em></em> などのフレーズ要素を使用すると、意図した視覚スタイルを維...
関数を記述できます。主に正規表現を使用して判断を行います。入力文字が空の場合は、「-」を使用して置き...
右クリックメニューを無効にする <body oncontextmenu=self.event....
【歴史的背景】私は 3 年間 MySQL-DBA として働いてきましたが、MySQL が「基本的に利...
Docker を初めて使用する場合は、コンテナの管理を始めるために習得する必要がある基本的なコマン...
新しい CSS 機能を使用する場合、その互換性は常に考慮されます。おそらく、その互換性、どのブラウザ...
これ以上無駄話をして時間を無駄にしないので、今日の話題を始めましょう。 HTML のメタタグ1. メ...
目次序文1. プロジェクトアーキテクチャ2. Echart公式サイトにアクセスして自己分析を学ぶ2....
免責事項:このパスワード リセット方法は、Homebrew によってインストールされた MySQL ...