2014-01-22 5 views
0

Мое тело - 1024px wide. Когда я устанавливаю фон тега html в CSS на цвет (скажем, maroon), вся страница становится maroon.Изменить цвет фона HTML ТОЛЬКО

Нормальное поведение, но как установить один цвет для тела и другого цвета для пространства, которое тело не использует?

Когда я устанавливаю фон тела, только мой первый div окрашен.

+0

Установите его на элементы 'html',' body' соответственно. В общем случае элемент 'body' имеет тот же размер, что и элемент' html'. По умолчанию существует только поле «8px». –

ответ

0

Причина, по которой только ваш первый div окрашен, заключается в следующем: элемент html занимает все видимое пространство в документе, но body занимает столько же места, сколько и его дети.

Fix: сначала установите фиксированную ширину и высоту кузова, затем используйте background-color как на body, так и на html.

body { background-color: white; } /* color for body */ 
html { background-color: maroon; } /* color for space not used by body */ 
+0

Я сделал это, но все же – ohitsanazn

+0

@ Jonathan Вы установили фиксированную ширину и высоту? – rvighne

+0

aha, что сделал трюк – ohitsanazn

0

В CSS/HTML каждый элемент получает много свойств от своего родителя, если не определен конкретно. Когда дело доходит до цветов, у большинства элементов будет прозрачный фон (или нет фона), если вы не установите его свойства CSS.

Таким образом, вам необходимо установить свойства соответственно:

html {background-color:#000;} 
body {background-color:#fff;} 

Надеется, что это помогает!

+0

Я знаю, что я могу установить цвет фона тела в JavaScript, используя document.body.backgroundColor (или множество вариантов синтаксиса), но как установить цвет фона html в JavaScript? У меня есть тестовая страница, которая делает этот код html css, но я бы хотел применить некоторую логику к тому, устанавливал ли я ее во время выполнения, а не как жестко закодированный в CSS. – Dee2000

+0

@ Dee2000 использует свойство style для любого элемента DOM, то есть 'document.body.style.background = # 000;' или вы можете сделать это в jQuery с помощью '$ ('# mydiv'). Css ('background-color ',' # 000 ') ' – Yani

+0

Да, но как изменить цвет фона« html », как в вашем фрагменте кода CSS« html {background-color: # 000;} – Dee2000

Смежные вопросы