5

現在、次のコードがあります。2 番目、3 番目、4 番目の「li」要素をナビゲーション バーの中央に垂直に配置しようとしています。最初の「li」は画像で、2 番目から 4 番目まではすべてテキストです。

これが現在のスクリーンショットです。

http://i49.tinypic.com/bfesl3.png

「vertical-align:middle」とパディングを使用してみました。2 番目、3 番目、4 番目の "li" 要素は、Firefox で表示すると中央に垂直に配置されて表示されますが、他のブラウザーでは表示されないことに注意してください。

これが私が持っているコードです。

<ul class = "nav">

<li><a href="index.html" style="border-right:1px #FFFFFF solid; padding-top:4.6px; padding-bottom:17.3px;"><img src="img/randomtitle.png" style="padding-left:8px;padding-top:8px;"/></a></li>
<li><a href="aboutme.html" style="vertical-align:middle;padding-top:32px;margin-left:-15px;padding-bottom:14px;padding-right:20px;border-right:1px #ffffff solid;">about me</a></li>
<li><a href="films.html" style="vertical-align:middle;padding-top:32px;margin-left:1px;padding-bottom:14px;padding-right:30.5px;border-right:1px #ffffff solid;">films</a></li>
<li><a href="contactme.html" style="vertical-align:middle;padding-top:32px;margin-left:-20px;padding-bottom:14px;padding-right:11px;border-right:1px #ffffff solid;">contact me</a></li>

<span class="navlinkimages">
<li><a href=  target="_blank"><img src="social/social_vimeo.png" height = "30px" style = "margin-right:-14px;"/></a></li>
<li><a href= target="_blank"><img src="social/social_youtube.png" height = "30px" style = "margin-right:-14px;"/></a></li>
<li><a href= target="_blank"><img src="social/social_facebook.png" height="30px" style = "margin-right:-14px;"/></a></li>
<li><a href=  target="_blank"><img src="social/social_twitter.png" height = "30px" style = "margin-right:-14px;" /></a></li>
</span>
</ul>`

CSS コード:

.nav {
    list-style-type:none;
    padding-left:0;
    margin-left:0;
    font-family:DinC;
    padding-bottom:5px;
    background-color: #000000;
    border-radius:5px;
    height:35px;
}

.navlinkimages {
  float:right;
  padding-top:5px;
}

.nav li {
  display:inline;
  vertical-align:middle;
}

ul.nav a:hover {
  color:#FA4B2A;
}

.nav li img {
  vertical-align:middle;
}

ul.nav a{
  text-decoration:none;
  margin-right:27px;
  color:#FFFFFF;
}

すべてのブラウザで縦に並べる方法はありますか?

ありがとう!

4

2 に答える 2

7

これを試して:

.nav li {
  display:inline;
  vertical-align:middle;
  line-height:35px;
}
于 2012-04-25T23:59:24.443 に答える
1

li aそれらのそれぞれにクラスを与えますmiddle:

<li>
    <a class="middle" href="aboutme.html" style="REDACTED">about me</a>
</li>

middle次のように定義します。

.middle {
    line-height: 35px; /** or same as ul height */
}

インライン要素は、常に行の高さ内で垂直方向の中央に配置されます。

デモ

于 2012-04-26T00:02:03.563 に答える