我一直使用jQuery和IE過濾器在IE中創建陰影效果< = 9,以彌補缺失的text-shadow
屬性。這可以在頂級頁h2
標題on this site,這在不支持text-shadow屬性(由modernizr
檢測)來複制h2
元素中的文本瀏覽器使用jQuery的可以看出...IE假文字陰影流程與其文字分開
jQuery(".no-textshadow h1, .no-textshadow h2").each(function(){
var text_shadow_markup = jQuery(this).html();
jQuery(this).append("<span class='shadow'>"+text_shadow_markup+"</span>");
});
...它的樣式與此CSS(這IE drop shadow technique提供):
@media only screen and (min-width: 768px) {
h2 {
text-shadow: #000000 0px 5px 5px;
position: relative;
zoom: 1;
z-index: 1;
}
h2 span.shadow {
color: #000000;
position: absolute;
left: -7px;
top: -2px;
z-index: -1;
zoom: 1;
filter: progid:DXImageTransform.Microsoft.Glow(Color=#000000,Strength=2) progid:DXImageTransform.Microsoft.blur(pixelradius=5,enabled='true');
-ms-filter: "progid:DXImageTransform.Microsoft.Glow(Color=#000000,Strength=2) progid:DXImageTransform.Microsoft.blur(pixelradius=5,enabled='true')";
}
}
問題:陰影獨立地流動背後的文字。您可以在IE8和IE9中始終看到這一點,方法是慢慢更改窗口寬度,直到其中一個陰影從文本中彈出。
我不明白如果陰影span
絕對位於h2
元素的包含框中會發生這種情況。然而,他們能夠流動,就好像他們是獨立的。我意識到這可能是一個瀏覽器錯誤,因此會很滿意IE9的支持IE8 &的解決方法,因爲如果有人可以指出我的應用程序上面有任何問題。
p.s.,我聽說CSS Sandpaper text-shadow實現了類似的技術,並會接受某人的認可,如果這是一個接受的最佳實踐方式來處理上述問題。