2013-02-15 10 views
10

私のページには、ヘッダー、記事、セクション、およびナビという次のHTML5要素が使用されています。 今、私はすべてのディスプレイとしてHTML5要素の上に設定した:ブロックを、と私はヘッダ内の条件文でHTML5のSHIVを含める:HTML5要素をサポートするためにIE9にもHTML5 shivが必要です

<!--[if lt IE 9]> 
<script src="dist/html5shiv.js"></script> 
<![endif]--> 

サイトはIE7 & IE8で正常に動作します - html5shivであることを示します確かにそれは魔法です。 しかし、IE9でサイトをテストすると、HTML5要素内のすべてのコンテンツのスタイリングが欠落しています。 HTML5の要素

<!--[if IE]> 
<script src="dist/html5shiv.js"></script> 
<![endif]--> 

、正しいスタイリングが適用されます、それは今の子供たちだ。できるだけ早く私は条件文を変更するよう

。私は私のIEのバージョンをダブルチェックし、私はIEのバージョン9.0.8112.16421があると言います。

また、サイトはPHPで構築され、PEARのCache_Liteを使用してキャッシュされていることにも言及しておきます。しかし、単純な静的なhtmlページで行われたテストは私にとって同じ結果をもたらします。

+0

あなたのhtmlファイルの 'doctype'は何ですか? 'X-UA-COMPATIBLE'を使用していますか? btw。 2番目の例では、<! - [if lte IE 9]> ' –

+0

<!DOCTYPE html>というHTML5のほうがいいと思います。 head要素の下にはを使います。私の質問を更新しました - 私は[IEなら] –

+0

を使い、 '

答えて

29

このコードを試してみてください。 doctype htmlタグの前に私のサイトの上部にコメントがありました。 IE9のHTML5要素を認識する能力が損なわれているようだ。

これは私が持っていたものです:

<!-- Served From Cache: Wednesday 13th of February 2013 03:02:22 PM --> 
<!DOCTYPE html> 
<html> 
    <head> 

だから私は、その後、DOCTYPEの下にコメントを下に移動することでこの問題を解決することができました。

+12

+1ここに戻ってコミュニティに知らせるためです。これを正しい答えとしてマークすることもできます。原則としてDoctypeの前には何もないはずです。あなたが気付いたように、奇妙なことが起こり始めるからです! –

0

は、私は最終的に問題が何であったかを把握するために管理

<!--[if lt IE 9]> 
<script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script> 
<![endif]--> 
+3

これはIE9の問題にどのように役立ちますか? – JJJ

+1

googlecode.com/svn/trunk/html5助けてもらえるIE9 –

+2

あなたはその質問を読んだことがありますか?彼はすでに震えを使用しています。 * "条件文を変更すると:... html5要素とその子要素が正しいスタイルに適用されるようになりました。" * OPはIE9がshivなしで要素のスタイルを設定しない理由を知りたいIE9はHTML5要素をネイティブにサポートする必要があります。いずれにせよ、 '<! - [if lt IE 9]>'と書いても、IE9では何もしません。 – JJJ

関連する問題