-2

最近、HTML5 を使用するように Web サイトをリファクタリングしました。IE7 と IE8 を除いて、ほとんどのブラウザで問題なく動作します。

これは、明らかに IE7 で無視される <header>、<section>、および <article> タグの使用が原因のようです。私のCSSは、これらの特定のタグフォーマットサブクラスを定義しています。

header { color: #fff;  background: url("background1.jpg"); 
        padding: 10px 40px 20px 40px; margin-bottom: 20px; }
header a { color: #fff; text-decoration: none; outline: none; }
header a:hover { color: #fff; text-decoration: underline; }
header h1 { color: #FFFFFF; font-weight: bold; font-size: 30px; 
          padding-bottom: 20px; padding-top: 0px; }
header h2 { color: #FFFFFF; font-weight: bold; font-size: 16px; padding-bottom: 10px; }
header hr { margin: 10px 10px 0px 0px; }
header .copyright { font-style: italic; font-weight: bold; 
    padding-left: 30px; padding-right: 0px; }

section { padding: 5px 40px 5px 40px; line-height: normal; }

article .main { font-weight: bold; font-size: 20px; line-height: normal; }

問題を引き起こさない他のスタイル定義をスキップしました。

どうすればこの問題を回避できますか? HTML5 タグを削除する必要がありますか?

4

3 に答える 3

6

このスクリプトは、ヘッドセクションで使用できます。

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

html5のほとんどは私にとってIEで動作しますか:-)

于 2012-07-18T10:26:15.743 に答える
0

問題は、ブラウザがまったく認識しないタグに対して特別な処理を行うことです。適用されるスタイルやサブアイテムを含めることができるなどの基本的なことは機能しません。

RTBによってリンクされているようなHTMLシブは、JavaScriptを介してこれらのhtml5タグの基本的な認識を挿入するため、ブラウザーはそれらを有効なタグとして認識します。つまり、スタイルを設定できます。

Modernizrなどのライブラリにはhtml5shivも含まれています(ただし、Modernizrはhtml5機能を有効にしません)。shivは通常、基本的なタグ認識以外は許可しないため、要素のスタイルを設定できます。機能を有効にしません。

于 2012-07-18T10:32:05.463 に答える
0

JavaScript で要素を作成しようとすると、IE がそれをレンダリングします。

document.createElement('header');
document.createElement('section');
document.createElement('article');
于 2012-07-18T10:37:18.263 に答える