Skip welcome & menu and move to editor
Welcome to JS Bin
Load cached copy from
 
<!DOCTYPE html>
<html>
<head>
<meta name="description" content="How to set div heights">
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width">
  <title>JS Bin</title>
</head>
<body>
  
  <div class="vh20">
    Height = 20vh. This div occupies 20% of the window height. It does not depend on the parent's height. It only depends on the browser window height.
  </div>
  
  <div class="container1">
    <div class="vh20">
      Height = 20vh. This div also occupies 20% of the window height. It does not depend on the parent's height (which is 25vh). It only depends on the browser window.
    </div>
  </div>  
  
  <div class="h80">
    Height = 80%, but it does not work. Percentage only works if parent height has been defined.
  </div>  
  
  <div class="container2">
    <div class="h80">
      Height = 80%. It works because its parent element has its height set to 30vh. So, its height is 80% x 30vh = 24vh.
    </div>
  </div>
  
</body>
</html>
 
body>div{
  margin-top: 10px;  
}
.vh20 {
  border: 1px solid black;
  background-color: lightblue;
  height: 20vh; 
}
.container1 {
  height: 25vh;
  border: 1px solid black;
}
.container2 {
  height: 30vh; /* You can use another absolute unit, like px */
  border: 1px solid black;
  background-color: green;
}
.h80 {
  height: 80%;
  border: 1px solid red;
  background-color: lightgreen;
}
Output 300px

You can jump to the latest bin by adding /latest to your URL

Dismiss x
public
Bin info
pedroprietopro
0viewers