2017-08-31 18 views
-1

私はたくさんのCSSスタイルシートを見てきました。私が出会った要素をスタイリングする方法は少なくとも2つあります。私が知りたいのですが要素をスタイリングする2つの方法はなぜ利点がありますか?

.link { 
    color: green; 
    background-color: transparent; 
    text-decoration: none; 
} 

<a href="#" class="link">Link1</a> 

a:link { 
    color: green; 
    background-color: transparent; 
    text-decoration: none; 
} 

<a href="#">Link</a> 

以下のいずれかのよう、CSS要素異なるをスタイリングする方法である一方が他方の上にどのような利点がありますか?

+3

利点はありますか?なし。彼らはちょうど2つの全く異なるセレクターです。最初は未訪問の ''タグだけを選択します。 2番目のクラスは 'link'クラスで何かを選択します。 – Santi

+0

'.link'は' a'タグに単純に追加されたクラスです。 'a:link'は未訪問リンクのスタイルを意味します。もっと詳しく読む:https://www.w3schools.com/css/css_link.asp – tech2017

+0

あなたの例は比較できません。 1つはリンクにのみ適用される擬似クラスであり、もう1つは任意の要素に適用できる汎用クラスです。 – j08691

答えて

1

どちらの場合でも利点はありません。彼らは2つの別々の機能を実行しているので、それは少しのリンゴからオレンジまでです。

未訪問のリンクにのみ適用したい場合は、:linkを使用してください。

リンクが訪問されたかどうか気にしない場合は、.linkを使用してください。


:linkセレクタは、まだ訪問されていないリンクにのみ適用されます。 MDNパー

:リンクCSSの擬似クラスはまだ訪問されていない(例えばアンカーなど)のリンクを表しています。


.linkセレクタは、単純なclass selectorがそれに適用されるクラスlinkを有する任意の要素に適用されています。 MDNパー

CSSクラスセレクタは、そのクラス属性の内容に基づいて要素にマッチします。

+0

リンクセレクタでクラスを使用する利点はありませんか? –

+0

...それはあなたがしようとしていることに完全に依存します。 ':link'セレクタは訪問されたリンクには適用されません。 '.link'セレクタは、訪問したかどうかに関わらず、' class = "link" 'を持つものに適用されます。 – Santi

+0

ええ、ありがとう。 –

関連する問題