css背景漸變相容性問題(非原創)
1、IE瀏覽器下的漸變背景
IE瀏覽器下漸變背景的使用需要使用IE的漸變濾鏡。如下程式碼:
filter: progid:DXImageTransform.Microsoft.gradient(startcolorstr=red,endcolorstr=blue,gradientType=1);
相關說明:
上面的濾鏡程式碼主要有三個引數,依次是:startcolorstr, endcolorstr, 以及gradientType。
其中gradientType=1代表橫向漸變,gradientType=0代表縱向淅變。startcolorstr=”色彩” 代表漸變漸變起始的色彩,endcolorstr=”色彩” 代表漸變結尾的色彩。
上面程式碼實現的是紅色至藍色的漸變,但是不含透明度變化,這是由於IE目前尚未支援opacity屬性以及RGBA顏色,要實現IE下的透明度變化,還是需要使用IE濾鏡,IE的透明度濾鏡功能比較強大,這種強大反而與Firefox或是Safari瀏覽器下的css-gradient背景漸變的用法類似。例如下面的使用:
filter:alpha(opacity=100 finishopacity=0 style=1 startx=0,starty=5,finishx=90,finishy=60)
其中各個引數的含義如下:
opacity表示透明度,預設的範圍是從0 到 100,他們其實是百分比的形式。也就是說,0代表完全透明,100代表完全不透明。
finishopacity 是一個可選引數,如果想要設定漸變的透明效果,就可以使用他們來指定結束時的透明度。範圍也是0 到 100。
style用來指定透明區域的形狀特徵:
0 代表統一形狀
1 代表線形
2 代表放射狀
3 代表矩形。
startx 漸變透明效果開始處的 X座標。
starty 漸變透明效果開始處的 Y座標。
finishx 漸變透明效果結束處的 X座標。
finishy 漸變透明效果結束處的 Y座標。
綜合上述,實現IE下含透明度變化紅藍垂直漸變的程式碼如下:
.gradient{
width:300px;
height:150px;
filter:alpha(opacity=100 finishopacity=50 style=1 startx=0,starty=0,finishx=0,finishy=150) progid:DXImageTransform.Microsoft.gradient(startcolorstr=red,endcolorstr=blue,gradientType=1);
-ms-filter:alpha(opacity=100 finishopacity=50 style=1 startx=0,starty=0,finishx=0,finishy=150) progid:DXImageTransform.Microsoft.gradient(startcolorstr=red,endcolorstr=blue,gradientType=1);
}
2、Firefox瀏覽器下的漸變背景
對於Firefox瀏覽器下(Firefox 3.6+)漸變背景的實現需使用CSS3漸變屬性,-moz-linear-gradient屬性,在之前文章我詳細介紹了Firefox3.6下漸變背景的實現,您有興趣可以狠狠地點選這裡:CSS漸變之CSS3 gradient在Firefox3.6下的使用 。這裡我就不再具體講述了,對於本文開頭提到的要實現的效果的實現可以參見下面的程式碼:
.gradient{
width:300px;
height:150px;
background:-moz-linear-gradient(top, red, rgba(0, 0, 255, 0.5));
}
3、chrome/Safari瀏覽器下的漸變背景實現
對於webkit核心的瀏覽器,如Chrome/Safari瀏覽器下漸變背景的實現也是使用CSS3 漸變方法,css-gradient,具體為-webkit-gradient,使用語Firefox瀏覽器是有一些差異的。我在上上一篇文章對此進行了非常詳細的介紹,您可以狠狠地點選這裡:CSS gradient漸變之webkit核心瀏覽器下的使用 。具體使用就不詳述了,參見下面的程式碼:
.gradient{
width:300px;
height:150px;
background:-webkit-gradient(linear, 0 0, 0 bottom, from(#ff0000), to(rgba(0, 0, 255, 0.5)));
}
4、綜合 – 相容性的漸變背景效果
相關程式碼如下:
.gradient{
width:300px;
height:150px;
filter:alpha(opacity=100 finishopacity=50 style=1 startx=0,starty=0,finishx=0,finishy=150) progid:DXImageTransform.Microsoft.gradient(startcolorstr=red,endcolorstr=blue,gradientType=0);
-ms-filter:alpha(opacity=100 finishopacity=50 style=1 startx=0,starty=0,finishx=0,finishy=150) progid:DXImageTransform.Microsoft.gradient(startcolorstr=red,endcolorstr=blue,gradientType=0);
background:red;
background:-moz-linear-gradient(top, red, rgba(0, 0, 255, 0.5));
background:-webkit-gradient(linear, 0 0, 0 bottom, from(#ff0000), to(rgba(0, 0, 255, 0.5)));
}
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/4289/viewspace-2799865/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- CSS背景漸變CSS
- CSS 背景漸變CSS
- CSS3 背景漸變CSSS3
- div css背景漸變效果CSS
- css3背景顏色漸變CSSS3
- CSS背景色漸變效果程式碼CSS
- css樣式背景顏色漸變效果CSS
- css3實現文字線性漸變,css3實現背景漸變CSSS3
- css radial-gradient繪製漸變背景CSS
- CSS3背景漸變效果程式碼例項CSSS3
- Css漸變gradient專題CSS
- css 字型漸變CSS
- css漸變背景的頂級用法:linear-gradient()CSS
- CSS實現的相容所有瀏覽器的背景漸變程式碼CSS瀏覽器
- css3 漸變CSSS3
- css3漸變CSSS3
- jQuery背景色漸變動畫效果jQuery動畫
- css奇技淫巧-色彩漸變與動態漸變CSS
- CSS3線性漸變和徑向漸變CSSS3
- javascript網頁背景顏色漸變效果JavaScript網頁
- 【css靈感】漸變字CSS
- CSS 透明度漸變CSS
- 教你解決Win系統盤漸漸變小的問題
- iOS 背景圖層的顏色漸變效果iOS
- CSS透明度漸變效果CSS
- 使用 CSS 實現漸變效果CSS
- 網頁影像漸變的方法(HTML+CSS) (漸變與切換)網頁HTMLCSS
- 46款高大上的網頁漸變背景素材網頁
- CSS 傾斜角度線性漸變CSS
- CSS 顏色漸變的程式碼.CSS
- CSS實現好看的文字漸變CSS
- Git常用命令(非原創)Git
- js滑鼠懸浮連結背景動畫方式漸變效果JS動畫
- 在Android中製作移動的漸變背景Android
- vue 打包上線後 css3漸變屬性丟失的問題解決方案VueCSSS3
- Css問題 margin float 文件流 背景圖底部充滿CSS
- 純CSS漸變繪製 Chrome 圖示CSSChrome
- CSS--border邊框顏色漸變CSS