2016-06-29 1 views
-1

の下に、私はIE9のCSSルールを定義したいとの下だけなので、私は自分のスタイルシートに次の行を含める:カントだけIE9のCSSルールを定義し、

<!--[if lte IE 9]> 
.gradient { 
    -ms-filter: "progid:DXImageTransform.Microsoft.gradient (GradientType=0, startColorstr=#bbb69c, endColorstr=#ffffff)"; 
} 
<![endif]--> 

それが仕事をdidntの。 Internet Explorer 9は、条件付きタグを離さない限り、それを理解していません。

なぜですか?

ありがとうございます。

+3

どの条件タグを試していますか? HTMLコードを表示できますか? –

+1

これは、次の複製と思われます。http://stackoverflow.com/questions/6654423/target-ie9-only-via-css重複していない場合は、そのアイデアを使用できます。 – Deceiver

+0

このサイトをチェックするhttps://css-tricks.com/how-to-create-an-ie-only-stylesheet/ – Pugazh

答えて

0

条件付きコメント内にのみHTMLコードを追加できます。あなたのページの構造は次のようにする必要があります:

<html> 
    <head> 
     <link rel="stylesheet" type="text/css" href="style.css"> 
    </head> 
    <!--[if lte IE 8]> 
     <link rel="stylesheet" type="text/css" href="ie9.css"> 
    <![endif]--> 
    <body> 
     // body content goes here... 
    </body> 
</html> 

そしてie9.cssに、あなたはあなたのCSSを定義することができ

.gradient { 
    -ms-filter: "progid:DXImageTransform.Microsoft.gradient (GradientType=0, startColorstr=#bbb69c, endColorstr=#ffffff)"; 
} 
+0

私はそのトリックをすでに知っていましたが、私は同じスタイルシート内でそれをやりたいのです。 –

+0

@CainNukeええ、あなたはそれをしたかったと言いましたが、時にはルールを遵守しなければならないこともあります。 –

+0

本当に私が意図したことをする方法がないなら、私はそれをあきらめます。しかし、私は確かに方法があると確信しています。 –

0

スタイルタグにCSSを内蔵。

<html class="ie9-fix"> 
    <head> 
     <link rel="stylesheet" type="text/css" href="style.css"> 
    </head> 
    <!--[if IE]> 
     <style> 
.gradient { 
    -ms-filter: "progid:DXImageTransform.Microsoft.gradient (GradientType=0, startColorstr=#bbb69c, endColorstr=#ffffff)"; 
} 
</style> 
    <![endif]--> 
    <body> 
     // body content goes here... 
    </body> 
</html> 
+0

悪くはないが、私は本当にhtmlを混乱させたくない。唯一のCSS。 –

0

さて、私は答えを見つけたと思う。これはうまくいくようです。

@media screen and (min-width:0\0) { 
gradient {-ms-filter: "progid:DXImageTransform.Microsoft.gradient (GradientType=0, startColorstr=#bbb69c, endColorstr=#ffffff)"; 
} 
関連する問題