IE でシャドウを動作させるために、私は髪を引っ張ってきました。誰かがこのテーマの経験がありますか? 完全なコードと出力を確認できるように、サイトを公開しました。
私はlesscssを使用しているので、それが私の問題でしょうか? ないことを願っています!!! IE CSS3 Fix ie-css3.htcも使用しています。使用しているコードは次のとおりです。htc を使用せずにこれを実行しようとしましたが、うまくいきませんでした。少なくとも htc は背景のグラデーションをMicrosoft のデフォルトの背景グラデーション色である青黒のみが表示される前は、IE で作業していました。
predefine.less
.RUNgradient(@COLOR: @CLR1){
@CLRL:lighten(@COLOR, 10%);
@CLRD:darken(@COLOR, 10%);
background-color: @CLRL;
background-repeat:repeat-x;
background-image: -khtml-gradient(linear, left top, left bottom, from(@CLRL), to(@CLRD));
background-image: -moz-linear-gradient(top, @CLRL, @CLRD);
background-image: -ms-linear-gradient(top, @CLRL, @CLRD);
background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, @CLRL), color-stop(100%, @CLRD));
background-image: -webkit-linear-gradient(top, @CLRL, @CLRD);
background-image: -o-linear-gradient(top, @CLRL, @CLRD);
background-image: linear-gradient(top, @CLRL, @CLRD);
behavior: url(css/ie-css3.htc);
}
スタイル.レス
div.wrapper{
width:500px;
margin:25px auto;
padding: 10px 25px;
text-align:center;
.RUNgradient;
.RUNshadow;
p{
font:24px @HEADERFONT;
color:#ffffff;
.RUNtextshadow;
}
}
フィルターが答えです!ほとんど...
グラデーションについては、
filter: ~"progid:DXImageTransform.Microsoft.gradient(startColorStr="@CLRL~", EndColorStr="@CLRD~")";
そして影については、
filter: ~"progid:DXImageTransform.Microsoft.shadow(color="@SCLR~", Direction="@DIR~", Strength="@STR~")";
残っているのは、片側だけではなく、要素全体に影が見えるように方向を変えることだけです。
解決
Microsoft フィルターを調査した後、同様の効果を得る方法を見つけました。コーナーは私の好みでは少し荒いですが、これは以前よりもはるかに接近しています!
これは私が使用したシャドウファイラーです...
.RUNshadow(@BLURRING:10px){
@SCLR:#111111;
@DIR:225;
@DIR2:45;
@DIR3:135;
@DIR4:315;
@STR:4;
box-shadow: 0px 1px @BLURRING #111111;
-moz-box-shadow: 0px 1px @BLURRING #111111;
-webkit-box-shadow: 0px 1px @BLURRING #111111;
filter: ~"progid:DXImageTransform.Microsoft.shadow(color="@SCLR~", Direction="@DIR2~", Strength="@STR~")
progid:DXImageTransform.Microsoft.shadow(color="@SCLR~", Direction="@DIR~", Strength="@STR~")
progid:DXImageTransform.Microsoft.shadow(color="@SCLR~", Direction="@DIR3~", Strength="@STR~")
progid:DXImageTransform.Microsoft.shadow(color="@SCLR~", Direction="@DIR4~", Strength="@STR~")";
}