2008-12-10 16 views
60

目前我正在學習HTML/CSS,並已注意到一個共同的技術是將一個通用的div容器body標籤的根:爲什麼要在HTML中使用容器div?

<html> 
    <head> 
    ... 
    </head> 
    <body> 
    <div id="container"> 
     ... 
    </div> 
    </body> 
</html> 

是否有這樣做的正當理由?爲什麼CSS不能引用body標籤?

+4

我前幾天想知道這件事。 +1 – 2008-12-10 02:30:20

回答

10

該方法使您可以更靈活地設計整個內容的樣式。有效地創建兩個您可以設計的容器。 HTML Body標籤用作您的背景,div標識包含您的內容的容器標識。

然後,您可以在頁面中定位內容,同時設置背景或其他效果而不會造成問題。想象它是內容的「框架」。

58

容器div,有時是內容div,幾乎總是用於允許更復雜的CSS樣式。身體標記在某些方面是特殊的。瀏覽器不會像普通的div一樣對待它;其位置和尺寸與瀏覽器窗口相關聯。

但是,一個容器div只是一個div,你可以用邊距和邊框來設計它。你可以給它一個固定的寬度,你可以用margin-left: auto; margin-right: auto來居中。

此外,內容(例如版權聲明)可以放在容器div的外部,但不能放在身體的外部,以允許在邊界外部放置內容。

1

對我來說,最常見的原因是這樣認爲:

  1. 佈局可以有一個固定的寬度(是的,我知道,我做了很多工作,誰愛固定寬度的設計師),和
  2. 所以佈局可以通過應用文本對齊:中心到body,然後margin:auto自動到容器div的左側和右側。
+1

與固定寬度IMO沒什麼關係。 – nickf 2008-12-10 00:47:24

+0

只是搶佔了仇敵...... – da5id 2008-12-10 00:50:54

+1

集裝箱也需要固定的「百分比」寬度。 (基本上是一個流體寬度) – Armstrongest 2008-12-10 22:40:57

2

這是前端編碼人員犯下的最大壞習慣之一。

上面的所有答案都是錯誤的。身體確實需要寬度,邊距,邊界等,並且應該充當您的初始容器。 html元素應該像您的背景「帆布」一樣。在我已經完成的幾十個網站中,我只需要使用一次容器div。

我願意成爲這些使用容器div的相同編碼器在divs內部放置div的標記 - 在其他地方。

不要這樣做。謹慎使用div,並瞄準精益標記。

- = - = - 更新 - 不知道SO有什麼問題,因爲我可以在5年前編輯此答案,但我無法回覆評論,因爲它說我需要50個代表才能這樣做。因此,我會在這裏收到的回覆中添加我的答案。 - = - = -

我剛剛在我的回答後發現了這一點,並且看到有一些後續回覆。而且,你肯定會開玩笑嗎?

您爲我的域找到的安裝的佔位符網站,我從來沒有聲稱是我的標記或樣式,甚至在我的文章中提到,很明顯是一個基本的CMS安裝,沒有一個字的內容(它說盡可能多主頁)。那不是我的標記和造型。這是Silverstripe默認模板。我對此不以爲然。不過,這也許是我能想到的僅有的兩個例子中的一個,它將需要一個容器div。

示例1:設計用於容納未知數的通用模板。在這種情況下,您會看到一個默認的CMS模板,其div內部有div。

恐怖。

例2:三列布局得到頁腳正確清除(我認爲這可能是要記住,因爲這以前是幾年的情景我有需要一個div容器,硬)

我做只是爲我的域名構建(甚至還沒有完成)主題並開始加載內容。對於這個容易實現的語義標記示例,請單擊鏈接。

http://www.bitbeyond.com

坦率地說,我感到困惑,人們會認爲你真的需要div容器和以往甚至還試圖只是一個軀殼一個開始。正如我聽到一次由CSS規範的原始作者之一解釋的那樣,該機構的目的是作爲「初始容器」。

標記應該根據需要添加,而不是因爲這只是你看到它完成的方式。

1

某些瀏覽器(<咳嗽> Internet Explorer)不支持身體上的某些屬性,特別是widthmax-width

1

我知道這是一個老問題,但我自己重新設計一個網站時遇到了這個問題。 特洛伊Dalmasso讓我思考。他說得很好。所以,我開始看看我是否可以在沒有容器div的情況下工作。

我可以當我設置身體的寬度。在我的情況960px。

這是我使用的CSS:

html { 
    text-align:center; 
} 

body { 
    margin: 0 auto; 
    width: 960px; 
} 

這很好地居中直列塊也具有一個固定的寬度。

希望這對任何人都有用。

0

div標籤用於對網頁進行樣式設計,以便它看起來對網站的用戶或觀衆來說具有視覺吸引力。在html中使用container-div將使網站看起來更加專業和有吸引力,因此更多的人會想要瀏覽你的頁面。

0

好,

的div容器是非常好的有,因爲如果你想爲中心的網站,你就不能只用身體或HTML ......做到這一點,但你可以與div的。爲什麼容器?它通常被使用,只是因爲它的代碼必須是乾淨可讀的。所以這是容器......它包含所有的網站,如果你想惹它周圍:)

好運

-2

大多數瀏覽器的默認情況下,採取的網頁大小。因此,有時頁面在不同的瀏覽器中不會顯示相同的內容。所以,通過使用用戶可以改變爲特定的HTML元素。例如,用戶可以添加特定HTML標籤的邊距,大小,寬度,高度等。

相關問題