1

そのため、HTML5 のセクション要素に問題があります。コンテナを作成する必要があるようです。そうしないと、コンテナはブロックレベルではありません。CSSリセットを追加したので、それが原因かどうかはわかりません。完全なコードを入力する必要があるかどうかわかりません。必要のない余分なコードが含まれていないことを確認したいです。

とにかく、ここにhtml5の一部があります:

<div class="wrapper"><nav><ul>
<li><a href="#">About</a></li>
<li><a href="#">Gallery</a></li>
<li><a href="#">Content</a></li>
</ul>
</nav>
</div>

何らかの理由でそのラッパーがなかった場合、それはブロック引用のように扱われません。

4

1 に答える 1

1

HTML5 セマンティック要素をサポートするブラウザの最小バージョン: IE 9、Firefox 4、Chrome 8、Safari 5、Opera 11.1、Safari iOS 4、Android 2.1。

古いバージョンのブラウザーを使用している場合、ブラウザーはすべての認識されない要素をインライン要素として構築します。この問題を解決するには、CSS に新しいルールを追加するだけです。

article, aside, details, figcaption, figure,
footer, header, hgroup, nav, section {
    display: block;
}

プロパティ 'display' は既に 'block' に設定されているため、この CSS ルールは HTML5 を認識するブラウザーに悪影響を与えることはありません。

古いバージョンの IE (<9) には別の問題があります。彼らは、認識できない要素に CSS ルールのフォーマットを適用することを拒否します。それを修正するには:

<script>
    document.createElement('article');
    document.createElement('aside');
    ...
    document.createElement('section');        
</script>

または、すべての要素のコードを記述したくない場合は、次のスクリプトを使用できます: html5shiv.js。また、興味があるでしょう: Modernizr

于 2013-02-21T00:52:03.227 に答える