3

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

请参阅下面的 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;
}
4

1 回答 1

5

只需将您的 li 声明更改为

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

你应该没事。

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

于 2013-11-08T13:49:16.490 回答