目前知道有两种方法
方法一:主要适用于元素未设定高度的情况下。
直接上代码
html:
<div class="nav-content">
<ul ng-click="navItem($event)" ng-model="navType">
<li id="nav_msglist">
<a href="#/">消息列表</a>
</li>
<li id="mislist">
<a href="#/">通知列表</a>
</li>
<li>
<a href="#/">消息列表</a>
</li>
<li>
<a href="#/">消息列表</a>
</li>
<li id="userset">
<a href="#/userset">账号设置</a>
</li>
</ul>
</div>
css:
.nav-content li a{color: #6f6f6f;position: absolute;-webkit-transform: translateY(-50%);top: 50%;display: block;}
方法二:适用于元素高度为已知的情况。
html:
<div class="msg-operation">
<div class="optico"><img src="data:images/collect-ico.png" /></div>
<div class="optico"><img src="data:images/collect-ico.png" /></div>
<div clas="optico"><img src="data:images/collect-ico.png" /></div>
</div>
css:
.optico{ width: 30%;display: inline-block;position: relative;text-align: right;}
.optico img{height: 20px;width: 20px;position: absolute;top: 50%;margin-top: -10px;left: 50%;margin-left: 10px;}
当然在未设定margin的左右边距的情况下,div居中还有一种方法,就是 margin:0 auto;