Heim > Web-Frontend > CSS-Tutorial > Hauptteil

Detaillierte Erläuterung der Nachkommenselektoren von CSS-Selektoren

小云云
Freigeben: 2018-01-08 10:33:09
Original
2003 Leute haben es durchsucht

Der Nachkommen-Selektor wird verwendet, um alle Nachkommen eines Tags auszuwählen, einschließlich Kinder und Enkel usw., während der Nachkommen-Selektor nur die Nachkommen-Tags des angegebenen Elternelements (die untergeordneten Elemente der ersten Generation des angegebenen Tag-Elements) auswählt. In diesem Artikel werden hauptsächlich die relevanten Informationen zum Nachkommenselektor des CSS-Selektors im Detail vorgestellt. Der Herausgeber findet ihn recht gut, daher werde ich ihn jetzt mit Ihnen teilen und als Referenz geben. Folgen wir dem Herausgeber und werfen wir einen Blick darauf. Ich hoffe, es kann allen helfen.

Der Nachkommenselektor verwendet ein zusätzliches Symbol (spitze Klammern >), um die Beziehung zwischen zwei Elementen anzuzeigen.

Zum Beispiel: body>h1 wählt alle

-Tags der ersten Generation aus.

Beziehungsdiagramm von HTML-Tags

HTML-Code


<h1>body里面的h1标题</h1>

<p>
    <h2>p里面的h2</h2>
    <p>
        p里面的p标签,p标签里面有一个<strong><a href="#">加粗的链接</a></strong>
    </p>
</p>

<h2>body里面的h2标题</h2>

<ul>
    <li>列表1
        <ul>
            <li>小列表a</li>
            <li>小列表b</li>
            <li>小列表c</li>
        </ul>
    </li>
    <li>
        <a href="#">列表2(带链接)</a>
    </li>
    <li>
        <a href="#">列表3(带链接)</a>
    </li>
</ul>
Nach dem Login kopieren

Nachdem Sie die obige Struktur verstanden haben, können Sie den folgenden Code ausprobieren:

CSS-Code


body>h2 {
    color: orange;
}
Nach dem Login kopieren

Im obigen HTML-Code gibt es insgesamt 2

-Tags, aber hat nur ein untergeordnetes Element von

und das andere

h2> ist in

, daher gilt der obige CSS-Code nur für das erste

Das Folgende ist eine interessantere Kinderauswahl

: erstes Kind

Wählen Sie das aus erstes Kind Ein Untertag.

CSS-Code


h2:first-child {
    color: orange;
}
Nach dem Login kopieren

Die Funktion dieses Selektors besteht darin, zuerst alle und bestimmen Sie dann, ob das Tag

an erster Stelle steht.

Da das erste Tag von ist, ist das untergeordnete Element

nicht vom Stil betroffen.

Da

das erste untergeordnete Element von

ist, wird

:last-child

Dieser Selektor ähnelt dem :first-child-Selektor, wählt jedoch das letzte untergeordnete Element eines Elements aus.

CSS-Code


li:last-child {
    font-size: 2em;
}
Nach dem Login kopieren

Wie Sie sehen können, sind „Kleine Liste C“ und „Liste 3 ( mit Link)“ ist größer geworden. Denn diese beiden Elemente sind die letzten angegebenen Elemente.

:only-child

Wählen Sie das einzige untergeordnete Element eines Elements aus.

HTML-Code


<p>
    <p>第一个p的p</p>
</p>
<p>
    <p>第二个p的第一个p</p>
    <a href="#">第二个p的第一个a</a>
</p>
Nach dem Login kopieren

CSS-Code


p:only-child {
    color: orange;
}
Nach dem Login kopieren

Die oben genannten Stile gelten nur für das

-Element des ersten

. Da das zweite

-Element nicht nur

enthält, wird das

-Element vom obigen Stil nicht beeinflusst.

Dieser Selektor ist schwer zu verstehen. Der durch diesen Selektor definierte Stil ist nur wirksam, wenn das angegebene Tag der einzige Nachkomme eines anderen Tags ist. Mit anderen Worten: Es reicht nicht aus, wenn im Nachkommen nur ein angegebenes Tag vorhanden ist. Wenn das angegebene Tag andere Geschwister-Tags hat, ist der von diesem Selektor definierte Stil ungültig.

:nth-child

Dieser Selektor ist komplizierter zu verwenden, aber auch besonders nützlich.

Mit diesem Selektor können Sie problemlos Stile für Zeilen in einer Tabelle, zwei Elemente voneinander entfernte Elemente in einer Liste oder eine andere Anzahl von untergeordneten Elementen definieren.

Dieser Selektor erfordert einen Wert, um zu bestimmen, welche Nachkommen ausgewählt werden.

Die einfachsten Werte sind Schlüsselwörter, nämlich ungerade und gerade.

  1. odd wird verwendet, um ungeradzahlige Nachkommenelemente auszuwählen.

  2. even wird verwendet, um gerade nummerierte Nachkommenelemente auszuwählen.

HTML-Code


<ul>
    <li>1</li>
    <li>2</li>
    <li>3</li>
    <li>4</li>
    <li>5</li>
    <li>6</li>
    <li>7</li>
</ul>
Nach dem Login kopieren
Nach dem Login kopieren

CSS-Code


li:nth-child(odd) {
    background: pink;
}
li:nth-child(even) {
    background: teal;
}
Nach dem Login kopieren

Der Index des ersten untergeordneten Elements ist 1.

Es ist zu beachten, dass der Index des ersten

  • nicht 1 ist, wenn andere Elemente vor dem ersten
  • stehen.
    Zum Beispiel

    HTML-Code


    <ul>
        <a href="#">a</a>
        <li>1</li>
        <li>2</li>
        <li>3</li>
        <li>4</li>
        <li>5</li>
        <li>6</li>
        <li>7</li>
    </ul>
    Nach dem Login kopieren
    Nach dem Login kopieren

    Der Effekt zu diesem Zeitpunkt ist

    li:nth-child(odd) 的意思是找到

  • 元素的父元素,通过父元素来检测每一个
  • 的下标的奇偶。

    因为

  • Verwandte Etiketten:
    Quelle:php.cn
    Erklärung dieser Website
    Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
    Beliebte Tutorials
    Mehr>
    Neueste Downloads
    Mehr>
    Web-Effekte
    Quellcode der Website
    Website-Materialien
    Frontend-Vorlage