2009-06-18 6 views
0

UDPATE Ich war die mit einer AJAX-Antwort übergeben. Scheint, dass IE "neues" CSS nicht mag ... Funktioniert gut, wenn es in Stylesheet oder anfängliche Seitenanforderung platziert wird ...Internet Explorer: css class auf tabrorow setzen?

Internet Explorer scheint nicht auf Klassen zu reagieren, die auf caterrows gesetzt werden. Ist das richtig? Wenn ja, gibt es einen Workaround? Oder mache ich etwas falsch?

<style type="text/css"> 
    table tr.red td {background-color:red;} 
</style> 
<table> 
    <tr class="red"> 
     <td>test</td> 
     <td>test</td> 
    </tr> 
    <tr> 
     <td>test</td> 
     <td>test</td> 
    </tr> 
</table> 
+1

Welche Version von IE? Ich habe keinen Fehler in IE7 gefunden – rahul

+1

IE8 WORK FINE !! –

+0

Ich bin zu faul, um nachzuschauen, aber ich denke, das war ein IE6-Bug, IIRC. –

Antwort

2

Ich sehe keinen Grund, warum das nicht funktionieren sollte.

Vielleicht hat ein anderer Selektor mehr Spezifität und überschreibt diesen Stil. Vielleicht fügt JS ein Stilattribut ein. Vielleicht ist der Hintergrund Ihres Tisches schon rot und Sie merken es nicht. Es gibt eine Reihe von Gründen.

+0

ich stimme zu ... das sollte in allen Browsern gut funktionieren. Meine Wette ist, dass ein anderer Stil widersprüchlich ist. – Alex

1

Verwenden Sie einen gültigen Doctype oder versucht IE im Quirks-Modus zu rendern?

0

Dies ist (für einmal) Internet Explorer das HTML-Spiel richtig zu spielen. Stylesheets sollten nur in <head> Ihres Dokuments angezeigt werden, so dass später das Hinzufügen von ihnen mit AJAX nicht gültig ist. Die beste Lösung wäre, Ihre Regeln in Ihrem Haupt-Stylesheet im Kopf hinzuzufügen. Wahrscheinlich werden Sie im Voraus alle Ihre Styling-Regeln kennen, daher ist es sinnvoll, sie in Ihr Stylesheet zu legen - Sie sollten sie nicht verpassen, weil Sie sie anfangs nicht verwenden.

Wenn Sie wirklich in den Stilen mit AJAX laden müssen, wäre es viel besser, Javascript zu verwenden, um sie anzuwenden (es ist ok Javascript in diesem Fall zu verwenden, wie Sie wissen die Benutzer Javascript, wie sie‘ den Inhalt bereits über AJAX erhalten) oder Inline-Styling (mit dem style-Attribut). jQuery bietet viele nützliche Funktionen für den Umgang mit CSS, also würde ich mir das ansehen - aber ich würde sehr empfehlen, alle Stile in Ihrem Stylesheet möglichst in den Kopf zu stellen.