Using partial solution in comments:
Look at jsFiddle
To have horizontal alignment, you need to put your display:table-cell div in the display:table div.
since we cannot trust jsFiddle to always be around, here is the result:
<div id="d1"> <h3>header</h3> <div id="table"> <div id="d2"> <select><option>Status</option></select> </div> </div> </div>
Css
div#d1 {height:100px;width:100%;border:2px solid black} div#table {display:table; width:100%;text-align:center} div#d2 { display:table-cell; vertical-align:middle; height:80px; } h3{background:red;text-align:center}
source share