Bob
Bob

Reputation: 1108

CSS not applying height and background-color to <DIV>

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

Answers (3)

Shadow
Shadow

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

ReshaD
ReshaD

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

Quentin
Quentin

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

Related Questions