2010-12-04 6 views
0

私はcssスプライトを使ってナビゲーションバーを作ろうとしています。私はイメージを持っていますが、今はコードの問題です。CSSスプライトを使用していますか?

.navi a{ 
display:block; 
float:left; 
height:40px; 
overflow:hidden; 
background-position:left top; 
} 
navi a:hover img{ 
margin-top:-40px; 
} 

とHTMLは次のとおりです:現時点では、私が働いている

<div class="topbar"> 
<img alt="title" src="title.png"/><br/> 
<div class="navi"> 
<a href="index.html" class="home"><img src="home_up.png"/></a> 
</div> 
</div> 

すべてが通常の画像があり、高さが正しく、それは画像オフの残りの部分をトリミング、しかしとき私はそれが何もしないことを浮かべる。助言がありますか?ありがとう

答えて

6

最初のスタイルは.navi aですが、次に書いているのはnavi a:hover imgです。これは、第2のスタイルが、<navi />要素内にあり、クラス名がnaviの要素内ではなく、ホバリングされたリンク内のすべての画像に適用されることを意味します。

ので、代わりの:

navi a:hover img 

あなたが書く必要があります。

.navi a:hover img 
+1

ハハ、私は長い間、このを見て過ごしました。私はそれがとてもシンプルなときに私はそれが嫌いD :! – Jake

+0

@ジェイク:私はまた、欠落しているドットに気づく前に少し時間を過ごしました。そういうわけで、1行に1つのスタイルを書く方が好きです。このようなタイプミスに気づくのはずっと簡単です。 –

関連する問題