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



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

请参阅下面的代码笔和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

相关内容

  • 没有找到相关文章

最新更新