轉(zhuǎn)載聲明:此文章為轉(zhuǎn)載渤刃,點(diǎn)擊查看原文宠默。
如有侵權(quán)24小時內(nèi)刪除。聯(lián)系QQ:1522025433
? ? ? ? ?zoom:1確實(shí)幫我們解決了不少ie下的bug运怖,但是它的來龍去脈拼弃,又有多少人知道呢?
所以我老生常談摇展,說一下它的來龍去脈吻氧。
? ? ? ? Zoom屬性是IE瀏覽器的專有屬性,?它可以設(shè)置或檢索對象的縮放比例咏连。
在平常的css編寫過程中盯孙,zoom:1能夠比較神奇地解決ie下比較奇葩的bug。
譬如外邊距(margin)的重疊祟滴,譬如浮動的清除振惰,譬如觸發(fā)ie的?haslayout屬性等等。
度娘告訴我們:zoom是?設(shè)置或檢索對象的縮放比例垄懂。設(shè)置或更改一個已被呈遞的對象的此屬性值將導(dǎo)致環(huán)繞對象的內(nèi)容重新流動骑晶。(沒看懂)
雖然此屬性不可繼承,但是它會影響對象的所有子對象( children )埠偿。這種影響很像 background 和 filter 屬性導(dǎo)致的變化。
此屬性對于 currentStyle 對象而言是只讀的榜晦,對于其他對象而言是可讀寫的冠蒋。(沒看懂)
(重點(diǎn))當(dāng)設(shè)置了zoom的值之后,所設(shè)置的元素就會就會擴(kuò)大或者縮小乾胶,高度寬度就會重新計(jì)算了抖剿,這里一旦改變zoom值時其實(shí)也會發(fā)生重新渲染朽寞,運(yùn)用這個原理,也就解決了ie下子元素浮動時候父元素不隨著自動擴(kuò)大的問題斩郎。
Zoom屬是IE瀏覽器的專有屬性脑融,火狐和老版本的webkit核心的瀏覽器都不支持這個屬性。然而缩宜,zoom現(xiàn)在已經(jīng)被逐步標(biāo)準(zhǔn)化肘迎,出現(xiàn)在
CSS 3.0 規(guī)范草案中,也就是CSS3中的transform:
scale這個屬性來實(shí)現(xiàn)
用法:ie下子元素浮動時候父元素不隨著自動擴(kuò)大的問題锻煌,使用下面的CSS寫法
.父元素 { ? overflow: auto; zoom: 1 ? },關(guān)于更多清楚浮動的用法妓布,可以戳http://www.cnblogs.com/dongtianee/p/4563084.html,里面的第十問解釋的很詳細(xì)宋梧。