html - CSS 水平列表 - 垂直对齐多行链接

标签 html css navigation

我有一个基本的基于列表的水平导航栏,一切正常。 但是我已经到了这样的地步,我有太多的导航项,以至于我需要链接文本流到多行。

请查看下面的 codepen 和 css,了解我目前拥有的内容。

问题是有些链接只是单个单词,所以只需要在一行上。 这些链接与多行链接不垂直对齐。 (见链接)

请有人帮我解决这个问题,让所有链接在中间垂直对齐。

谢谢

-

http://codepen.io/anon/pen/poKru

-

HTML

<ul class="group">
  <li><a href="#">This is<br />a Link</a></li>
  <li><a href="#">Another<br />Link</a></li>
  <li><a href="#">This link<br />is quite long</a></li>
  <li><a href="#">What can<br />I do...</a></li>
  <li><a href="#">...when<br />this happens?</a></li>
  <li><a href="#">Link</a></li>
  <li><a href="#">Link</a></li>
  <li><a href="#">Link</a></li>
  <li><a href="#">Link</a></li>
  <li><a href="#">Link</a></li>
  <li><a href="#">Link</a></li>
  <li><a href="#">Link</a></li>
</ul>

CSS

ul {
  background: #001e78;
  border-radius: 5px;
  padding: 10px;
  margin: 0;
  width: 980px;
}

li {
  display: inline;
}

li:last-child a {
  border: none;
}

a {
  float: left;
  padding: 10px 12px;
  color: #fff;
  text-decoration: none;
  font-weight: bold;
  text-align: center;
  border-right: 1px solid rgba(255,255,255,0.1);
}

a:hover {
  background: rgba(255,255,255,0.1);
}

.group:after {
  content: "";
  display: table;
  clear: both;
}

最佳答案

只需将您的 li 声明更改为

li {
  display: inline-block;
  vertical-align: middle;
}

你应该没问题。

这是我的版本 http://codepen.io/anon/pen/urFGA

关于html - CSS 水平列表 - 垂直对齐多行链接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19860575/

相关文章:

html - Bootstrap : hover in a grid to pop-out another grid

css - 如何使用 CSS 定位 WordPress 3.8 新界面 MP6?

jquery - 用于导航的滑动事件元素背景

html5 NAV TAG 正确使用

ios - swift WebView 在导航按钮后打开不需要的浏览器

Javascript 未从 Ajax 调用的 onsubmit 表单接收数据

html - 尝试创建页眉、内容和页脚的基于 flex 的布局

CSS 属性的 Python 文件内容替换

html - 当 div 穿过特定位置时触发动画

html - 如何在 Red Hat Linux 中的 HTML 文档中插入图像?