私のCSSファイルでは、「リセット」の一部として、すべてのリンクを次のようにスタイルしました:
a {
color: blue;
&:visited {
color: violet;
}
&:hover,
&:focus,
&:active {
color: orange;
}
}
これらがページ上のすべてのリンクを対象とする非常に広範なルールであることは承知していますが、それがデフォルトの外観であるため、このように (または必要に応じて) 実行しても問題ないと思います。
今、私のナビゲーションは次のようになります。
<ul class="nav">
<li><a href="#" class="nav__a">Link 1</a></li>
<li><a href="#" class="nav__a">Link 2</a></li>
<li><a href="#" class="nav__a">Link 2</a></li>
</ul>
対応する CSS を使用:
.nav__a {
color:green;
}
残念ながら、未訪問のリンクのみが緑色で表示され、既に訪問済みのリンクは紫色のままです。
追加すると問題が「修正」されることがわかりましたが!important
、それは本当にきれいではありません。
もちろんできました
.nav__a,
.nav__a:visited {
color: green;
}
しかし、それはかなり肥大化しているようです – 他のリンク状態についてもそうする必要があります.
これを回避する方法はありますか、それとも通常の動作ではありませんか?モジュラー CSS に関する私のアプローチに何か問題があるのでしょうか?