CSSを使用して画像上にナビゲーションバーを配置しようとしています。しかし、私はポジションを得ることができません。起こっていることは、画像の最初の200ピクセルは、バックグラウンドポジションから次の200ピクセルの代わりに表示され続けるということです。コードは助けてください。CSS:背景位置が正しく動作しない
HTML:
<div id="topnav">
<ul>
<li id="nav-home"><a href="index.html">Feature Product<span></span></a></li>
<li id="nav-all"><a href="shop_owners.html">All Products<span></span></a></li>
<li id="nav-how"><a href="all_products.html">How It Works<span></span></a></li>
</ul>
</div>
CSS:
#topnav {
position: relative;
left: 150px;
top: 100px;
margin: 0;
padding: 0;
height: 50px;
}
#topnav ul {
list-style-type: none;
text-align: center;
line-height: 50px;
}
#topnav ul li {
float: left;
}
#topnav ul li a {
background: url(../nav-bar-2.png);
background-repeat: no-repeat;
display: block;
height: 50px;
position: relative;
}
#nav-home {
width: 200px;
}
#nav-all {
width: 200px;
background-position: -200 0px
}
#nav-how {
width: 200px;
background-position: -400px 0px
}
#topnav ul li a span {
background: url(../nav-bar-2.png) no-repeat scroll bottom left;
display: none;
position: absolute;
top: 0;
left: 0;
height: 50px;
width: 100%;
z-index: 100;
}
#topnav li a span:hover {
cursor: pointer;
}
#nav-home span {
background-position: 0px -50px
}
#nav-all span {
background-position: -200 -50px;
}
#nav-how span {
background-position: -400 -50px;
}
それはあなたの正確なコードですか?あなたはあなたの値にいくつかのpxがありません。 –
はい、そうです。申し訳ありませんが、あなたの話していることはわかりません。私はクラスのためのウェブページを作ろうとしていて、それはあまりよくありません。 –
あなたはいくつかのポジションが間違っています。背景位置:-200 -50ピクセル;各値(すなわち、-200px -50px)の測定(px)が必要です。 –