欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

css box-shadow實(shí)現(xiàn)曲邊陰影與翹邊陰影

  發(fā)布時(shí)間:2017-09-05 15:52:55   作者:馬大哈t   我要評(píng)論
這篇文章主要介紹了css box-shadow實(shí)現(xiàn)曲邊陰影與翹邊陰影,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧

大家都知道box-shadow是h5新增屬性,用來(lái)實(shí)現(xiàn)盒子邊緣有陰影的效果,但經(jīng)常會(huì)看見(jiàn)許多場(chǎng)景里陰影的樣式各種各樣,并不是簡(jiǎn)單的四周有陰影的效果,它們是怎么實(shí)現(xiàn)的呢,今天就跟大家分享兩種陰影實(shí)現(xiàn)的方法。

一、曲邊陰影

效果圖如下:它不僅是四周有陰影,下部還有一層曲邊的陰影,它的原理其實(shí)很簡(jiǎn)單,首先盒子自身有陰影,然后在使用另一個(gè)有陰影的盒子重疊形成效果圖里的曲邊陰影。

首先說(shuō)一下box-shadow的使用語(yǔ)法,它支持多個(gè)陰影的書(shū)寫(xiě),中間用逗號(hào)隔開(kāi),如下

創(chuàng)建一個(gè)盒子,使用box-shadow給盒子一個(gè)x軸和y軸方向都是零暈染半徑為10px的外陰影和內(nèi)陰影。

style{
      .box1{
                width: 400px;
                height: 200px;
                background: white;
                border: 1px solid lightgrey;
                margin: 100px auto;
                text-align: center;
                line-height: 200px;
                box-shadow: 0 0 10px rgba(0,0,0,0.3), 0 0 10px rgba(0,0,0,0.3) inset;
        }
}
body{
      <div class="box1">
      <span>曲邊陰影</span>
      </div>
}

使用after偽類選擇器在box1子集的后面增加一個(gè)虛擬的標(biāo)簽,由于是一個(gè)虛擬標(biāo)簽,瀏覽器不能識(shí)別,需要定義display屬性,給這個(gè)標(biāo)簽也加上陰影,由于是曲面的,所以需要設(shè)置border-radius使它有個(gè)弧度。然后使用定位將虛擬標(biāo)簽與原盒子重疊,并使用z-index改變層級(jí),使它在div的下方。代碼如下

.box1::after{
                display: block;  //必須寫(xiě)
                content: "";     //必須寫(xiě)
                z-index: -1;
                width: 390px;
                height: 150px;
                background: red;
                position: absolute;
                bottom: 0;
                left: 4px;
                border-radius: 30px/10px;
                box-shadow: 0 8px 10px rgba(0,0,0,0.3);
                
            }

當(dāng)沒(méi)有定位時(shí),兩個(gè)盒子的排列方式如下:

定位后就實(shí)現(xiàn)了曲邊陰影:結(jié)果圖如下:

二、翹邊陰影

原理與曲邊陰影一樣,使用偽類選擇器::afteryu , ::before增加兩個(gè)虛擬標(biāo)簽,使用陰影的重疊實(shí)現(xiàn)翹邊陰影。
代碼如下:

.box2::after,.box2::before{
                display: block;
                content: "";
                z-index: -1;
                width: 170px;
                height: 240px;
                background: red;
                position: absolute;
                bottom: 20px;
                left: 38px;
                box-shadow: 30px 10px 40px rgba(0,0,0,0.5); 
                transform: skewX(-15deg);   
            }
            .box2::before{
                box-shadow: -20px 10px 40px rgba(0,0,0,0.5);    
                transform: skewX(15deg);    
            }

為了方便我們看,給了紅色背景,沒(méi)改變層級(jí)時(shí)結(jié)果如下:

調(diào)整兩個(gè)盒子的層級(jí),效果如下:

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

最新評(píng)論