$("#myElement").animate({
opacity: .4
}, 1000, function() {
// 動畫完成,所有瀏覽器下有效
});
不管元素的透明度在動畫開始時是多少,它都會漸變到透明度為“.4”。動畫的速度通過值“1000”設(shè)定,動畫時間以毫秒為單位。代碼中的最后一個屬性是一個可選回調(diào)函數(shù),將在動畫完成后執(zhí)行。
如果該元素的透明度在CSS中已經(jīng)設(shè)定為“.4”,那在動畫運行的時候,你將不會發(fā)覺有任何不同,所以動畫開始和最終透明度要有所不同。
另一個CSS3技術(shù)只支持部分新的瀏覽器(Firefox 3+, Opera 10.1+, Chrome 2+,Safari 3.1+),可通過RGBA的alpha通道的方式設(shè)定。語法如下:
#rgba {
background: rgba(98, 135, 167, .4);
}
在上面的定義中,通過RGB(前三個數(shù)字)給背景設(shè)定顏色,然后最后一個是alpha設(shè)置,以執(zhí)行給定顏色的透明度。這個alpha設(shè)置跟opacity 屬性一樣,可設(shè)定任何0到1的數(shù)字,精確得到兩位小數(shù)點。數(shù)字值越大,就越接近完全不透明的顏色。
#hsla {
background: hsla(207, 38%, 47%, .4);
}
更多關(guān)于HSLA顏色的解釋,參考這篇來自W3.org的文章。如同RGBA透明度,最后的數(shù)字表示透明度設(shè)置,跟RGBA起同樣的作用。注意RGBA和HSLA透明度的一個重要的好處是這些透明度設(shè)置不會影響到子元素的,但通過opacity屬性的方式則會。alpha設(shè)置的RGBA和HSLA只影響背景顏色的透明度,僅此而已。