【发布时间】:2014-11-17 10:27:08
【问题描述】:
很抱歉问了一些已经解释过很多的问题,但是到目前为止我在 StackOverflow 上看到的所有解决方案都没有真正适合我(表格单元格、文本对齐、垂直对齐......什么都没有)。
这里是交易:我的所有代码都在一个#box div 中,这是一个处理居中并包含所有元素的代码。这之后的第一个 div 是#menu,它是这样的:
<div id="menu">
<img src="img/logo.jpg" alt="logo">
<ul>
<li>menu1</li>
<li>menu2</li>
<li>menu3</li>
<li>menu4</li>
<li>menu5</li>
</ul>
</div>
其实没什么特别的,很简单。我的 CSS 如下所示:
#menu {
background-color: #babadc;
height: 100px;
margin: 0 auto;
width: 1280px; }
#menu img {
float: left; }
#menu ul {
float: right;
list-style: none;
line-height: normal; }
#menu li {
display: table-cell;
padding-left: 20px;
vertical-align: middle; }
请注意,我正在使用基本的 CSS 重置,以避免在测试交叉浏览时出现大多数问题。 这里的问题是无论我从 StackOverflow 尝试哪种解决方案,只有 IMG 或 UL 垂直居中,或者它们稍微不对齐。
我的要求是:今天最好的方法是用 html/css 完成如此简单的任务(img 大小不会改变)并有一个徽标图像和一个右侧的菜单完全位于已知宽度和高度的 div 中的垂直空间的中心?
我显然清理了缓存,刷新了所有内容,所以我确信更改正在生效......我只是错过了一些非常愚蠢的东西,但我真的无法同时居中。
为了更好地展示我想要的效果,这应该是一个基本的菜单设置,但没有按预期工作。这是我想要的结果,请记住我没有写任何规则来从左/右边界移动 img 和 #menu ul 因为,显然,现在它们在侧边界上......我稍后会给出边距。
【问题讨论】:
标签: css image menu html-lists vertical-alignment