0

次のコードを使用して、いくつかの条件付きスタイルを Web ページに追加しています (IE 9 以下では従来の条件付きコメントを使用しています)。

<?php if (stripos($_SERVER['HTTP_USER_AGENT'], 'MSIE 10')) { ?>
  <link href="/css/ie9.css" media="screen" rel="stylesheet" />
<?php } ?>

問題は、スタイル シートがまだ IE 10 の一部のバージョンに適用されておらず、IE 11 プレビューに適用されていないことです。IE 10 以降のすべてのバージョンをターゲットにする方法はありますか? [1-9] を使用したフォーマットしか見たことがありませんが、[10-11] は機能していないようです。

4

1 に答える 1

0

ユーザーエージェントチェックにコードを入れて、何かが返されているかどうかを確認してください。「MSIE 10」以外のものを返している可能性があります。IE 10+ が単に IE またはその他のステートメントを返す可能性があります。私はこれとまったく同じことをするためにjavascriptを使用しています。(条件付きコメントの使用に関する純粋主義者からの猫の呼びかけにもかかわらず)

これが私のJavaScriptです:

    function isIE(ver) 
    {
      var myNav = navigator.userAgent.toLowerCase();
      var IEVer = parseInt(myNav.split('msie')[1]);
      if ((typeof IEVer == "undefined") || (IEVer == null)) {
         IEVer = 0;
      }
      if IEVer = ver {
        return true;
      } 
      else {
        return false;
      }
    }

次に、スタイルシートを追加している場所で、次のようなことを行います。

 if isIE(10) { do something }

更新: Microsoft によると、ブラウザー検出ではなく機能検出を使用する必要があります: http://msdn.microsoft.com/en-us/library/ie/hh273397%28v=vs.85%29.aspx

于 2013-10-02T18:28:31.603 に答える