我試圖設置body
元素的背景。我已經改變了寬度body
,我希望背景適合這個寬度,但是它會填滿整個屏幕。我將如何解決它?更改正文元素的背景顏色和寬度
body {
border: 1px solid black;
width: 500px;
margin: 0 auto;
background: black;
}
我試圖設置body
元素的背景。我已經改變了寬度body
,我希望背景適合這個寬度,但是它會填滿整個屏幕。我將如何解決它?更改正文元素的背景顏色和寬度
body {
border: 1px solid black;
width: 500px;
margin: 0 auto;
background: black;
}
你實際上是在做,除非當你不聲明背景顏色html
元素,它則採取body
元素的背景顏色。因此,你沒有看到差異。
只需得到html
元件不同的背景顏色,也給body
一些height
:
html {
background-color: red; /* new */
}
body {
border: 1px solid black;
width: 500px;
height: 500px; /* new */
margin: 0 auto;
background: black;
}
理解html
,body
background-color
和之間的關係。
所有元素的初始background-color
是transparent
。
如果未指定html
元件的background-color
是(即,transparent
)然後,在CSS規則,瀏覽器給它body
元件的background-color
。
從規格:
3.11.2. The Canvas Background and the HTML
<body>
Element對於文檔根元素是HTML
HTML
元件或XHTMLhtml
元件:如果background-image
的 根元素所計算的值是none
及其background-color
是transparent
, 用戶代理必須改爲傳播計算出的的值來自該元素的第一個HTML元素的背景屬性BODY
或XHTMLbody
子元素。使用的BODY
元素的 背景屬性的值是它們的初始值,並且傳播的值被視爲在根元素上指定的值。建議使用 ,HTML文檔的作者指定BODY
元素的背景爲 ,而不是HTML
元素。
參見[應用的背景和/或
](http://stackoverflow.com/questions/10947541/applying-a-background-to-html-and-or-body)和[寬度小於它的背景](http://stackoverflow.com/questions/11083984/html-width-is-less-than-its-background) – BoltClock