2009-06-18 6 views
0

UDPATE 私はAJAX応答で一緒に過ごしていました。 IEのように "新しい" CSSが好きではないと思われます...スタイルシートや最初のページリクエストに配置されているとうまく動作します...Internet Explorer:tablerowにcssクラスを設定しますか?

インターネットエクスプローラはtablerowsで設定されたクラスに反応しないようです。これは正しいです?もしそうなら、回避策がありますか?または何か間違っているのですか?

<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

どのバージョンのIEですか? IE7で何のエラーも見つからなかった – rahul

+1

IE8 WORK FINE !! –

+0

私はあまりにもそれを見て怠惰だが、私はIE6のバグ、IIRCだと思う。 –

答えて

2

私はそれがうまくいかない理由はありません。

多分、別のセレクターがそのスタイルを上書きしているかもしれません。おそらく、JSはスタイル属性を挿入しています。おそらくあなたのテーブルの背景はすでに赤で、あなたは気づかないでしょう。いくつかの理由があります。

+0

私は同意します。これはすべてのブラウザでうまくいくはずです。私の考えは、別のスタイルが矛盾しているということです。 – Alex

1

有効なdoctypeを使用していますか、またはIEがquirksモードでレンダリングしようとしていますか?

0

これは、(一度だけ)インターネットエクスプローラが正しくHTMLゲームをプレイすることです。スタイルシートは、文書の<の>ヘッドにのみ表示する必要があります。後でAJAXでそれらを追加することは無効です。最善の解決策は、主要なスタイルシートにルールを追加することです。あなたはおそらくあなたのスタイルルールをすべて事前に知っているので、スタイルシートにそれらのルールを入れるのは意味があります。あなたが最初に使っていないので、それらを見逃す必要はありません。あなたが本当にはAJAXでのスタイルにロードする必要がある場合は

、それはそれらを適用するためにJavascriptを使用して多くの方が良いでしょう(それはあなたが彼らが「として、ユーザーがJavaScriptを持っているを知っているとして、この場合にはJavascriptを使用しても大丈夫ですすでにAJAX上でコンテンツを取得している)か、スタイル属性を使用してインラインスタイルを適用しています。 jQueryはCSSを扱うための多くの便利な機能を提供していますので、私はそれを見ていきたいと思いますが、できるだけすべてのスタイルをスタイルシートに入れておくことを強くおすすめします。

関連する問題