国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > CSS > 正文

詳解css3 mask遮罩實現一些特效

2024-07-11 08:42:00
字體:
來源:轉載
供稿:網友

遮罩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

一,高斯模糊+mask遮罩

 

源碼

<!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8">    <title>Title</title>    <style>        * {            padding: 0;            margin: 0;        }        html,        body {            height: 100vh;            width: 100vw;        }        body {            display: flex;            justify-content: center;            align-items: center;            flex-direction: column;            font-family: "Open Sans","PingFang SC","Microsoft YaHei","Helvetica Neue","Hiragino Sans GB","WenQuanYi Micro Hei",Arial,sans-serif;        }        @keyframes move {            0% {                background-position: 0 0;            }            50% {                background-position: 100% 0;            }        }        .bg {            background: url(https://sp-webfront.skypixel.com/skypixel/v2/public/website/assets/1535027674204-f6eca6369ec03e70262b58b0e25cda7b.jpg);            background-size: cover;            position: fixed;            top: -20px;            left: -20px;            right: -20px;            bottom: -20px;            filter: blur(15px);            z-index: -1;        }        .mask {            width: 340px;            height: 196px;            animation: move 40s infinite;            background-image: url(https://sp-webfront.skypixel.com/skypixel/v2/public/website/assets/1535027674204-f6eca6369ec03e70262b58b0e25cda7b.jpg);            background-size: cover;            -webkit-mask:                    url(http://static.w3ctrain.com/upload_cae6fcb079f57792a47202cb67bbc04a-dji-seeklogo.com.svg);            -webkit-mask-size: cover;        }    </style></head><body><div class="bg"></div><div class="mask"></div></body></html>

二,窺見一點

源碼

<!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(http://sandbox.runjs.cn/uploads/rs/142/wat3wtnz/dongzhi.jpg) lightblue;            -webkit-mask:  url(http://sandbox.runjs.cn/uploads/rs/142/wat3wtnz/mask.png) 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><div class="wrap">    <div id="mask"></div></div><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>

三,鏤空效果

源碼

<!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8">    <title>Document</title>    <style>        * {            box-sizing: border-box;            padding: 0;            margin: 0;        }        body {            background-image: linear-gradient(-45deg, #8067B7, #EC87C0);            min-height: calc(100vh - 40px);            margin: 20px;            font-family: 'Lato', sans-serif;            display: flex;            justify-content: center;            align-items: center;        }        .wrapper {            display: flex;            flex-direction: column;            align-items: center;        }        .mask {            width: 288px;            height: 176px;            background: url(http://static.w3ctrain.com/upload_dc601fca016e97ec2575565e7f0dcfb2-mask2.svg);            background-size: cover;        }        .ticket-mask {            width: 288px;            height: 176px;            -webkit-mask:                     url(http://static.w3ctrain.com/upload_dc601fca016e97ec2575565e7f0dcfb2-mask2.svg);            mask-size: cover;        }        .ticket {            width: 288px;            height: 176px;            border-radius: 4px;            overflow: hidden;            background-image: linear-gradient(134deg, #3023AE 0%, #C86DD7 100%);        }        .info {            height: 120px;            background: url(http://static.w3ctrain.com/upload_9c0746a7eb377f304e733edc1effdb40-cover.jpeg);            padding: 24px 16px;            color: white;        }        h3 {            font-size: 24px;            line-height: 32px;        }        p {            margin: 16px 0 0 0;        }        button {            background: transparent;            appearance: none;            display: flex;            border: none;            height: 56px;            justify-content: center;            align-items: center;            width: 100%;            font-size: 14px;            color: white;            outline: none;        }        .symbol {            color: white;            font-size: 64px;            margin: 16px 40px;        }        .addend {            display: flex;            align-items: center;        }        @media (max-width: 800px) {            flex-direction: column        ;        }    </style></head><body><div class="wrapper">    <div class="addend">        <div class="ticket">            <div class="info">                <h3>打骨折</h3>                <p>專治各種不服</p>            </div>            <button>                買買買            </button>        </div>        <span class="symbol">+</span>        <div class="mask"></div>    </div>    <span class="symbol">=</span>    <div class="ticket-mask">        <div class="ticket">            <div class="info">                <h3>打骨折</h3>                <p>專治各種不服</p>            </div>            <button>                買買買            </button>        </div>    </div></div></body></html>

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持武林網。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 个旧市| 鹤峰县| 姚安县| 黑龙江省| 深州市| 台山市| 马边| 吕梁市| 南宁市| 左贡县| 沅江市| 湖南省| 鸡西市| 开封市| 开封县| 婺源县| 盐边县| 阿拉尔市| 思茅市| 太湖县| 长丰县| 奈曼旗| 合水县| 青神县| 陕西省| 东兴市| 长沙市| 渝北区| 金川县| 遵化市| 灌阳县| 绥中县| 江城| 开阳县| 通化市| 青龙| 金川县| 万安县| 长宁区| 怀化市| 绥中县|