我想開始使用CSS3過濾器:opacity()和filter:drop-shadow( )屬性,目前正在開發中,因爲我看到它們在某些機器上的某些瀏覽器中被硬件加速。但在這個早期,我絕對需要回退到普通的CSS屬性,比如不透明和盒子陰影。CSS3過濾器:不透明度(X)與回退到不透明度:X,相同的過濾器:下降陰影()框陰影
問題是,放置新舊版本的常規CSS回退策略失敗。通常新(如果支持)會覆蓋舊的。但在這種情況下,新老是完全不同的屬性,將結合! CSS聲明...
.half-transparent{
opacity: 0.5;
-webkit-filter: opacity(0.5);
filter: opacity(0.5);
}
...將導致25%的不透明度,而不是50%。
實施例:https://jsfiddle.net/uq4ybvk8/
是否有任何方式(優選地僅CSS)來創建從沿用已久的CSS屬性的新的過濾器性能的回退?
沒有必要同時使用'opacity'和'filter:opacity' ....'opacity'不會去任何地方。 'filter:opacity' is * only another option * and they are not ** exactly ** interchangeable。如果這確實是一個問題,我懷疑你需要使用像[** Modernizr **](https://modernizr.com/)這樣的功能檢測。 –
@Paulie_D:請閱讀我的文字。我已經清楚地說明了我想使用filter:opacity,因爲它比opacity(硬件加速)更具性能優勢。我有一個真實的用例,其中對高分辨率圖像施加的不透明度和框陰影確實會導致Android Chrome瀏覽器(可能受益於硬件加速)的性能問題。 – Jpsy
然後,您需要使用上述功能檢測。 –