CSS遮罩是2008年4月由蘋果公司加入到webkit引擎中的。遮罩提供一種基於像素級別的,可以控制元素透明度的能力,類似於png24位元或png32位元中的alpha透明通道的效果。本文將詳細介紹CSS遮罩mask
影像是由rgb三個通道以及在每個像素上定義的顏色組成的。但在他們之上還有第四個通道,alpha通道,透過亮度定義每個像素上的透明度。白色意味著不透明,黑色意味著透明,介於黑白之間的灰色表示半透明。著作權歸作者所有。
遮罩mask的功能就是使用透明的圖片或漸變遮罩元素的背景。於是,遮罩mask與背景background非常類似,除了沒有color子屬性,背景background剩下的6個子屬性,mask都有
遮罩mask是一個複合屬性,包括mask-image、mask- mode、mask-repeat、mask-position、mask-clip、mask-origin、mask-size、mask-composite這8個屬性
[注意]IE瀏覽器不支持,webkit核心的瀏覽器(包括chrome、safari、IOS、android)需要添加-webkit-前綴。特別注意的是,firefox瀏覽器也支援webkit-mask屬性
【mask-image】
預設值為none,值為透明圖片,或透明漸層
【mask-repeat】
預設值為repeat,可選值與background-repeat相同,詳細情況移步至此
【mask-position】
預設值為0 0,可選值與background-position相同,詳細情況移步至此
【mask-clip】
# 預設值為border-box,可選值與background-clip相同,詳細情況移步至此
【mask-origin】
預設值為border-box,可選值與background-origin相同,詳細情況移步至此
【mask-size】
預設值為auto,可選值與background-size相同,詳細情況移步至此
【mask-mode】
預設值為match-source,可選值為alpha、luminance、match-source,或它們的組合
【mask-composite】
預設值為add,可選值為add、subtract、 intersect、exclude
[注意]只有firefox支援mask-mode和mask-composite
<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><title>Document</title><style>.wrap{position:absolute;width: 400px;border:1px solid black;}#mask{height: 300px;background:url() lightblue;-webkit-mask: url() no-repeat;animation: 2s maskPosition infinite alternate ;}#mask:hover{animation: none;}@keyframes maskPosition{0%{-webkit-mask-position:0 0;}100%{-webkit-mask-position:100% 100%;}}</style></head><body><p class="wrap"><p id="mask"></p> </p><script>var oBox = document.getElementById('mask'); oBox.onmousemove = function(e){ e = e || event; oBox.style.WebkitMaskPosition=(e.clientX-50)+"px "+ (e.clientY-50)+"px"; } </script></body></html>
以上是CSS實現遮罩mask功能的詳細內容。更多資訊請關注PHP中文網其他相關文章!