I am positioning main-bar and side-bar with 70-30 ratio as under: JSFIDDLE
.main-bar, .side-bar{
position: relative;
margin:0; padding: 0;
outline: 0;
display: inline-block;
border:none;
background:#CCC
}
.main-bar{width: 70%}
.side-bar{width: 30%}
/* This Works
.side-bar{width: 29%}
*/
<div class="main-bar">
I am the King!
</div>
<div class="side-bar">
I am not less!
</div>
Interestingly, it works with 70-29 ratio. Did I miss something?
You have to remove white space between divs as it also take place and doesn't let inline-blocks align properly.
.main-bar, .side-bar {
position: relative;
margin: 0;
padding: 0;
outline: 0;
display: inline-block;
border: none;
background: #CCC;
}
.main-bar {
width: 70%;
}
.side-bar {
width: 30%;
}
<div class="main-bar">
I am the King!
</div><!--
--><div class="side-bar">
I am not less!
</div>
Reference: Fighting the Space Between Inline Block Elements
This is because the white space in-between your inline-block elements you need make them 0 using the font-size property just as follows
body{
font-size: 0;
}
.main-bar, .side-bar{
position: relative;
margin:0; padding: 0;
outline: 0;
display: inline-block;
font-size: 14px;
border:none;
background:#CCC
}
.main-bar{width: 70%}
.side-bar{width: 30%}
Working Fiddle
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