(開始する前に、はい、すべての愚かさのチェックを行った、はい、リンクは私の履歴にあり、アクセスされているなど)
私は Chrome バージョン 6.0.472.63 を使用していますが、これがすべてのブラウザーで機能することが重要です。
Firefox、IE、Opera で動作します。
基本的に私がやろうとしているのは、リンクが訪問された場合にリンクの背景画像を変更することだけです.
私は多くの試行錯誤テストを行ってきたので、複数の例についてはご容赦ください。
もともと持ってたのはこれ
.forum_box .title a { background-image:url(../images/f_unread.png); background-position:10px センター; バックグラウンドリピート:リピートなし; 背景色:透明; 色:#2D4054; フォントサイズ:14px; パディング:10px 12px 10px 44px; テキスト装飾:なし; 表示ブロック; font-weight:太字; } .forum_box .title a:訪問済み { background-image:url(../images/f_read.png); }
Chrome を除くすべてのブラウザで動作します。次にイメージではなく色だけにしてみました。
.forum_box .title a:訪問済み { 背景色:赤; }
もう一度同じですが、リンクを透明ではなく #fff に変更し、訪問したリンクが赤に変わったため、親の背景色を設定した場合にのみ背景色が機能するようです。
.forum_box .title a { background-image:url(../images/f_unread.png); background-position:10px センター; バックグラウンドリピート:リピートなし; 背景色:#fff; 色:#2D4054; フォントサイズ:14px; パディング:10px 12px 10px 44px; テキスト装飾:なし; 表示ブロック; font-weight:太字; } .forum_box .title a:訪問済み { 背景色:赤; }
しかし、それでも私のイメージの問題は解決しません。したがって、最後の試みで、何らかの理由でChromeが同じプロパティが両方に存在する場合にのみ機能することを期待して、これを試しました。
.forum_box .title a { background:#fff url(../images/f_unread.png) no-repeat 10px center; 色:#2D4054; フォントサイズ:14px; パディング:10px 12px 10px 44px; テキスト装飾:なし; 表示ブロック; font-weight:太字; } .forum_box .title a:訪問済み { background:#fff url(../images/f_read.png) no-repeat 10px center; }
それも機能せず、Firefix、Opera、および IE で引き続き機能しました。だから私はスタックオーバーフローに来て非常に混乱しています。
どんな助けでも大歓迎です!
更新: jQuery ソリューションを試しましたが、まだ機能しません。:visited リンクがあるにもかかわらず、フォントの色を赤に変更することで、訪問済みの状態を確認できます。jQuery('a:visited').length は 0 を返します。