線形グラデーション、境界半径、および不透明度を持つ div があります。これは ie9+、ff、chrome などで動作します。
しかし、IE8には問題があります(css3pieを使用):
filter:progid:DXImageTransform.Microsoft.gradient(startColorstr="#40000000", endColorstr="#40FFFFFF",GradientType=1 );
これはグラデーションと不透明度を取得しますが、無視しますborder-radius: 0 0 100% 0;
パイの背景を使用する
-pie-background: linear-gradient(right, #cce6f5 21%, '.$block_color.' 110%);
と、線形グラデーションが機能し、境界線の半径が機能しますが、不透明度が機能しません。私が試した:
opacity:0.4 // not supported in IE8
-ms-filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=40);
filter: alpha(opacity=40);
上記のいずれも機能しません。
IE 8 で 3 つすべてを同じ div で動作させるにはどうすればよいですか?
ブロックの完全な CSS を 編集します。
width: 204px;
height: 87px;
margin-top: 20px;
opacity: 0.4;
-ms-filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=40);
-o-border-bottom-right-radius: 100%; /* Opera */
-webkit-border-bottom-right-radius: 100%;
-moz-border-radius-bottomright: 100%;
border-radius:0 0 100% 0;
position:relative;
z-index:1;
background-image: linear-gradient(right, #cce6f5 21%, '.$block_color.' 110%);
background-image: -o-linear-gradient(right , #cce6f5 21%, '.$block_color.' 110%);
background-image: -moz-linear-gradient(right , #cce6f5 21%, '.$block_color.' 110%);
background-image: -webkit-linear-gradient(right , #cce6f5 21%, '.$block_color.' 110%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#40'.$ms_block_color.'",endColorstr="#40CCE6F5",GradientType=1 );
zoom:1;
background-image: -webkit-gradient(
linear,
right ,
left ,
color-stop(0.21, #cce6f5),
color-stop(0.80, '.$block_color.')
);
behavior: url(/includes/PIE.htc);