Вот пример HTML-страницы, которая состоит из заголовка и нижнего колонтитула и DIV, который содержит другой DIV, который содержит некоторое содержание:Ширина DIV зависит в IE7 по содержанию другого 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. Этот метод отлично работает для меня, но имеет один очень странный эффект в IE7 в этом конкретном примере, который я не могу объяснить.
Смотрите, что происходит, когда вы добавляете content_top_left DIV к примеру, так:
....
<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). Контент не должен влиять на нижний колонтитул. Кто-нибудь знает, что здесь происходит и как это можно решить?
EDIT: Я немного изменил пример, чтобы сделать его более похожим на мой текущий сайт.
также добавляет просто масштаб: 1 к тому же указанному контейнеру исправляет проблему. – easwee
Вот и все! Спасибо easwee! – jzp74