2009-06-25 11 views
3

ich das ausprobiert und es funktionierte in allen Browsern (IE, FF, Chrome, Opera und Safari):Auswahl eines Elements, das eine bestimmte Klasse und ID hat

.classname # id

Noch

, kann ich Findest du das nicht irgendwo auf w3c.org erwähnt, kannst du mich darauf hinweisen, wo das erwähnt wird? Ich meine, wenn dies von all diesen Browsern unterstützt wird, dann muss es Teil des Standards sein, nicht wahr?

Vielen Dank

Antwort

4

Sie können Kette CSS-Selektoren, es ist wie mit H1.title, wo Sie eine Typselektor Kette (H1) und eine Klasse-Selektor (.title). Siehe http://www.w3.org/TR/css3-selectors/#selector-syntax

+0

Es ist in der CSS-Syntax bei http://www.w3.org/TR/CSS1/#appendix-b - interessanterweise scheint es erforderlich, dass die ID vor der Klasse kommt (eine der Alternativen für 'simple_selector') Ist 'solitary_id class? pseudo_class?', bedeuten die Fragezeichen, dass die Klasse und pseudo_class optional sind. –

+0

Ich kann diese Syntax oder irgendein Beispiel nicht finden, das eine ID mit einer verketteten Klasse hat, so scheint es, dass sie nicht alle möglichen Kombinationen erwähnen –

+1

Standards schließen normalerweise nicht alle möglichen Kombinationen ein, an denen würde viel ergeben größeres Dokument (in vielen Fällen ein unendlich großes). Die Syntax erlaubt diese Kombination und die Bedeutung ist definiert, und das reicht. –

1

Es ist jedoch nutzlos, nur die Angabe der ID wäre genug.

#id 

... es sei denn, Sie haben versucht, clever zu sein und einen Bezeichner für mehr als ein Element verwendet.

+3

Es gibt eine Verwendung. Möglicherweise verwenden Sie dasselbe CSS auf mehreren Seiten - auf einigen Seiten enthält das Element mit dieser ID die Klasse, bei anderen nicht. –

+1

Richtig, habe nicht daran gedacht. Obwohl ich in der anderen Reihenfolge ketten würde: # id.class – mbillard

+2

Ich sage dir, warum ich das brauche. Ich benutze ein Suckerfish-Menü auf meiner Website, Sie wissen, dass IE6 die Hover-Pseudo-Klasse nur auf Links unterstützt, suckerfish fügt ein kleines Javascript hinzu, um dies für IE6 zu behandeln (fügt eine Klasse in onmouseover hinzu und entfernt sie in onmouseout), I ' Ich versuche den Stil der ersten Ebene von LIs, ich habe zwei Links in der ersten Ebene mit jeweils unterschiedlichen Stilen, auch jeder mit unterschiedlichen Stilen, wenn ich auf schwebte, also möchte ich etwas wie das: .sfhover # firstmenuitem und .sfhover # Zweitmänner –

Verwandte Themen