我知道这个问题已经被要求死亡,但是通过搜索没有任何事情对我有用.
你知道这个交易,我有一个div元素,我需要垂直对齐文本,但没有任何工作(position:absolute; top:50%; margin-top:-x; display:table-cell; vertical-align:middle ;等等)
这是我正在使用的(对于内联CSS而言).无论如何,我会使用行高,但文本可以是一行或两行.它应该与总是max-height为30px(30×50)的图像垂直对齐.
<div style="margin:0 0 10px 0;padding:10px;border:2px solid #606060;background-color:#2b2b2b;-webkit-border-radius:8px;-moz-border-radius:8px;border-radius:8px;"> <div style="float:left;width:55px;height:40px;"> <a href="link"><img style="max-width:50px;border:1px solid #ffb92c;" src="image.jpg" alt="" /></a> </div> <div style="float:right;width:155px;font-size:0.7em;height:40px;"> <a href="link">This is the text to vertically align</a> </div> </div>
解决方法
这个想法是从
here开始,应该适用于所有的浏览器.
<div style="margin: 0 0 10px 0; padding: 10px; border: 2px solid #606060; background-color: #2b2b2b; -webkit-border-radius: 8px; -moz-border-radius: 8px; border-radius: 8px;"> <div style="float: left; width: 55px; height: 40px;"> <a href="link"> <img style="max-width: 50px; border: 1px solid #ffb92c;" src="image.jpg" alt="" /></a> </div> <div style="float: right; width: 155px; font-size: 0.7em; height: 40px; display: table; #position: relative; overflow: hidden;"> <div style="#position: absolute; #top: 50%; display: table-cell; vertical-align: middle;"> <div style="#position: relative; #top: -50%;"> <a href="link">This is the text to vertically align</a> </div> </div> </div> <div style="clear: both"></div> </div>