2017-09-17 10 views
0

私はこれを達成できればプロジェクトに取り組んだのですが、現時点では構造の変更なしにこの動作を得ることはできないと仮定しています。あなたのクラス宣言の中にホバーを置いてください)、あなたには、最もクリーンな解決策は何でしょうか?要素がハイパーリンクの場合にのみホバークラスが適用されます

LESS

@blue: blue; 
@blue-darker: darken(@blue, 20%); 

.text-blue { 
    color: @blue; 

    /* something like that */ 
    &:hover when (element_reference == hyperlink) { 
     color: @blue-darker; 
    } 
} 

CSS

.text-blue { 
    color: blue; 
} 

/* something like that */ 
a.text-blue:hover { 
    color: #000099; 
} 

HTML

<p class="text-blue">Text in blue with no hover effect</p> 
<a class="text-blue" href="#">Link in blue with hover effect</a> 
+0

私は構造が混乱していると感じています。スタイルはリンクや特定のクラスのリンクに適用する必要があります。リンクになると青いテキストには適用されません。私がリンクスタイルがどこから来ているのかを見つけようとしているのなら、リンク先を見てみましょう。 –

+0

@stybl:誤字をおかけして申し訳ありません:) – TyrionGraphiste

答えて

2

これは、あなたが欲しいものを行う必要があります。

.text-blue { 
    color: @blue; 
    a&:hover { 
     color: @blue-darker; 
    } 
} 

Fiddle

+0

非常に素晴らしいトリック!正確には私が欲しかったが、ありがとうございました:) – TyrionGraphiste

1

hrefなし<a>は、ハイパーリンクとして扱われていないので、私は、:link CSS疑似クラスを使用します。 https://jsfiddle.net/jsqdom1s/

.text-blue { 
    color: @blue; 
    a&:link:hover { 
    color: @blue-darker; 
    } 
} 
関連する問題