CSS的inherit與auto
一個很顯淺的寓言,千禧年老樹,電打雷劈,屹立不倒,卻毀於螻蟻的侵襲之下。自以為精通CSS的人,常常被一些小問題搞到頭暈腦脹。通常是一個很小的數值,經過層層放大扭曲後,整個佈局就走形了。 CSS是一門很簡單的語言,易學易用,但也最容易出垃圾程式碼。這是沒有深入研究這門語言所致。本人認為,CSS是由以下三大塊構成的:預設值,繼承系統與加權系統。預設值,也就是瀏覽器在使用者沒有設定屬性的情況下,預設指定的屬性。 CSS框架基本上都有一個叫reset.css 的文件,就是對其進行重設,消除各瀏覽器的差異的。繼承系統就是下面要重點討論的東西。加權系統,也就是優先順序的問題,不在本文的討論範疇,不說了。
在CSS中,許多屬性都是可以繼承的,如某個段落的字體設定為白色,其元素的字體不用設定或設定為inhert,它就是白色。這些屬性稱為inherited property,它會從父元素取得對應屬性的經過計算與轉換的值(computed value),如果父元素和它的情形一樣,它就繼續往上找,最後沒有就使用瀏覽器的預設值。
下面是inherited properties的一覽表:
border-collapse
border-spacing
caption-side
color
cursor
direction
empty -cells
font
font-family
font-stretch
-
font-size
font-stretch - font-size font-strp
- font-style
- font- variant
- font-weight
- letter-spacing
- line-height -glist -image
- list-style -type
- quotes
- text-align
- text-indent
- http:// www.php.cn/
- 我們為父元素設定了字體的樣式,沒有設定子元素的,當取出子元素的時,發現其值轉換為rgb格式(當然IE除外啦!)
- 不過,在IE7及其之前的版本,是不支援用inhert來設定direction與visibility以外的樣式屬性。具體可參考這裡與這裡在IE8中,原本是inherited property的text-align在th中失效。
<table> <tr> <th>Ruby</th> <th>Rouvre</th> </tr> <tr> <td>By</td> <td>司徒正美</td> </tr> </table>
table, tr, td, th { border-collapse: collapse; border: 1px solid #000; } table { text-align: right; } td, th { width: 100px; }
table, tr, td, th { border-collapse: collapse; border: 1px solid #000; } table { text-align: right; } td, th { width: 100px; } th { text-align: inherit; }
float
height
left
margin
outline
overflow
-
padding
top - visibility
- width
- z-index
- 我們為父元素設定了背景顏色,沒有設定子元素的,這時會取得瀏覽器的預設值transparent(W3C那一方好像只要是顏色都會轉換為rgb格式,多出的a為Alpha)接著我們來看auto,這是一個含糊不清但是有長度概念的值。適用於以下屬性:
- overflow
- cursor
- height
margin-* (left|bottom|top |right|start|end)
top
bottom
left
-
- 在區塊級元素的可度量的屬性中(如width,height),如果不設定值,其預設值是auto,但它很容易會被父級元素的值覆蓋,也就是隱式地成為了inhert了。在內聯元素中,由於不具備盒子模型,如果不設置,就算是火狐也原本奉還它,這對於精確計算元素的寬度與高度是非常不利的。 auto還有對稱性,這個在居中佈局我們常常運用到它。在非度量的屬性中,如overflow,就要具體情況具體分析了。
- 更多CSS的inherit與auto 相關文章請關注PHP中文網!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

在本週的平台新聞綜述中,Chrome引入了一個用於加載的新屬性,Web開發人員的可訪問性規範以及BBC Move

Goofonts是由開發人員和設計師丈夫簽名的附帶項目,它們都是版式的忠實擁護者。我們一直在標記Google
