CSS. Задать высоту / ширину 100% вместе с padding / margin

Кажется, я нашёл решение Вашей проблемы. Оно заключается в задании свойств top, left, right и bottom в 0. В IE6 работать не будет, потому что он не понимает 2 последние свойства. По-умолчанию у DIV свойство display установлено в block, но я предпочитаю явно его указывать, для лучшей читабельности.

Родительский контейнер должен иметь явно заданное свойство position (любое значение).

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<style>
.inner {
display: block;
position:absolute;
height:auto;
bottom:0;
top:0;
left:0;
right:0;
margin-top:20px;
margin-bottom:20px;
margin-rightpx;
margin-leftpx;
background-color: green;
}
.outer {
display: block;
width:500px;
height: 300px;
position: absolute;
background: aqua;
}
</style>
</head>

<body>
<div class="outer">
<div class="inner">

</div>
</div>
</body>
</html>
Пример

По вопросам рекламы [email protected]