ホームページ > ウェブフロントエンド > CSSチュートリアル > `:last-child` が常に特定の型の最後の要素を選択しないのはなぜですか?

`:last-child` が常に特定の型の最後の要素を選択しないのはなぜですか?

Susan Sarandon
リリース: 2024-12-10 01:37:13
オリジナル
910 人が閲覧しました

Why Doesn't `:last-child` Always Select the Last Element of a Specific Type?

:last-child 期待どおりに動作しない: ニュアンスを理解する

CSS では、:last-child セレクターは次のことを目的としています。特定の親内の最後の子要素をターゲットにします。ただし、指定された例で強調されているように、このセレクターは、ターゲット要素の先に他の要素が存在する場合、予期しない動作をする可能性があります。

:last-child セレクターは、要素が絶対的な最後の要素である場合にのみ要素に適用されます。親コンテナ内で。これは、要素が特定のクラスまたは型の最後の要素であっても、その後に一致しない要素がある場合、:last-child はその要素を選択しないことを意味します。

この動作を説明するには、次の点を考慮してください。 HTML と CSS:

<ul>
    <li class="complete">1</li>
    <li class="complete">2</li>
    <li>3</li>
    <li>4</li>
</ul>
ログイン後にコピー
li.complete:last-child {
    background-color: yellow;
}
ログイン後にコピー

このシナリオでは、:last-child セレクターは最後の

  • には適用されません。これは
      の最後の要素ではないため、「complete」クラスを使用します。代わりに、4 番目の
    • クラスのないものは最後の子とみなされ、背景色が黄色に設定されます。

      このニュアンスは、特に :last-of-type などの他のセレクターと組み合わせる場合、混乱を招く可能性があります。 :last-child は、クラスや型に関係なく、コンテナ内の最後の要素のみをターゲットにすることを覚えておくことが重要です。

      この制限を克服するには、:last-of-type や jQuery メソッドなどの代替セレクターを使用します。 $("li.complete").last() などを使用して、特定の属性を持つ最終要素をターゲットにすることができます。

      以上が`:last-child` が常に特定の型の最後の要素を選択しないのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

  • ソース:php.cn
    このウェブサイトの声明
    この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
    著者別の最新記事
    人気のチュートリアル
    詳細>
    最新のダウンロード
    詳細>
    ウェブエフェクト
    公式サイト
    サイト素材
    フロントエンドテンプレート