2012-02-25 12 views
0

私はCSSでborder-color変更ホバー効果を作成しようとしていましたが、何かが正しく動作していないようです。ここに私のコードは次のとおりです。ホバー上での色の変化

マークアップ:

<ul> 
    <li class="hover"> 
    <img src="img/content/lighter.png" alt="lighter"/> 
    <p>Discusing Strategy</p> 
    </li> 
    <li class="triangle"></li> 
    <li class="hover">     
    <img src="img/content/wrench.png" alt="wrench"/> 
    <p>Beginig <br/> Designs &amp; Development</p> 
    </li> 
    <li class="triangle"></li> 
    <li> 
    <img src="img/content/car.png" alt="car"/> 
    <p>Delivering Product</p> 
    </li> 
</ul> 

はCSS:私はここで何が問題を

div#bpath ul li.triangle { 
    width: 0; 
    height: 0; 
    border-top: 95px solid #d0dde5; 
    border-left: 20px solid #c1c1c1; 
    border-bottom: 95px solid #d0dde5; 
} 

div#bpath ul li.hover:hover li.triangle { 
    border-left-color: #5f9999; 
} 

をやっていますか?私はp要素の色を変更するために同じテクニックを使用しました。国境の色の変更ができないのはなぜですか?

答えて

2

あなたはすべての三角形の李さんは、この使用を変更する場合:

div#bpath ul:hover li.triangle{ 
           border-left-color: #5f9999; 
          } 

あなただけの次の三角形要素をしたい場合、それはよりトリッキーですが、あなたはこれを試すことができます。

div#bpath ul li:hover + li.triangle { 
    clear:both; 
} 

私はこのことを考えますつまり、動作しません。 IE上で動作させたい場合は、jqueryに行きます。

+0

アルドあなたが提供する答えは私がしたものをwasent 2番目のセレクタを探していたのは、トリックがあったように思えた – user1146440

4

あなたの選択:

div#bpath ul li:hover li.triangle 

li内のクラスの三角形 "のli要素と一致しようとしています。ネストされたリストは表示されないため(他のli要素内にはli要素が含まれていません)、これは機能しないようです。あなたは後者lili.triangle)は、以下の(、のすべて、または1)を得削除する場合

div#bpath ul li:hover, 
#bpath ul:hover li.triangle:hover, 
#bpath ul:hover li.triangle, 
#bpath ul li.triangle:hover { 
    border-left-color: #5f9999; 
} 

これはうまくいくかもしれません。投稿されたHTMLが正しいと仮定します。

+0

唯一の問題は、三角形のクラスの唯一の辺が境界線を持っていて、他の李の上にホバリングしながら色を変更しようとしていることです – user1146440

+0

'#bpath ul:hover li.triangle'セレクタを使用してください。あなたが望むものを正確には指定しなかった(または私には伝えられませんでした)ので、多くのセレクタを選択する必要がありました。 =/ –

+0

私は最初と3番目のliには、私はすでに私のコードでこれをしたことを確認することができますしようとしていることを見ることができるクラスのホバーをadedしたとまだdosentの仕事 – user1146440

0

あなたは

div#bpath ul li.triangle:hover { 
    border-left-color: #5f9999; 
} 
0

あなたが三角形の色を変更し、このバイオリンを使用して、あなたの質問を明確にするためにそれを適応させることができ、この方法を使用する必要があります。 http://jsfiddle.net/j7YSu/1/

(またはちょうど答え:)としてそれを受け入れる)

私はあなたのコードでいくつかの問題があったが、多分これフィドルは役立ちます:http://jsfiddle.net/j7YSu/3/

+0

私は色を変更しようとしていないそれを浮かべている間、私はそれを変えたいと思っています。 – user1146440

関連する問題