4

訪問したリンクのパディングを変更できないのはなぜですか? 私はこれを試しています:

HTML:

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

CSS:

a{
    display: block;
    background: green;
    padding-left: 100px;
}

a:visited{
   background: red;
   padding-left: 0;
}

デモ: http://jsfiddle.net/ZVZWW/

4

2 に答える 2

6

残念ながら、セキュリティ上の問題により、要素に適用できるスタイルのリスト:visitedは限られています。これまでハッカーは、通常のリンクとユーザーが以前にアクセスしたリンクのスタイルの違いをチェックすることで、ユーザーの履歴を盗聴することができました。ここでのセキュリティ上の懸念と許可されているスタイルの詳細: https://blog.mozilla.org/security/2010/03/31/plugging-the-css-history-leak/

許可されているスタイルと:visited要素の変更については、MDN がこの件に関して文書化したものを次に示します。

訪問したリンクを視覚的にスタイル設定することはできますが、使用できるスタイルには制限があります。訪問したリンクに適用できるのは、次のプロパティのみです。

color
background-color
border-color (and its sub-properties)
outline-color
fill and stroke colors

さらに、訪問済みのリンクに設定できるプロパティであっても、未訪問のリンクと訪問済みのリンクの間の透明度を変更することはできません。そうしないと、rgba() または hsla() の色値または透明度を使用できます。キーワード。

于 2013-06-03T06:54:05.863 に答える
3

訪問したリンクに適用できるのは、次のプロパティのみです。

color      
background-color
border-color (and its sub-properties)
outline-color

ソース: - Privacy_and_the_:visited_selector

于 2013-06-03T06:54:46.453 に答える