佳木斯湛栽影视文化发展公司

主頁 > 知識庫 > CSS3實(shí)現(xiàn)模糊背景的三種效果示例

CSS3實(shí)現(xiàn)模糊背景的三種效果示例

熱門標(biāo)簽:百度競價(jià)排名 太平洋壽險(xiǎn)電話營銷 網(wǎng)站文章發(fā)布 企業(yè)做大做強(qiáng) 網(wǎng)站排名優(yōu)化 國美全國運(yùn)營中心 團(tuán)購網(wǎng)站 科大訊飛語音識別系統(tǒng)

不開頭了,直接進(jìn)入主題。
普通背景模糊效果如下:

使用屬性:

filter:(2px)

普通背景模糊

為了美觀不能使背景前的文字模糊,而filter屬性會使這整個div的后代并且還會出現(xiàn)白邊。也就是說無法達(dá)到這個效果。怎么辦呢?我們可以使用偽元素,這樣我們也順便解決了白邊的問題。

實(shí)現(xiàn)思路:
在父容器中設(shè)置背景,并且使用相對定位,方便偽元素重疊。而在:after中只需要繼承背景,并且設(shè)置模糊,絕對定位覆蓋父元素即可。這樣父容器中的子元素便可不受模糊度影響。因?yàn)閭卧氐哪:炔荒鼙桓冈氐淖哟^承。
說了這么多,來點(diǎn)代碼提提神。

簡單的html布局:

<div class="bg">
   <div class="drag">like window</div>
</div>

css:

/*背景模糊*/
.bg{
    width:100%;
    height:100%;
    position: relative;
    background: url("../image/banner/banner.jpg") no-repeat fixed;
    padding:1px;
    box-sizing:border-box;
    z-index:1;
}
.bg:after{
    content: "";
    width:100%;
    height:100%;
    position: absolute;
    left:0;
    top:0;
    background: inherit;
    filter: blur(2px);
    z-index: 2;
}
.drag{
    position: absolute;
    left:50%;
    top:50%;
    transform: translate(-50%,-50%);
    width:200px;
    height:200px;
    text-align: center;

    z-index:11;
}

當(dāng)然,看了上面的代碼就能發(fā)現(xiàn)父容器下面的子代元素也是要使用絕對定位的,但是這個不會影響到后面的布局的,所以請放心使用(有問題可以找博主麻煩~)。要注意的地方是要使用z-index確定層級關(guān)系,必須確保子代元素(也就是這里的drag)是在最上層的。不然子代元素的文字是不會出現(xiàn)的。

上面的代碼還有一個保證div居中的方法,細(xì)心的同學(xué)應(yīng)該已經(jīng)注意到了吧!不使用flex布局的情況下這樣居中應(yīng)該是比較簡單的方法了。

那么這樣寫代碼表現(xiàn)出來的效果是怎么樣的呢?

背景局部模糊

相比較上一個效果而言,背景局部模糊就比較簡單了。這時父元素根本就不用設(shè)置偽元素為模糊了。直接類比上面的代碼把子元素模糊掉,但是子元素的后代可能不能模糊了(這點(diǎn)要注意,解決辦法就是上一個效果的描述那樣)。
HTML布局稍微變了一下:

<div class="bg">
   <div class="drag">
        <div>like window</div>
   </div>
</div>

css代碼如下:(大家注意對比)

/*背景局部模糊*/
.bg{
    width:100%;
    height:100%;
    background: url("../image/banner/banner.jpg") no-repeat fixed;
    padding:1px;
    box-sizing:border-box;
    z-index:1;
}
.drag{
    margin:100px auto;
    width:200px;
    height:200px;

    background: inherit;

    position: relative;
}
.drag >div{
    width:100%;
    height: 100%;
    text-align: center;
    line-height:200px;
    position: absolute;
    left:0;
    top:0;
    z-index: 11;
}
.drag:after{
    content: "";
    width:100%;
    height:100%;
    position: absolute;
    left:0;
    top:0;
    background: inherit;
    filter: blur(15px);/*為了模糊更明顯,調(diào)高模糊度*/
    z-index: 2;
}

效果如下:

背景局部清晰

背景局部清晰這個效果說簡單也不簡單,說難也不難。關(guān)鍵還是要應(yīng)用好background:inherit屬性。這里可不能使用transform讓它垂直居中了,大家還是選擇flex布局吧。如果這里再使用transform屬性的話會讓背景也偏移的。這樣就沒有局部清晰的效果了。
html布局不變,
注意看css的變化:

/*背景局部清晰*/
.bg{
    width:100%;
    height:100%;
    position: relative;
    background: url("../image/banner/banner.jpg") no-repeat fixed;
    padding:1px;
    box-sizing:border-box;
}
.bg:after{
    content: "";
    width:100%;
    height:100%;
    position: absolute;
    left:0;
    top:0;
    background: inherit;
    filter: blur(3px);
    z-index: 1;
}
.drag{
    position: absolute;
    left:40%;
    top:30%;
    /*transform: translate(-50%,-50%);*/
    width:200px;
    height:200px;
    text-align: center;

    background: inherit;
    z-index:11;

    box-shadow:  0 0 10px 6px rgba(0,0,0,.5);
}

效果展示:

到此這篇關(guān)于CSS3實(shí)現(xiàn)模糊背景的三種效果示例的文章就介紹到這了,更多相關(guān)CSS3模糊背景內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持腳本之家!

標(biāo)簽:林芝 大同 萍鄉(xiāng) 赤峰 泰州 保定 延邊

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《CSS3實(shí)現(xiàn)模糊背景的三種效果示例》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266
    景东| 常州市| 常山县| 射阳县| 奉化市| 东海县| 岱山县| 元阳县| 定南县| 甘谷县| 临澧县| 河东区| 京山县| 大厂| 望江县| 年辖:市辖区| 上杭县| 虞城县| 张掖市| 都兰县| 扎囊县| 永宁县| 西昌市| 攀枝花市| 宁国市| 搜索| 雅安市| 淮安市| 三江| 溆浦县| 宁城县| 龙州县| 虹口区| 潼关县| 即墨市| 赤城县| 凤凰县| 会同县| 福海县| 闸北区| 廊坊市|