Warum sind n-te Typ-/n-te Kind-Selektoren für verschachtelte Elemente ungültig?
P粉662802882
P粉662802882 2023-08-24 14:50:42
0
1
499

Ich versuche, den Stil einer ungeraden Anzahl von Divs zu ändern, die in einem Div enthalten sind. Aber der Stilselektor nth-of-type(odd) für ungerade Divs wirkt sich auf alle Divs aus, wenn er in einem anderen Div enthalten ist. Hier ist mein Code für ein normales Div und eine ungerade Anzahl von Divs:


.video-entry-summary { Breite: 214px; Höhe: 210px; Rand links: 10px; schweben: links; Position: relativ; Überlauf versteckt; Rand: 1 Pixel einfarbig schwarz; } .video-entry-summary:nth-of-type(odd) { Breite: 214px; Höhe: 210px; Rand links: 0px; schweben: links; Position: relativ; Überlauf versteckt; Rand: 1 Pixel einfarbig schwarz; Hintergrund: #ccc; }
Video 1
Video 2
Video 3
Video 4


Aus irgendeinem Grund funktionieren die nth-of-type-Selektoren nicht, wenn sie in meinem Div enthalten sind, aber sie funktionieren, wenn sie in keinem Div enthalten sind.

Arbeitsversion, wenn nicht in einem div eingeschlossen:


.video-entry-summary { Breite: 214px; Höhe: 210px; Rand links: 10px; schweben: links; Position: relativ; Überlauf versteckt; Rand: 1 Pixel einfarbig schwarz; } .video-entry-summary:nth-of-type(odd) { Breite: 214px; Höhe: 210px; Rand links: 0px; schweben: links; Position: relativ; Überlauf versteckt; Rand: 1 Pixel einfarbig schwarz; Hintergrund: #ccc; }
Video 1
Video 2
Video 3
Video 4


Wie kann ich den Anfangscode mit dem oben genannten identisch machen?

P粉662802882
P粉662802882

Antworte allen (1)
P粉785522400

:nth-of-type():nth-child()类似,它们都必须来自同一个父元素。如果你需要这些包装的div,则应该在这些包装器上使用:nth-of-type()

div.post:nth-of-type(odd) .video-entry-summary { width:214px; height:210px; margin-left:0px; float:left; position:relative; overflow:hidden; border:1px solid black; background:#ccc; }

如果所有的兄弟元素都是.post,则应该使用:nth-child()来避免与:nth-of-type()的真正含义混淆:

.post:nth-child(odd) .video-entry-summary { width:214px; height:210px; margin-left:0px; float:left; position:relative; overflow:hidden; border:1px solid black; background:#ccc; }

.video-entry-summary { width: 214px; height: 210px; margin-left: 10px; float: left; position: relative; overflow: hidden; border: 1px solid black; } .post:nth-child(odd) .video-entry-summary { width: 214px; height: 210px; margin-left: 0px; float: left; position: relative; overflow: hidden; border: 1px solid black; background: #ccc; }
video 1
video 2
video 3
video 4
    Neueste Downloads
    Mehr>
    Web-Effekte
    Quellcode der Website
    Website-Materialien
    Frontend-Vorlage
    Über uns Haftungsausschluss Sitemap
    Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!