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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > HTML >内容正文

HTML

浏览器中遮罩层镂空效果的多种实现方法

發布時間:2025/4/16 HTML 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 浏览器中遮罩层镂空效果的多种实现方法 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

? ? ? 前端開發中我們有時候會做到頁面遮罩層鏤空的效果,那什么是頁面遮罩層鏤空效果,我們先來看一看下圖的這個效果。下圖是我昨天在實際工作中完成的頁面效果:

? ? ??做這個效果的時候有以下注意的地方:

? ? ??1、兼容IE7及以上瀏覽器;

? ? ??2、該頁面背景是隨時變化的;

? ? ??3、目標區域大小不固定;

? ? ??4、常規瀏覽器要實現圓角效果。

? ? ??由于以前還沒有做過類似效果,所以經驗比較欠缺。接到任務,我想的第一種方法是截一張圖放在一個黑色透明的遮罩層上面來模擬鏤空效果,但是不滿足上面的第2、第3條要求。放棄這種想法,我又想到用SVG來實現,但是又不滿足上面的第一條要求。最后我利用CSS的邊框屬性結合JS實現了上面的方法,并滿足了所有要求,具體方法見下面的方法三。

? ? ??我把能實現頁面遮罩層鏤空效果的幾種方法都列出來吧,目前我掌握了其中四種。

? ? ??我就以下面這個簡單的效果為例做展示:

? ? ??無遮罩層層的時候:↓↓↓


? ? ??

? ? ? 有鏤空遮罩層的時候(鏤空區域為頭像和名字):↓↓↓



? ? ??【 方法一:截圖模擬實現 】

? ? ??原理:先截一張相同位置的圖片,創建一個遮罩層,然后把圖片定位在相應的位置上。

? ? ??優點:原理簡單;兼容性好,可以兼容到IE6、IE7;可以同時實現鏤空多個。

? ? ??缺點:此方法只適合靜止頁面,不適合可以滾動的頁面。也不適合頁面內容會發生變換的頁面。

? ? ??代碼如下:

<div class="class1"><img src="images/000.jpg" alt=""/></div> .class1{position: absolute;width:100%;height:100%;top: 0;left: 0;background-color: #000;opacity: 0.6;filter:alpha(opacity=60);} .class1 img{position: absolute;top:260px;left: 208px;}


? ? ??【?方法二:CSS3陰影屬性實現 】

? ? ??原理:利用CSS3的陰影屬性。

? ? ??優點:實現方便;適合任何頁面,不會受頁面的限制。

? ? ??缺點:兼容不太好,只能兼容到IE9。

? ? ??代碼如下:

<div class="class2"></div> .class2{position: absolute;width:170px;height:190px;top: 260px;left: 208px;box-shadow: rgba(0,0,0,.6) 0 0 0 1366px;}
? ? ??【 方法三: CSS邊框屬性實現 ?】

? ? ??原理:利用邊框屬性。先將一個空盒子定位在目標區域,然后在其四周用邊框填充。

? ? ??優點:實現方便,兼容性好,可以兼容到IE6、IE7;適合任何頁面,不會受頁面的限制。

? ? ??缺點:要做兼容實現過程則相對復雜。

? ? ??代碼如下:

<div class="class3"></div> .class3{position: absolute;width:170px;height:190px;top: 0;left: 0;border-left-width:208px;border-left-style: solid;border-left-color:rgba(0,0,0,.6);border-right-width:970px;border-right-style: solid;border-right-color:rgba(0,0,0,.6);border-top-width:260px;border-top-style: solid;border-top-color:rgba(0,0,0,.6);border-bottom-width:253px;border-bottom-style: solid;border-bottom-color:rgba(0,0,0,.6); }
? ? ??【 方法四: SVG或者canvas ?】

? ? ??原理:利用SVG或者canvas的繪圖功能。

? ? ??優點:可以同時鏤空多個。

? ? ??缺點:兼容性不好,實現過程相對復雜。

? ? ??我以SVG為例,代碼如下:

<svg style="position: absolute;" width="1366" height="700"><defs><mask id="myMask"><rect x="0" y="0" width="100%" height="100%" style="stroke:none; fill: #ccc"></rect><rect id="circle1" width="170" height="190" x='208' y="260" style="fill: #000" /></mask></defs><rect x="0" y="0" width="100%" height="100%" style="stroke: none; fill: rgba(0, 0, 0, 0.6); mask: url(#myMask)"></rect> </svg>
? ? ??以上四種方法實現的最后效果在主流瀏覽器中效果都是一致的,如下:



? ? ??當然,這只是例子,要運用到項目中去,還有很多工作要做,比如鏤空的位置我們應該根據目標來自動獲取,大小也是根據目標來設置,用邊框的方法要兼容IE7、8則還需加一層才能實現。


? ? ??今天就更新到這里,因時間倉促,資質有限,文中表述僅代表個人觀點,如果有更好的方法,歡迎分享。


總結

以上是生活随笔為你收集整理的浏览器中遮罩层镂空效果的多种实现方法的全部內容,希望文章能夠幫你解決所遇到的問題。

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

主站蜘蛛池模板: 日韩激情视频一区二区 | 丰满少妇影院 | 亚洲永久免费av | 成人在线h | 亚洲熟妇av乱码在线观看 | 爱情岛论语亚洲入口 | 女人叉开腿让男人桶 | 天天高潮夜夜爽 | 手机看片一区二区 | 午夜视频h| 久久综合五月 | 五月天男人天堂 | 欧美小视频在线 | 久操亚洲 | 久久在线一区二区 | 高清日韩一区 | www国产精品内射熟女 | 在线看片成人 | 成人免费淫片aa视频免费 | 国产日韩欧美在线播放 | 国产青草视频在线观看 | 亚洲女人天堂成人av在线 | 蜜桃成人无码区免费视频网站 | 亚洲第一天堂av | 91福利在线观看视频 | 已满十八岁免费观看全集动漫 | 在线日韩中文字幕 | 国产真人做爰毛片视频直播 | 久久精品人妻av一区二区三区 | 日韩精品在线免费观看 | 欧美日韩国产在线一区 | 99这里有精品 | 91涩涩涩 | 人妻在线一区 | 北条麻妃一二三区 | 国产在线视频自拍 | 成人福利午夜 | 国产在线a视频 | 18岁毛片 | 国产精品丝袜黑色高跟 | 天堂8在线视频 | 在线观看毛片视频 | 成人午夜视频免费看 | 国产a级网站 | 国产亚洲精品美女久久久久 | 欧美精品1区2区 | 欧美无砖砖区免费 | 亚洲不卡中文字幕 | 秋霞国产午夜精品免费视频 | 涩涩免费网站 | 欧美一区二区视频免费观看 | 天天想你在线观看完整版电影免费 | 亚洲一区二区免费视频 | 日本一区二区成人 | 九一国产在线观看 | 亚洲欧美日韩免费 | 精品精品精品 | 一区二区视频观看 | 欧美a级片在线观看 | 欧美一二区 | 欧美区国产区 | 国产成人a∨ | 免费在线欧美 | 午夜三级在线观看 | jizzjizz日本免费视频 | 亚洲av激情无码专区在线播放 | 91精品久久久久久久久中文字幕 | 黄色大片在线播放 | 成人在线手机视频 | 免费看的黄色 | 天天摸天天碰 | 亚洲视频免费在线观看 | 最近中文字幕在线中文视频 | 日韩一级一区 | 麻豆一区二区在线观看 | 精品国产午夜福利 | 欧美福利一区二区三区 | 婷婷在线免费观看 | 精品99久久久久成人网站免费 | 911国产| 中文字幕免费高清 | 五十路黄色片 | 国产精彩视频 | 爽爽爽av | 韩国女主播裸体摇奶 | 久久蜜臀精品av | 免费黄色av片 | 欧美手机在线观看 | av在线观| www.黄色在线观看 | 国产不卡精品 | 性开放的欧美大片 | 综合色伊人 | 午夜av毛片 | www.97av.com| 婷婷在线观看视频 | 久久精品电影 | 少妇人妻丰满做爰xxx | 久草国产在线视频 |