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

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 综合教程 >内容正文

综合教程

css如何实现背景透明,文字不透明?

發(fā)布時間:2024/8/26 综合教程 66 生活家
生活随笔 收集整理的這篇文章主要介紹了 css如何实现背景透明,文字不透明? 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

之前做了個半透明彈層,但設(shè)置背景半透明時,子元素包含的字體及其它元素也都變成了半透明。對opacity這個屬性認(rèn)識的不透徹,在這里做一些總結(jié),方便以后使用。


背景透明,文字不透明的解決方法:

為元素添加一個絕對定位的子元素,設(shè)置大小和該元素一樣,把半透明加在絕對定位元素上作為遮罩,z-index設(shè)置到最底部,達(dá)到背景半透明效果。
使用CSS3新屬性rgba。

實現(xiàn)透明的方法:

css3的opacity,取值從 0 到 1,如opacity : 0.5,IE9及以上版本和標(biāo)準(zhǔn)瀏覽器都支持。IE8 以及更早的版本支持替代的 filter 屬性,例如:filter : Alpha(opacity=50)。
css3的rgba(red, green, blue, alpha),alpha的取值從 0 到 1,如background-color : rgba(255,255,255,0.5)。

谷歌瀏覽器下測試各種屬性,如下圖。

<div><div>沒有設(shè)置透明度</div></div>
<div><div>用opacity設(shè)置透明度</div></div>
<div><div>用rgba設(shè)置透明度</div></div>
<div><div>IE專屬filter設(shè)置透明度</div></div>



圖1

css3的opacity:

由圖1可以看出,使用opacity屬性的第二個方塊其子元素包含的文字也變成了半透明。

注釋:設(shè)置opacity元素的所有后代元素會隨著一起具有透明性,一般用于調(diào)整圖片或者模塊的整體不透明度,兼容IE9及以上版本和標(biāo)準(zhǔn)瀏覽器。

css3的rgba:

由圖1可看出,設(shè)置rgba的方塊可實現(xiàn)背景色透明,并且子元素包含的文字不透明。

注釋:IE9+、Firefox 3+、Chrome、Safari 以及 Opera 10+都支持。

IE的filter : Alpha(opacity=x):

僅支持IE6、7、8、9,在IE10版本被廢除。


在IE6、7中,需要激活I(lǐng)E的haslayout屬性(如:*zoom:1或者*overflow:hidden),讓它讀懂filter:Alpha。
在IE6、7、8中,設(shè)置了filter:Alpha的元素,父元素設(shè)置position : static(默認(rèn)屬性),其子元素為相對定位position : relative,可讓子元素不透明。


全兼容:

IE6 IE7 IE8 IE9 標(biāo)準(zhǔn)瀏覽器
rgba ? ? ?
filter : Alpha ?

只支持IE6、7、8瀏覽器的css hack:

/* 只支持IE6、7、8 */

@media screen\,screen9 {...}

DEMO:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>背景透明,文字不透明</title>
<style>
*{
    padding: 0;
    margin: 0;
}
body{
    background-color: #ff7a74;
    padding: 100px;
}
.test-opacity{
    padding: 25px;
    background-color: rgba(255,255,255,0.5);/* IE9、標(biāo)準(zhǔn)瀏覽器、IE6和部分IE7內(nèi)核的瀏覽器(如QQ瀏覽器)會讀懂 */
}

/* 只支持IE6、7、8 */
@media screen\,screen9 {
    .test-opacity{
        background-color: #fff;
        filter: Alpha(opacity=50);
        *zoom:1;/* 激活I(lǐng)E6、7的haslayout屬性,讓它讀懂Alpha */
    }
    .test-opacity p{
        position: relative;/* 設(shè)置子元素為相對定位,可讓子元素不繼承Alpha值 */
    }
}
</style>
<body>

    <div class="test-opacity">
        <p>背景透明,文字不透明</p>
    </div>

</body>
</html>

原文 css如何實現(xiàn)背景透明,文字不透明?

總結(jié)

以上是生活随笔為你收集整理的css如何实现背景透明,文字不透明?的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。