方案一
父元素定义 display:table;
,子元素定义 display: table-cell; vertical-align: middle;
。
html
<div class="div-contain"> <md-icon class="icon-middle">new</md-icon> </div>
css
.div-contain { dispaly: table; width: 100%; height: 100%; } .icon-middle { display: table-cell; vertical-align: middle; }
方案二
HTML
<div id="box"> <div id="child">test vertical align</div> </div>
CSS
#box { width: 300px; height: 300px; background: #ddd; position: relative; } #child { background: orange; position: absolute; top: 50%; transform: translate(0, -50%); }