2013-07-21 22 views
0

我有使用HTML + CSS實現以下固定tabless佈局:http://onofri.org/example/WebTemplate/在tabless佈局有關clear屬性的頁腳有些疑惑

(我必須完成一些設置)

這種佈局有2分floatted列#內容#sidebar和這些列下放置有頁腳DIV #footcontainer

好了,我要明確的Elemen我會把它放在兩列之下(將文檔的正常流程中的元素帶回來),爲此我使用清除 CSS屬性。

我讀過,我可以做一些不同的方式。

在我的例子中,我已經創建了有一個空的DIV ID clearer2具有以下CSS設置:

#clearer2{ 
    clear: both; 
} 

這項工作做得很好,但我知道,我也可以清楚直接的footercontainer,在這方法:

#footcontainer { 
    clear: both; 
    width: 100%; 
    min-height: 200px; 
    height: auto !important; 
    height: 200px; 
    background: #4f4f4f url(../images/bgfooter.jpg) repeat-x 0 0; 
    box-shadow: 0 -13px 25px 5px #b2b2b2; 
} 

在邏輯電平應該是相同的事情,因爲我設置明確:兩者;屬性,然後該屬性對所有後續項目有效。但在網上閱讀,在我看來,第一個解決方案比第二個解決方案更好。爲什麼是更好地創造一個新的項目(如空格)說清楚再去做直接在相應的元素(在本例中的div #footercontainer

,我有使用,是一個有效的解決方案該如何解決?

TNX

安德烈

回答

1

的div clear: both物業使他們的父母div的擴大自己的高度,一個可以預期的時候,他們只浮動的div內,如http://www.quirksmode.org/css/clearing.html(標有「老解」)中說明。

所以在你的例子中,這就是clear: both正在實現的。您不需要重置正常流程,因爲您的主div(#container#footcontainer)在同一個div層次結構級別上,並且未浮動。

您可能希望將這些屬性添加到#container,使其正確擴大:

#container { 
    ... 
    overflow: auto; 
    width: 770px; /* Needed for some older browsers */ 
} 
+0

TNX這麼多的明確的解釋 – AndreaNobili