I'm using a CSS class that sets the height to the full viewport height using:
.fullheight { min-height: 100vh }
However, there is a nav bar on the top of my page, and I want to preserve space for it using padding
.padding { padding-top: 55px }
Now, I format my div like this:
<div class="fullheight padding"> </div>
The padding works fine, but the height of the div of course is now 55px
bigger than my viewport. Since I use different paddings (depending on the shape of the nav bar), I'm looking for a solution that keeps the total height of the div at 100vh
, regardless of the padding I add using an additional class. Possible?
You need to use box-sizing: border-box
to include padding in the total height of the div. So your code will look like this:
HTML:
<div class="fullheight padding"> </div>
CSS:
.fullheight {
min-height: 55px;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
-ms-box-sizing: border-box;
-o-box-sizing: border-box;
box-sizing: border-box;
}
.padding {
padding-top: 55px;
}
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With