6

私は本当に奇妙なIEのバグに完全に固執しており、この問題に関する他の投稿はそれを解決していないようです。IE 8は、私が立ち上げたばかりのサイトのHTML5タグにCSSスタイルを適用していません。これまで、私は常にこれをshivや次のようなコードで修正してきました。

<!--[if lt IE 9]>
 <script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script>
 <script>
    document.createElement('header');
    document.createElement('nav');
    document.createElement('section');
    document.createElement('article');
    document.createElement('aside');
    document.createElement('footer');
 </script>
<![endif]-->

ウェブサイトはhttp://www.unyouth.org.au/です。

IE8はヘッダーを認識しているようですが、ASIDEの行に到達するとすぐに機能しなくなります。

なぜこれが起こっているのか誰かが何か考えを持っていますか?どんな助けでも素晴らしいでしょう。

本当にありがとう!

4

4 に答える 4

5

これを理解しました。正しい方向に向けてくれた@Sparky672に感謝します。

この問題を抱えている他の人のために、色付きの破片のすぐ下の曲線はSVGを使用して作成されました。IEがSVGをレンダリングできなかった場合、それを無視するだけだという印象を受けましたが、その下にあるすべてのものを台無しにしていたようです。

IE 8のSVGを削除する方法はまだわかりません。これは、IEの条件付きでコメントアウトすることが機能していないように見えるためですが、それは別の問題です。それを削除すると、スタイリングの問題が修正されます!

于 2012-12-13T00:46:00.367 に答える
3

修正があります。コメントの場合は、インラインSVGをIE9よりも大きいサイズでラップします。

<!--[if gte IE 9]><!-->

    <svg id="svg-source" height="0" version="1.1" 
      xmlns="http://www.w3.org/2000/svg" style="position:absolute; margin-left: -100%" 
      xmlns:xlink="http://www.w3.org/1999/xlink">

    </svg>

<!--<![endif]-->
于 2014-01-27T06:04:04.103 に答える
0

Explorerは無効なHTMLを絶対に嫌います。

無効なHTMLに重複するが含まれていますid。具体的に#siteは、との両方で使用され<header>ます<footer>。一部のブラウザは最初の出現を取得し、残りを無視します。

行440、列18:IDサイトが重複しています。<footer id="site">

行97、列19:IDサイトの最初の出現はここにありました。<header id="site">

于 2012-12-13T00:13:41.327 に答える
0

SVG削除の問題を解決するには(有効なHTMLがあることを確認した後)、標準の代わりに次のコードをページの上部に適用します<html>

<!--[if lt IE 9]> <html class="lt-ie9"> <![endif]-->
<!--[if gt IE 9]><!--> <html> <!--<![endif]-->

これにより、IEバージョンがバージョン9より前のページ全体にクラス「lt-ie9」が適用されます。9以降のバージョンでは、クラスなしの通常の<html>が表示されます。

この時点で、CSSで使用して、これらのブラウザーの要素を削除できるクラスができました。

.lt-ie9 svg {display: none;} /* this will remove all SVG elements with the class */

*免責事項:IE8でこれを試したのは久しぶりです。SVGをdiv.lt-ie9でラップし、代わりに親に適用した場合にのみ機能する可能性があります。どのエラーがスローされたかを思い出せません。テストしますが、Ubuntuを使用しており、このマシンにはVMがありません。*

注:親要素( <html>または<body>)で条件付きIEコメントを使用する方法は一般的であり、多くのバリエーションがあります。この分野でいくつかの調査を適用し、ここで提供されているものよりも一般的なケースを使用する必要があります。これにより、この問題を具体的に解決するだけでなく、この手法の幅広いメリットが得られます。

于 2016-01-16T08:58:17.323 に答える