Хорошо, у меня проблема - и я бы хотел ее исправить.
Я использую мой любимый способ настройки простого макета верхнего / нижнего колонтитула.
Проблема в том, что любые элементы, которые я добавляю в div «content» моего макета, не могут быть расширены до 100% в Internet Explorer (насколько я знаю, только в IE).
Я понимаю, что для элемента 'content' не объявлена высота, но из-за стиля его позиционирования (объявление абсолютного верха и низа) элемент заполняет нужную область. (Элемент содержимого имеет определенный цвет фона, поэтому вы можете видеть, что div фактически заполняет как верхний, так и нижний колонтитулы.)
Так что моя проблема в том, что, так как div явно расширяется между двумя, почему ребенок не может быть установлен на 100%, чтобы заполнить эту область?
Если у кого-нибудь есть какие-то решения, я бы с удовольствием их услышал. (Я ищу решение, которое не будет включать в себя проектирование с использованием совершенно другого макета ... или, по крайней мере, возможно, объяснение того, почему это происходит. Я предполагаю, что на данный момент это из-за отсутствия декларации высоты - - но div расширен, поэтому я не понимаю!)
Вот код, используемый на странице:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta name="robots" content="noindex" />
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>No 100% height on 'content' child div in IE</title>
</head>
<style>
html, body {
width:100%;
height:100%;
margin:0px;
padding:0px;
}
body {
position:relative;
}
#wrapper {
position:absolute;
top:0px;
width:960px;
height:100%;
left:50%;
margin-left:-480px;
}
#header{
position:absolute;
top:0px;
left:0px;
width:100%;
height:200px;
background-color:#999;
}
#content{
position:absolute;
top:100px;
bottom:50px;
left:0px;
width:100%;
background-color:#F7F7F7;
}
#content_1{
width:200px;
background-color:black;
height:100%;
float:left;
}
#footer{
position:absolute;
bottom:0px;
left:0px;
width:100%;
height:50px;
background-color:#999;
}
</style>
<body>
<div id="wrapper">
<div id="header">
</div>
<div id="content">
<div id="content_1">
</div>
</div>
<div id="footer">
</div>
</div>
</body>
</html>