我试图想出一种方法来垂直居中div中的无序列表.我找到了很多方法来做到这一点,但是我的ul标签中的li标签中有
PHP代码,它们从数据库中获取文本,这导致li标签内文本的长度变化很大,导致内部垂直筛选我的div有一个固定的高度和宽度.
如何垂直定位我的无序列表,以便它始终在此div中垂直对齐?
解决方法
如果你试图水平居中,这里有一些代码可以适用于任何长度:
预览:http://jsfiddle.net/Wexcode/6UtFz/
HTML:
<div> <ul> <li><a href="#">Element 1</a></li> <li><a href="#">Element 2</a></li> <li><a href="#">Element 3</a></li> <li><a href="#">Element 4</a></li> </ul> </div>
CSS:
div { overflow: hidden; } ul { position: relative; float: left; left: 50%; padding: 0; list-style: none; } li { position: relative; float: left; right: 50%; margin: 0 5px; }
对于垂直居中,只需使用vertical-align属性即可.
见:http://jsfiddle.net/Wexcode/fK793/