Reputation: 1108
Why is the 3rd DIV not having the background-color applied to the entire div? Is there a better method?
body{
margin: 0 auto;
}
#wrapper{
margin: 0 auto;
height: 100%;
width: 100%;
right: 0px;
left: 0px;
top: 0px;
bottom: 0px;
position: relative;
background-color: black;
}
#div1{
margin: 0 auto;
height: 120px;
width: 100%;
right: 0px;
left: 0px;
top: 0px;
position: fixed;
background-color: #222222;
text-align: center;
color: white;
z-index: 2;
}
#div2{
margin: 0 auto;
height: 300px;
width: 100%;
top: 120px;
right: 0px;
left: 0px;
position: absolute;
background-color: #990000;
text-align: center;
color: white;
}
#div3{
margin: 0 auto;
width: 100%;
top: 420px;
bottom: 0px;
right: 0px;
left: 0px;
position: absolute;
background-color: #999955;
height: 100%;
min-height: 100%;
}
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title> New Document </title>
<link rel="stylesheet" type="text/css" href="Page1.css">
</head>
<body>
<div id="wrapper">
Wrapper
<div id="div1">
DIV1
</div>
<div id="div2">
DIV2
</div>
<div id="div3">
<h1>Dolorem Ipsum</h1>
Dolorem Ipsum
Lot's of text: Lorem ipsum dolor sit amet,
consectetur adipiscing elit. Phasellus nec odio
iaculis nisl sollicitudin imperdiet id ut lacus.
Donec efficitur dolor non lacus fermentum egestas
a vel metus. Vivamus lacinia pellentesque risus, quis
volutpat urna dapibus vel. Nulla egestas vulputate neque
sed congue. Nunc sagittis rhoncus ante a ultricies.
Suspendisse sit amet tristique neque, vitae dignissim tortor.
Pellentesque eu tortor elit. Aenean mollis urna urna,
ac dapibus enim finibus rhoncus. Pellentesque imperdiet sollicitudin elementum.
Praesent bibendum auctor neque, ac venenatis purus semper malesuada.
Donec ut libero ornare, tincidunt sapien at, malesuada purus.
Etiam ullamcorper, justo nec malesuada mollis, ante libero pharetra lacus,
a pretium mauris sapien vitae leo. Nam eu sollicitudin nulla.
Donec ut pellentesque eros, non convallis orci. Integer cursus orci nec nulla
malesuada pellentesque. Morbi dapibus vestibulum commodo. Quisque non
sodales ante. Sed faucibus ultrices mauris, ac finibus ex laoreet in.
Donec libero enim, suscipit quis convallis eget, vulputate eu nunc.
Maecenas tempor in eros non efficitur. Aliquam aliquet velit a tellus
ultricies, vitae porta leo efficitur. Duis vitae imperdiet arcu.
Suspendisse egestas nunc non nibh accumsan, a fermentum risus varius. Maecenas
vitae eros eu justo laoreet malesuada feugiat aliquet turpis. Nullam in
enim at felis imperdiet suscipit ut a sapien. Vivamus fermentum vestibulum nibh viverra pellentesque. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Nam pharetra risus justo, eget fermentum lorem rhoncus quis. Sed neque diam, dictum eget laoreet nec, hendrerit ac tellus. Aliquam risus enim, lacinia non congue vitae, volutpat sed risus. Nullam interdum, magna tempor interdum egestas, turpis arcu lacinia mi, non auctor massa dui nec elit. Pellentesque ac convallis mi, non dapibus justo. Suspendisse pulvinar condimentum est id lacinia. Aliquam vulputate lorem vitae velit gravida imperdiet. Quisque lacinia, velit et faucibus consequat, purus lacus maximus dui, et commodo risus ante quis enim. Mauris ut neque cursus, eleifend dui ut, tempor nisl. Fusce ut pharetra risus, ac rhoncus dui. Fusce nisl nunc, accumsan vitae imperdiet ut, bibendum ac nisl. Aliquam auctor magna at magna finibus accumsan. Etiam at libero pellentesque, venenatis odio in, bibendum odio. --------------------------------------------------------
</div>
</div>
</body>
</html>
Upvotes: 0
Views: 42
Reputation: 244
Just remove the bottom
and define the height
in some value, not in to the percentage.
margin: 0 auto;
width: 100%;
top: 420px;
height:780px;
right: 0px;
left: 0px;
position: absolute;
background:green;
text-align:center;
Upvotes: 0
Reputation: 946
This jsFiddle could be a possible solution.
body {
margin: 0 auto;
}
#wrapper {
margin: 0 auto;
height: 100%;
width: 100%;
right: 0px;
left: 0px;
top: 0px;
bottom: 0px;
position: relative;
background-color: black;
}
#div1 {
margin: 0 auto;
height: 120px;
width: 100%;
right: 0px;
left: 0px;
top: 0px;
position: fixed;
background-color: #222222;
text-align: center;
color: white;
z-index: 2;
}
#div2 {
margin: 0 auto;
height: 300px;
width: 100%;
top: 120px;
right: 0px;
left: 0px;
position: absolute;
background-color: #990000;
text-align: center;
color: white;
}
#div3 {
margin: 0 auto;
width: 100%;
top: 380px;
bottom: 0px;
right: 0px;
left: 0px;
position: relative;
background-color: #999955;
height: 100%;
min-height: 100%;
}
<div id="wrapper">
Wrapper
<div id="div1">
DIV1
</div>
<div id="div2">
DIV2
</div>
<div id="div3">
<h1>Dolorem Ipsum</h1> Dolorem Ipsum Lot's of text: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Phasellus nec odio iaculis nisl sollicitudin imperdiet id ut lacus. Donec efficitur dolor non lacus fermentum egestas a vel metus. Vivamus lacinia pellentesque risus,
quis volutpat urna dapibus vel. Nulla egestas vulputate neque sed congue. Nunc sagittis rhoncus ante a ultricies. Suspendisse sit amet tristique neque, vitae dignissim tortor. Pellentesque eu tortor elit. Aenean mollis urna urna, ac dapibus enim finibus
rhoncus. Pellentesque imperdiet sollicitudin elementum. Praesent bibendum auctor neque, ac venenatis purus semper malesuada. Donec ut libero ornare, tincidunt sapien at, malesuada purus. Etiam ullamcorper, justo nec malesuada mollis, ante libero pharetra
lacus, a pretium mauris sapien vitae leo. Nam eu sollicitudin nulla. Donec ut pellentesque eros, non convallis orci. Integer cursus orci nec nulla malesuada pellentesque. Morbi dapibus vestibulum commodo. Quisque non sodales ante. Sed faucibus ultrices
mauris, ac finibus ex laoreet in. Donec libero enim, suscipit quis convallis eget, vulputate eu nunc. Maecenas tempor in eros non efficitur. Aliquam aliquet velit a tellus ultricies, vitae porta leo efficitur. Duis vitae imperdiet arcu. Suspendisse
egestas nunc non nibh accumsan, a fermentum risus varius. Maecenas vitae eros eu justo laoreet malesuada feugiat aliquet turpis. Nullam in enim at felis imperdiet suscipit ut a sapien. Vivamus fermentum vestibulum nibh viverra pellentesque. Pellentesque
habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Nam pharetra risus justo, eget fermentum lorem rhoncus quis. Sed neque diam, dictum eget laoreet nec, hendrerit ac tellus. Aliquam risus enim, lacinia non congue vitae,
volutpat sed risus. Nullam interdum, magna tempor interdum egestas, turpis arcu lacinia mi, non auctor massa dui nec elit. Pellentesque ac convallis mi, non dapibus justo. Suspendisse pulvinar condimentum est id lacinia. Aliquam vulputate lorem vitae
velit gravida imperdiet. Quisque lacinia, velit et faucibus consequat, purus lacus maximus dui, et commodo risus ante quis enim. Mauris ut neque cursus, eleifend dui ut, tempor nisl. Fusce ut pharetra risus, ac rhoncus dui. Fusce nisl nunc, accumsan
vitae imperdiet ut, bibendum ac nisl. Aliquam auctor magna at magna finibus accumsan. Etiam at libero pellentesque, venenatis odio in, bibendum odio. --------------------------------------------------------
</div>
</div>
Upvotes: 0
Reputation: 943510
The height is ignored because it is absolutely positioned and you have set top
and you have set bottom
.
Since the location of the top and bottom edges is set explicitly, the height has no effect.
Upvotes: 2