css 中的background:transparent到底是什么意思有什么作用
發(fā)布時間:2012-12-12 09:40:03 作者:佚名
我要評論

css 中的 transparent到底是什么意思? 一直覺得很奇怪,到底有什么用的啊?,本文將詳細(xì)說明,需要的朋友可以參考下
有時我在看css時,看到有的css屬性定義為background:transparent。意思就是背景透明。實際上background默認(rèn)的顏色就是透明的屬性。所以寫和不寫都是一樣的
有段時間沒寫文章了,一直在學(xué)校,雖然帶著電腦,但是不能上網(wǎng)啊!最近在用javascript寫一個網(wǎng)頁版的操作系統(tǒng),寫好了一定發(fā)上來,寫的過程中遇到很多問題,許多都是細(xì)節(jié)方面的,很麻煩,不過自己一直在努力解決,也是對自己的一種提高吧.下面我來說一下我最近遇到的一個問題.
大家知道,你用createelement新建一個div,默認(rèn)情況下這個div的style中的backgroungcolor屬性是transparent,呵呵,如果我做一個div的蒙板,那么請看下面一段代碼:
div.style.position="absolute";
div.style.width=document.body.clientWidth+"px";
div.style.height=document.body.clientHeight+"px";
div.style.left="0px";
div.style.top="0px";
div.style.zIndex="2000";
div.style.backgroundColor="black";
div.style.filter="alpha(opacity="+0+");";
這是很多蒙板div的設(shè)置,也就是說屏蔽用戶對網(wǎng)頁上的其他元素進(jìn)行操作.
我們主要看后面兩行代碼,前面不是已經(jīng)說了嘛,div的默認(rèn)backgroundcolor屬性就是transparent,也就是是透明,那么我們干嘛還要多此一舉去設(shè)置個black(這個無所謂,隨便設(shè)置個顏色,只要不是transparent就行,也不能是空字符串,瀏覽器會默認(rèn)將空字符串看成transparent),并且設(shè)置濾鏡讓他透明呢.
我自己動手做了試驗,一開始還對試驗結(jié)果很迷惑,但自己靜下來想想便發(fā)現(xiàn)了其中的區(qū)別,如果我們沒有上面代碼的后兩句,那么我們便可以對蒙板后的元素進(jìn)行操作,也就是說起不到屏蔽的作用,但是這個操作是有限制的,具體說就是我們只可以對有焦點的元素進(jìn)行操作,比如文本,圖片,按鈕等,我舉個例子:
<div style="border:1px red solid;width:100px;height:100px" onclick="alert(1)">123</div>
正常情況下,只要你點擊這個div的任何位置,都會alert的,但是當(dāng)它被一個backgroundcolor為transparent的元素遮住的時候,我們只有點擊123才會alert,因為文本是可以獲得焦點的,同理其他元素也一樣.順便說下,這個backgroundcolor為transparent的元素的事件會對被它遮住的元素所截獲.如果我們所觸發(fā)的對象沒有焦點,那么事件會交換給transparent的元素處理并按這個元素進(jìn)行冒泡,否則有焦點的會事件便由有焦點的那個對象處理,不會交換,并且按有焦點的元素進(jìn)行冒泡.(貌似不是很好理解,可以自己多做做試驗就明白了)
這樣說,大家明白了吧,這也是為什么要后兩句的原因了,只有這樣才能對網(wǎng)頁元素進(jìn)行完全屏蔽.
設(shè)置樣式為透明色
有時,上文寫了
background:inherit;
那么下文就可能要清除一下背景,就寫了
background:transparent;
透明背景,也就是去掉了被
如果一個元素覆蓋在另外一個元素之上,而你想顯示下面的元素,這時你就需要把上面這個元素的background設(shè)置為transparent
文章有不妥之處還請各位指正,本文內(nèi)容在ie7.0下測試通過.
有段時間沒寫文章了,一直在學(xué)校,雖然帶著電腦,但是不能上網(wǎng)啊!最近在用javascript寫一個網(wǎng)頁版的操作系統(tǒng),寫好了一定發(fā)上來,寫的過程中遇到很多問題,許多都是細(xì)節(jié)方面的,很麻煩,不過自己一直在努力解決,也是對自己的一種提高吧.下面我來說一下我最近遇到的一個問題.
大家知道,你用createelement新建一個div,默認(rèn)情況下這個div的style中的backgroungcolor屬性是transparent,呵呵,如果我做一個div的蒙板,那么請看下面一段代碼:
復(fù)制代碼
代碼如下:div.style.position="absolute";
div.style.width=document.body.clientWidth+"px";
div.style.height=document.body.clientHeight+"px";
div.style.left="0px";
div.style.top="0px";
div.style.zIndex="2000";
div.style.backgroundColor="black";
div.style.filter="alpha(opacity="+0+");";
這是很多蒙板div的設(shè)置,也就是說屏蔽用戶對網(wǎng)頁上的其他元素進(jìn)行操作.
我們主要看后面兩行代碼,前面不是已經(jīng)說了嘛,div的默認(rèn)backgroundcolor屬性就是transparent,也就是是透明,那么我們干嘛還要多此一舉去設(shè)置個black(這個無所謂,隨便設(shè)置個顏色,只要不是transparent就行,也不能是空字符串,瀏覽器會默認(rèn)將空字符串看成transparent),并且設(shè)置濾鏡讓他透明呢.
我自己動手做了試驗,一開始還對試驗結(jié)果很迷惑,但自己靜下來想想便發(fā)現(xiàn)了其中的區(qū)別,如果我們沒有上面代碼的后兩句,那么我們便可以對蒙板后的元素進(jìn)行操作,也就是說起不到屏蔽的作用,但是這個操作是有限制的,具體說就是我們只可以對有焦點的元素進(jìn)行操作,比如文本,圖片,按鈕等,我舉個例子:
復(fù)制代碼
代碼如下:<div style="border:1px red solid;width:100px;height:100px" onclick="alert(1)">123</div>
正常情況下,只要你點擊這個div的任何位置,都會alert的,但是當(dāng)它被一個backgroundcolor為transparent的元素遮住的時候,我們只有點擊123才會alert,因為文本是可以獲得焦點的,同理其他元素也一樣.順便說下,這個backgroundcolor為transparent的元素的事件會對被它遮住的元素所截獲.如果我們所觸發(fā)的對象沒有焦點,那么事件會交換給transparent的元素處理并按這個元素進(jìn)行冒泡,否則有焦點的會事件便由有焦點的那個對象處理,不會交換,并且按有焦點的元素進(jìn)行冒泡.(貌似不是很好理解,可以自己多做做試驗就明白了)
這樣說,大家明白了吧,這也是為什么要后兩句的原因了,只有這樣才能對網(wǎng)頁元素進(jìn)行完全屏蔽.
設(shè)置樣式為透明色
有時,上文寫了
復(fù)制代碼
代碼如下:background:inherit;
那么下文就可能要清除一下背景,就寫了
復(fù)制代碼
代碼如下:background:transparent;
透明背景,也就是去掉了被
如果一個元素覆蓋在另外一個元素之上,而你想顯示下面的元素,這時你就需要把上面這個元素的background設(shè)置為transparent
文章有不妥之處還請各位指正,本文內(nèi)容在ie7.0下測試通過.
相關(guān)文章
div背景定位background設(shè)置元素的背景參數(shù)
DIV背景定義參數(shù):background 設(shè)置元素的背景參數(shù),div+css的廣泛使用,也改變了這一使用習(xí)慣,變成了將N多小圖標(biāo)集于一個大圖上,再通過div來定位需要用到的圖片部分,大大2013-02-02對背景圖定位中background-position屬性的自我理解
最近在項目中需要大量的用到很多標(biāo)簽按鈕什么的零碎圖片,加上一直沒機會使用Css中的”精靈技術(shù)“,這里把我對background-position的理解寫成文檔供更多人使用學(xué)習(xí);如果有2013-01-15background-postion定位與圖片結(jié)合實現(xiàn)圓角效果
background-postion 背景默認(rèn)鋪設(shè)位置的起點為:元素的左上角.2011-07-27CSS中背景background-position負(fù)值定位深入理解[圖文]
CSS中背景定位background-position負(fù)值一直是不好理解的難點,一方面用的比較少,另一方面的理解的不夠深入,今天花了點時間認(rèn)真的思考了,把我的心得寫出來2011-03-21- 背景屬性是給網(wǎng)頁添加背景色或者背景圖所用的CSS樣式,它的能力遠(yuǎn)遠(yuǎn)超于html之上。2011-01-05
利用CSS定位背景圖片 background-position
我們在研究其他的網(wǎng)站的樣式的時候經(jīng)常會發(fā)現(xiàn)一種情況,就是在很多background屬性里都調(diào)用同一張圖片,來滿足網(wǎng)頁各個部分的使用。打開這種圖片看一下,會發(fā)現(xiàn)這張圖片上包2009-12-17CSS background-position的使用說明詳解
設(shè)置或檢索對象的背景圖像位置。必須先指定 background-image 屬性。該屬性定位不受對象的補丁屬性( padding )設(shè)置影響2009-12-17CSS background-position 屬性 定位圖片
看別人代碼發(fā)現(xiàn)一個背景圖中有很多圖片,大家可以參考下原理2009-11-20CSS3教程(10):CSS3 HSL聲明設(shè)置顏色
網(wǎng)頁制作Webjx文章簡介:使用CSS3 HSL聲明同樣是用來設(shè)置顏色的。下一個呢? HSLA? 是的,這個和RGBA的效果是一樣的。 使用CSS3 HSL聲明同樣是用來設(shè)置顏2009-04-02- 網(wǎng)頁制作Webjx文章簡介:背景background:background-image:url("圖片的網(wǎng)址");背景圖background: url(" 圖片的網(wǎng)址 "); 背景.background-color:#色碼;背景色彩.2009-04-02