Wie Sie wahrscheinlich bereits wissen, haben Sie möglicherweise mehrere Klassen für Elemente, die durch ein Leerzeichen getrennt sind.
Beispiel
<div class="content main"></div>
Und mit CSS können Sie dies div
entweder mit .content
oder erreichen .main
. Gibt es eine Möglichkeit, genau dann darauf abzuzielen, wenn beide Klassen vorhanden sind?
Beispiel
<div class="content main">I want this div</div>
<div class="content">I don't care about this one</div>
<div class="main">I don't want this</div>
Welchen CSS-Selektor würde ich verwenden, um nur den ersten zu erhalten div
(vorausgesetzt, ich kann ihn nicht verwenden .content:first-child
oder ähnliches)?
css
css-selectors
Alex
quelle
quelle
Nur deswegen (ich empfehle Ihnen nicht wirklich, dies zu tun) gibt es einen anderen Weg, dies zu tun:
Oder:
Referenz: http://www.w3.org/TR/CSS2/selector.html
Demo: http://jsfiddle.net/eXrSg/
Warum dies tatsächlich nützlich ist (zumindest für IE6):
Da IE6 nicht mehr Klassen unterstützen, können wir nicht verwenden
.content.main
, aber es gibt einige Javascript - Bibliotheken wie IE-7.js , die das Attribut Selektor ermöglichen, scheinen aber immer noch zum Scheitern verurteilt , wenn es um mehrere Klassen kommt. Ich habe diese Problemumgehung in IE6 mit Javascript getestet, das die Attributauswahl aktiviert, und es ist hässlich, aber es funktioniert.Ich habe noch kein Skript gefunden, mit dem IE6 mehrere Klassenselektoren unterstützt, aber ich habe viele gefunden, die Attributselektoren aktivieren. Wenn jemand einen kennt, der funktioniert , rufen Sie mich bitte in den Kommentaren an, damit ich diese Problemumgehung loswerden kann.
quelle