日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

遮罩效果 css3

發布時間:2023/12/1 编程问答 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 遮罩效果 css3 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

CSS3提供了遮罩效果,這是以前CSS2中比較難實現的一個新特性,配合SVG或者canvas同樣也可以實現遮罩效果,他的效果就如下圖所示:

簡單的說就是在一個層上面加一個過濾層,過濾層透明度越低,底層就顯示的越多,反之,底層顯示越少

1. CSS3屬性

CSS3中提供的新屬性有(括號為跟background對應類似的屬性):

-webkit-mask-image:設置遮罩圖片地址

-webkit-mask-position: 定義遮罩層的出現位置,可以取值px或百分比,也可以指定為 top left right 和bottom

像素(px)

?(1)如果只指定一個值(例如-webkit-mask-position:10px),第二個值就會被默認為'center'效果如-webkit-mask-position:10px center

?(2)如果指定兩個值(-webkit-mask-position:10px 10px),第一個值就是橫坐標的偏移或定位,第二個值就是縱坐標的偏移或定位,px指定遮罩圖片的左上角對應于影響區域的左上角,所謂影響區域就是被遮罩圖片遮罩的區域,也就是遮罩圖片的大小

?(3)如果指定三個值,那么每個px之前必須指定一個方向(top,left,bottom,right),例如:mask-position: bottom 10px right 20px 指定了距離底部10px,距離右邊20px,如果指定了3個方向,默認值為0

例如:

mask-position: left 10px top 15px; /* 10px, 15px */mask-position: left top ; /* 0px, 0px */mask-position: 10px 15px; /* 10px, 15px */mask-position: left 15px; /* 0px, 15px */mask-position: 10px top ; /* 10px, 0px */mask-position: left top 15px; /* 0px, 15px */mask-position: left 10px top ; /* 10px, 0px */

?

?百分比(%)

? 百分比設置了遮罩圖片橫坐標和縱坐標的偏移百分比,注意偏移包括對遮罩原圖片大小的偏移,也包括遮罩圖片本身的偏移,例如-webkit-mask-position:75% 50%的偏移如圖:

?指定值:

top: 如果指定1或2個值則代表縱坐標0%,否則是指定距離上邊的偏移量
right: 如果指定1或2個值則代表橫坐標100%,否則是指定距離右邊的偏移量
bottom: 如果指定1或2個值則代表縱坐標100%,否則是指定距離下邊的偏移量
left: 如果指定1或2個值則代表橫坐標0%,否則是指定距離左邊的偏移量
center:代表50%?

body { mask: url("banner.jpeg") right top } /* 100% 0% */ body { mask: url("banner.jpeg") top center } /* 50% 0% */ body { mask: url("banner.jpeg") center } /* 50% 50% */ body { mask: url("banner.jpeg") bottom } /* 50% 100% */

-webkit-mask-position-x:?[ percentage | length | left | center | right ]?定義遮罩層的出現位置的橫坐標
-webkit-mask-position-y:?[ percentage | length | top | center | bottom ]?定義遮罩層的出現位置的縱坐標

-webkit-mask-clip:?border | padding | content | text?定義圖片遮罩延伸到的位置

?

borderpaddingcontenttext
圖片遮罩延伸到元素border
圖片遮罩延伸到元素padding
圖片遮罩延伸到元素內容部分
圖片遮罩延伸到元素文字部分

?

-webkit-mask-composite?定義同一個元素上有多個圖片遮罩時的相對順序

?

clearcopysource-oversource-insource-outsource-atopdestination-overdestination-indestination-outdestination-atopxor
源圖片和目標圖片重疊的像素被清除
源圖片替代目標圖片
源圖片呈現在目標圖片上
源圖片和目標圖片重疊的像素被源圖片替代,其他像素被清除
源圖片和目標圖片重疊的像素被清除,源圖片剩下的像素被呈現
目標圖片被呈現。只有在重疊像素在目標圖片的不透明部分時,源圖片被呈現。這導致源圖片不起作用
目標圖片呈現在源圖片上
源圖片和目標圖片的重疊像素中,屬于源圖片的保留,其他像素被清除
圖片和目標圖片的重疊像素被清除,源圖片剩余的像素被展示
源圖片的像素被展示。只有在重疊部分在目標圖片的不透明時。目標圖片被呈現。這導致目標圖片不起作用
如果源圖片與目標圖片都透明時,重疊像素全變為透明

?例如:  

#demo{width:930px;height:768px;margin: 50px auto;font-size: 20px;font-weight: bold;color:red;background:url(back.jpg) no-repeat;-webkit-mask-image:url(mask1.png),url(mask2.png);-webkit-mask-repeat:no-repeat; }

mask.png為源圖片,mask2為目標圖片

?

-webkit-mask-box-image?定義圖片遮罩的滾動特性.

?

urigradientnonetoprightbottomleftx_repeaty_repeat
圖片路徑
用-webkit-gradient函數生成遮罩圖(mask image)
沒有遮罩圖片
圖片離上邊緣的距離
圖片離右邊緣的距離
圖片離底邊緣的距離
圖片離左邊緣的距離
水平方向的重復,取值:repeat | stretch | round
垂直方向的重復,取值:repeat | stretch | round

?

-webkit-mask-origin?定義-webkit-mask-position值得起始位置.

?

paddingbordercontent
默認值,從padding開始計算-webkit-mask-position的值
從border開始計算-webkit-mask-position的值
從元素內容部分開始計算-webkit-mask-position的值

?

-webkit-mask-repeat?定義遮罩層的出現位置

?

repeatrepeat-xrepeat-yspaceroundno-repeat
遮罩圖片水平、垂直方向都重復
遮罩圖片只在水平方向重復
遮罩圖片只在垂直方向重復
遮蓋圖像重復的次數使其可容納在背景放置區域中,同時不經過裁剪,圖像將拉開間隔以填滿區域。
遮蓋圖像經過縮放,以便可放下整數個該圖像
遮罩圖片不重復

?

-webkit-mask-size?定義遮罩層的大小

?

autocontaincoverlengthpercentage
繼承遮罩圖的寬度和高度
放大圖像到最大的尺寸,同時保持原有的圖像縱橫比,使得寬高完全地適應背景位置區域
縮放圖像到最小的尺寸,同時保持原有的圖像縱橫比,使得寬高完全地覆蓋背景位置區域
浮點數,后跟絕對單位符(cm, mm, in, pt, pc)或者相對單位符 (em, ex, or px)
整數,后跟百分號,百分比的值和背景位置區域有關系。


-webkit-mask-attachment: fixed | scroll 圖片滾動方式 fixed 不滾的 scroll滾動

?

2. 配合animation:css3的animation可以實習樣式的動態變化,通過設置animation可以實現探照燈效果:

?

<!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <meta charset="utf-8"> <title>探照燈例子</title> <style> body {font-size: 13px;background-color: #000; } .demo {-webkit-animation: demo-an2 5s ease-out infinite;border-radius: .4em;color: #FFFF;margin: 1em; font-size:4em;font-weight:bold;text-align: center;text-shadow: 1px 1px 0 #ccc; -webkit-mask: -webkit-linear-gradient(left, rgba(0,0,0,0) 0%, rgba(0,0,0,1) 10%, rgba(0,0,0,0) 20%) -500px 0 no-repeat content;width: 16em; } @-webkit-keyframes demo-an { to { -webkit-mask-position:600px 0; } } </style> </head> <body> <div class="demo">騰訊財付通,會支付會生活</div> </body></html>

??

轉載于:https://www.cnblogs.com/zhusheng2008/p/4102691.html

總結

以上是生活随笔為你收集整理的遮罩效果 css3的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。