I have 2 divs that I want to centre vertically inside another div. At the moment I have:
http://jsfiddle.net/5vpA3/1/
Now I understand what is going on here, but I want the left div to be vertically aligned within that container and the right div the same. But they are vertically aligning as a pair and not individually. I have tried various things but can't seem to get it work.
Flexbox solution to center vertically:
#container {
display: flex;
align-items: center;
}
OP's original fiddle modified: http://jsfiddle.net/o3pmyb8c/
If you would like to also center horizontally you can add justify-content: center;
Live Demo
float: left
from #left
and #right
.Instead, use display: inline-block
:
#left, #right {
display: inline-block;
vertical-align: middle;
}
display: inline-block
, you have to deal with the whitespace issue. I chose to remove the whitespace in the HTML between </div>
and <div id="right">
. See here for what happens if you don't do that. Removing the whitespace really is the easiest fix, but there are other ways.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