Вот пример HTML-страницы, которая состоит из верхнего и нижнего колонтитула и div, который содержит другой div, который содержит некоторое содержимое:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta content="text/html; charset=ISO-8859-1" http-equiv="content-type">
<title>Testing 123</title>
<link rel="stylesheet" href="css/testing.css">
</head>
<body>
<div id="main_body">
<div id="header"></div>
<div id="content_container">
<div id="content">
Some text<br>
</div>
</div>
<div id="footer"></div>
</div>
</body>
<html>
Вот CSS:
* {
margin: 0px 0px 0px 0px;
padding: 0px 0px 0px 0px;
border: none;
z-index: 10;
font-family: Arial;
font-size: 20px;
text-decoration: none;
text-align: left;
}
html, body {
height: 100%;
background-color: rgb(255, 255, 255);
}
#main_body {
position: relative;
min-height: 100%;
height: auto !important;
height: 100%;
margin: 0px 20px 0px 20px;
}
#header {
position: absolute;
top: 20px;
left: 0px;
height: 50px;
width: 100%;
background-color: rgb(40, 40, 40);
}
#content_container {
padding: 80px 10px 50px 10px;
}
#content {
padding: 0px 4px 0px 4px;
position: relative;
}
#corner_top_left {
position: absolute;
width: 7px;
height: 7px;
top: 0;
left: 0;
background-color: rgb(40, 40, 40);
}
#footer {
position: absolute;
bottom: 20px;
left: 0px;
height: 20px;
width: 100%;
background-color: rgb(40, 40, 40);
}
Обратите внимание, что я еще не использовал стиль corner_top_left
. Я хочу иметь хорошие круглые углы для контента. Я знаю, что есть много разных способов достичь этого. Я выбираю контейнер относительной позиции, в котором вы можете установить абсолютно расположенные маленькие угловые элементы. Этот метод отлично работает для меня, но в этом конкретном примере у меня есть один очень странный эффект, который я не могу объяснить.
Посмотрите, что происходит, когда вы добавляете div content_top_left в пример, например:
....
<div id="header"></div>
<div id="content_container">
<div id="content">
<div id="corner_top_left"></div>
Lots of text<br>
</div>
</div>
<div id="footer"></div>
....
По какой-то причине ширина нижнего колонтитула теперь отрегулирована (она короче). Я понятия не имею, почему это происходит в IE7 (отлично работает в FF). Нижний колонтитул не должен зависеть от содержимого. Кто-нибудь знает, что здесь происходит и как это решить?
РЕДАКТИРОВАТЬ: я немного изменил пример, чтобы сделать его более похожим на мой текущий веб-сайт.