2012-02-08 16 views
3

Colorzilla gradient editorを使用してグラデーションを作成しました。ルールを使用してIE9のグラデーション: "filter:none"を使用しても動作しません

は、IE9のために動作しません生成されたが、私はthis発見し、私はそれがIE9の条件を使用して働いていた期待が、それはまだ動作しません。..

<html> 
<head> 

<style type="text/css"> 
div { 
background: rgb(208,228,247); /* Old browsers */ 
/* IE9 SVG, needs conditional override of 'filter' to 'none' */ 
background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2QwZTRmNyIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjUwJSIgc3RvcC1jb2xvcj0iIzBhNzdkNSIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiM4N2JjZWEiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+); 
background: -moz-linear-gradient(top, rgba(208,228,247,1) 0%, rgba(10,119,213,1) 50%, rgba(135,188,234,1) 100%); /* FF3.6+ */ 
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(208,228,247,1)), color-stop(50%,rgba(10,119,213,1)), color-stop(100%,rgba(135,188,234,1))); /* Chrome,Safari4+ */ 
background: -webkit-linear-gradient(top, rgba(208,228,247,1) 0%,rgba(10,119,213,1) 50%,rgba(135,188,234,1) 100%); /* Chrome10+,Safari5.1+ */ 
background: -o-linear-gradient(top, rgba(208,228,247,1) 0%,rgba(10,119,213,1) 50%,rgba(135,188,234,1) 100%); /* Opera 11.10+ */ 
background: -ms-linear-gradient(top, rgba(208,228,247,1) 0%,rgba(10,119,213,1) 50%,rgba(135,188,234,1) 100%); /* IE10+ */ 
background: linear-gradient(top, rgba(208,228,247,1) 0%,rgba(10,119,213,1) 50%,rgba(135,188,234,1) 100%); /* W3C */ 
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#d0e4f7', endColorstr='#87bcea',GradientType=0); /* IE6-8 */ 

} 

</style> 

<!--[if IE 9]> 
    <style type="text/css"> 
    div { 
     filter: none; 
    } 
    </style> 
<![endif]--> 

</head> 
<body> 


<div></div> 

</body> 
</html> 

任意の助けを?

答えて

0

これは(http://www.w3schools.com/svg/svg_grad_linear.asp)私のために働いた

/* IE 9 */

.some_element { 
background-image: url(
header('Content-type: image/svg+xml; charset=utf-8'); 
<?xml version="1.0"?> 
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.0" preserveAspectRatio="none" width="100%" height="100%"> 
    <defs> 
     <linearGradient id="linear-gradient" x1="0%" y1="0%" x2="0%" y2="100%" spreadMethod="pad"> 
      <stop offset="0%" stop-color="#212121" stop-opacity="1"/> 
      <stop offset="100%" stop-color="#cccccc" stop-opacity="1"/> 
     </linearGradient> 
    </defs> 
    <rect width="100%" height="100%" style="fill: url(#linear-gradient);"/> 
</svg> 
); 
} 

あなたが更新することができますあなたがそれに応じて望むものまでの価値。私はフィルターを使用しなかった:none CSS。

0

ドキュメントがQuirksモードhttp://en.wikipedia.org/wiki/Quirks_mode#Triggering_different_rendering_modesになっているために、動作しないことがあります。私はちょうどIE9で働いていなかったあらゆる種類のメソッドの組み合わせを試してみるのに2,3時間を費やしています。そして、デバッグツールのウィンドウが "ブラウザモード:IE9ドキュメントモード:奇妙な"モードでレンダリングしていることが分かりました。私の文書の一番上に<!DOCTYPE html>を置くとすぐに修正されました。

質問にお答えするのは少し遅れますが、これが他の人に役立つことを願っております:)