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