CarstenP: Link und Hover Definitionen

Beitrag lesen

Hallo Sven!

table#id a:link    { /* styles für alle Links in der Tabelle id */ }
table#id a:visited { /* styles für alle Links in der Tabelle id */ }
table#id a:focus   { /* styles für alle Links in der Tabelle id */ }
table#id a:hover   { /* styles für alle Links in der Tabelle id */ }
table#id a:active  { /* styles für alle Links in der Tabelle id */ }

Funktioniern nicht. Warum? Weil der Selektor "table#id a" folgendes Konstrukt selektiert:
<table id="id"><a href="link">Linktext</a></table>

Aber nicht:
<table id="id"><tr><td><a href="link>Linktext</a></td></tr></table>

Das wäre mir neu (und anscheinend auch dem W3C ;-)

Beispiel-Zitat von http://www.w3.org/TR/REC-CSS2/selector.html#descendant-selectors:

[...]
H1 { color: red }
EM { color: red }
H1 EM { color: blue }

The third rule will match the EM in the following fragment:

<H1>This <SPAN class="myclass">headline
is <EM>very</EM> important</SPAN></H1>

Da hier zwischen H1 und EM noch ein SPAN liegt, sollte es nach Deiner Aussage aber nicht funktionieren.

XY * AB sagt dagegen, daß zwischen XY und AB (mindestens) ein weiteres Element liegen _muß_, damit die Vormatierungen greifen (siehe auf obiger Seite direkt unter dem Beispiel). Würde in dem Problem dieses Threads also genauso funktionieren ;-)

Viele Grüße
Carsten