2011-06-16 67 views
8

我剛剛發現浮動元素也會使它成爲一個塊,因此指定一個浮動屬性和顯示:塊是多餘的。冗餘的CSS規則,即浮動和顯示:塊

(如果你試圖指定顯示會發生什麼:直列浮動:左

是否有多餘的組合中的任何其他例子看出來?塊&寬度?

有沒有可以檢查這些東西的工具?

+0

我不知道你的意思是「對其他例子的冗餘請求」和「檢查這種事情的工具」 – hooleyhoop 2011-06-16 13:02:29

+0

@thirtydot:我認爲你誤讀了問題>給出「float:left; display :塊;」 「顯示:塊」是多餘的,不是?我想知道其他組合可能是多餘的。 「display:roflcopter; float:top」是你最好的例子嗎? – hooleyhoop 2011-06-16 13:32:49

+0

我打算寫一個更好的答案來替換我即將刪除的評論。 – thirtydot 2011-06-16 14:21:22

回答

16

我剛發現浮動的 元件也將使它的塊,因此 指定float屬性 和display:block是多餘的。

是,display: block如果您指定float: left(或right)是多餘的。

(如果你試圖 指定顯示會發生什麼:內聯和浮動:左 )

display: inline將沒有任何區別,因爲設置float: left力量display: block「無論什麼」:

http://www.w3.org/TR/CSS2/visuren.html#dis-pos-flo

否則,如果「浮動'的值爲 而不是'無',則該框被浮動 並且根據下面的 表設置'顯示'。

總結上述表格:float = display: block

然而,你的float: left; display: inline具體的例子是有用以某種方式 - it fixes an IE6 bug.

是否存在的 冗餘組合的任何其他例子看出來 呢?塊&寬度?等等,

一些例子:

  • 如果設置position: absolute,然後float: none強制。
  • toprightbottomleft性能不會有任何影響,除非position已被設置爲比static默認以外的值。

是否有一個工具,它可以檢查 這樣的事情?

我不是認爲所以。這不是什麼都需要的,所以我不明白爲什麼有人會寫這樣的工具。

+1

感謝這些例子,我正在尋找。舉個例子,通過Stack Overflow的css快速瀏覽顯示了許多指定float的類:left和display:block - 你不認爲從css文件中移除不必要的東西是一種好的做法,並且爲此的工具可能是有用嗎? – hooleyhoop 2011-06-16 14:45:43

+0

本身並不是真正的*問題*,因爲CSS文件的長度通常是數百甚至數千行,而刪除單個屬性不會產生任何明顯的差異。但是,是的,我同意這是一個很好的做法,因爲這是不必要的。畢竟,「沒有任何東西可以帶走時,就會達到完美」。 – thirtydot 2011-06-16 14:59:08

1

從我的經驗來看,IE6在float:left方面存在問題。爲了兼容性,顯示:內聯添加了浮動語句。