0

Web サイトのヘッダーとフッターを別の html ファイルに作成し、それらのファイルを Web ページに埋め込んでいます。

苦労してウェブサイトを完成させた後、IE8 でエラーが発生しました。私のヘッダーとフッターは、IE7 & 8 のいたるところに配置されています。

<footer>
    <div id="divObjFooter">
        <object data="/footer.html" type="text/html">
            &nbsp;
        </object>
    </div>
</footer>

更新 - html5 を実行するすべてのバージョンで修正 最終的に、つまりすべてのバージョンをサポートする方法が見つかりました。

<!--[if IE]>
            <div id="footer">
                <div id="divObjFooter">
                    <iframe src="footer.html">&nbsp;</iframe>
                </div>
            </div>
        <![endif]-->

        <![if !IE]>     
            <footer>
                <div id="divObjFooter">
                    <object data="footer.html" type="text/html">&nbsp;</object>
                </div>
            </footer>
        <![endif]>
4

4 に答える 4

1

ie8 以前は HTML5 タグ (あなたの場合は<footer>タグ) をサポートしていないため、スタイルを設定しません。これを回避するには、単純divに を id とともに使用して、そこからスタイルを設定するか、最新かつ最高の HTML5 のものを使用する場合は、html5 shiv を使用できます。

Google コードでホストされているスクリプトをお勧めします: https://code.google.com/p/html5shiv/

于 2013-02-14T20:43:38.637 に答える
0

ターゲット ユーザーに対して新しいタグとセレクターを使用する前に、Web サイトのCan I UseでブラウザーのサポートをHTML5確認してください。CSS3

IE<10 は、最新の html と css をほとんどサポートしていません (40% 未満)。おそらくmodernizrまたは同様のものを使用するか、単に最新の「光沢のある」を使用しないでください

于 2013-02-14T20:47:26.997 に答える
0

最初にタイトルの質問に答えると、IE はobjectIE 4 からこの要素をサポートしています (ただし、初期の実装はお粗末でした)。あなたの問題はその要素にあるようには見えませんが、footer要素のスタイル設定にはまったく別の問題があります。

このfooter要素は IE 7 および IE 8 ではサポートされていません。デフォルトの効果は単に要素のコンテンツをブロックにするだけであり、コンテンツは既にブロック (div要素) であるため、これ自体はほとんど問題になりません。footer問題の原因は、要素にプロパティを設定するいくつかの CSS ルールがあることです。IE 7 ~ 8 では、スタイルを設定できるという意味でも要素を認識しないため、これは機能しません。

簡単な修正方法があります。最初のスタイル シートまたはスタイル シートへの参照の前に、次の行を追加します。

<script>document.createElement('footer')</script>

これは事実上、多くの「シム」や「ポリフィル」、またはそれらと呼ばれるものが行っていることであり、問​​題がある場合はfooter、クイック フィックスのみを使用できます。

または、セレクターdivを使用して内部でCSS ルールを設定します。#divObjFooter

PS object(またはiframe) を使用してフッターを含めることは可能ですが、扱いにくいです。ドキュメント ウィンドウのサブウィンドウに HTML ファイルが含まれ、リンクが正常に機能しません。可能な場合は、サーバー サイド インクルード (SSI) などのサーバー サイド ツールや、より高度な対応ツールを使用することをお勧めします。 、またはページ管理ソフトウェア。

于 2013-02-14T21:03:11.003 に答える
0
<!--[if IE]>
        <div id="footer">
            <div id="divObjFooter">
                <iframe src="footer.html">&nbsp;</iframe>
            </div>
        </div>
    <![endif]-->

    <![if !IE]>     
        <footer>
            <div id="divObjFooter">
                <object data="footer.html" type="text/html">&nbsp;</object>
            </div>
        </footer>
    <![endif]>
于 2013-03-01T00:02:14.370 に答える