--- title: ':visited' slug: 'Web/CSS/:visited' tags: - CSS - Reference - Selectors - セレクター - 疑似クラス translation_of: 'Web/CSS/:visited' ---
:visited は CSS の擬似クラスで、ユーザーがすでに訪問したリンクを表します。プライバシー上の理由から、このセレクターを使用して変更できるスタイルはとても限定されています。
/* 訪問済みの <a> をすべて選択 */
a:visited {
color: green;
}
:visited 擬似クラスによって定義されたスタイルは、少なくとも同等の仕様を持つリンク関連の擬似クラス ({{cssxref(":link")}}, {{cssxref(":hover")}}, {{cssxref(":active")}}) によって上書きされます。適切にリンクにスタイルを適用するには、 :visited ルールを :link ルールの後、 :hover および :active ルールの前に置いてください。 LVHA 順、 :link — :visited — :hover — :active と定義されています。
プライバシー上の理由から、ブラウザ―はこの擬似クラスを使って適用できるスタイルに厳しい制限をかけています。使い方は以下の通りです。
:visited 状態ではないものが代わりに使用されますが、アルファチャンネルが 0 であった場合は、 :visited で設定されたスタイルセットは完全に無視されます。:visited 状態ではない色の値を返します。メモ: これらの制限とその理由については、プライバシーと :visited セレクターを参照してください。
色を持っていないか透過のプロパティは、 :visited で変更することができません。この擬似クラスで設定するプロパティについては、ブラウザーが持っている既定値は color と column-rule-color だけでしょう。そのため、他のプロパティを変更したい場合は、 :visited セレクターの外で基本的な値を設定する必要があります。
<a href="#test-visited-link">このリンクを訪問しましたか?</a><br> <a href="">このリンクはすでに訪問済みです。</a>
a {
/* 該当するプロパティに不透過の既定値を設定することで、
:visited 状態のスタイルを定義できるようにします */
background-color: white;
border: 1px solid white;
}
a:visited {
background-color: yellow;
border-color: hotpink;
color: hotpink;
}
{{EmbedLiveSample("Example")}}
| 仕様書 | 状態 | 備考 |
|---|---|---|
| {{ SpecName('HTML WHATWG', 'scripting.html#selector-visited', ':visited') }} | {{ Spec2('HTML WHATWG') }} | |
| {{ SpecName('CSS4 Selectors', '#link', ':visited') }} | {{ Spec2('CSS4 Selectors') }} | 変更なし。 |
| {{ SpecName('CSS3 Selectors', '#link', ':visited') }} | {{ Spec2('CSS3 Selectors') }} | 変更なし。 |
| {{ SpecName('CSS2.1', 'selector.html#link-pseudo-classes', ':visited') }} | {{ Spec2('CSS2.1') }} | {{ HTMLElement("a") }} 要素に適用する場合のみ制約を緩和。プライバシーを理由とするブラウザーの振る舞いの制限をかけた。 |
| {{ SpecName('CSS1', '#anchor-pseudo-classes', ':visited') }} | {{ Spec2('CSS1') }} | 初回定義 |
{{Compat("css.selectors.visited")}}