Pregunta

(antes de empezar debo decir que sí, he hecho todas las comprobaciones estupidez, si el enlace está en mi historia y ha sido visitado etc)

Estoy usando la versión de Chrome 6.0.472.63, aunque es importante que esto funciona en todos los navegadores.

Funciona en Firefox, IE y Opera.

Básicamente todo lo que estoy tratando de hacer es cambiar la imagen de fondo de un enlace si el enlace se ha visitado.

He hecho un montón de pruebas de ensayo y error, de modo oso conmigo para múltiples ejemplos.

Esto es lo que tenía originalmente

.forum_box .title a {
 background-image:url(../images/f_unread.png);
 background-position:10px center;
 background-repeat:no-repeat;
 background-color:transparent;
 color:#2D4054;
 font-size:14px;
 padding:10px 12px 10px 44px;
 text-decoration:none;
 display:block;
 font-weight:bold;
}
.forum_box .title a:visited {
 background-image:url(../images/f_read.png);
}

funciona en todos los navegadores excepto Chrome. Después probé simplemente por lo que es un color en lugar de la imagen.

.forum_box .title a:visited {
 background-color:red;
}

Lo mismo otra vez, sin embargo, me cambió el enlace a #fff en lugar de transparente y el enlace visitado cambió de color rojo, por lo que aparentemente el color bg sólo funciona si se establece un color de BG para el padre.

.forum_box .title a {
 background-image:url(../images/f_unread.png);
 background-position:10px center;
 background-repeat:no-repeat;
 background-color:#fff;
 color:#2D4054;
 font-size:14px;
 padding:10px 12px 10px 44px;
 text-decoration:none;
 display:block;
 font-weight:bold;
}
.forum_box .title a:visited {
 background-color:red;
}

Sin embargo, todavía no resuelve mi problema de imagen. Así, en un último intento he intentado esto con la esperanza de que por alguna razón Chrome haría sólo funcionan cuando las mismas propiedades cuando están presentes en ambos.

.forum_box .title a {
 background:#fff url(../images/f_unread.png) no-repeat 10px center;
 color:#2D4054;
 font-size:14px;
 padding:10px 12px 10px 44px;
 text-decoration:none;
 display:block;
 font-weight:bold;
}
.forum_box .title a:visited {
 background:#fff url(../images/f_read.png) no-repeat 10px center;
}

Eso no funcionó bien y de nuevo seguido trabajando en firefix, Opera e IE. Así que vengo aquí a desbordamiento de pila muy confundido.

Cualquier ayuda sería muy apreciada!

ACTUALIZACIÓN: He intentado una solución jQuery, aunque todavía no funciona. A pesar de tener: los enlaces visitados y puedo confirmar su estado visitado por cambiar el color de la fuente a rojo. jQuery ( 'a: visited').. retornos de longitud 0

¿Fue útil?

Solución

El mismo problema aquí. Cambio de background-position en una CSS Sprite en una:. Visitado es trabajar para mí en Firefox 3.6, pero no en Chrome 6

Sin embargo, es probable que pronto dejará de funcionar en Firefox también. (Tal vez por FF 4?)

Es un problema de privacidad, y se puede leer aquí un artículo de Mozilla al respecto (marzo de 2010) http://hacks.mozilla.org/2010/03/privacy-related-changes-coming-to-css-vistited/ Y el error: https://bugzilla.mozilla.org/show_bug.cgi?id=147777#c160

creo que sólo es posible solución es utilizar creativamente el color de fondo en lugar de imágenes.

Otros consejos

Es probable que sea un problema de seguridad.
Marque esta posterior en el mozilla blog de seguridad.
Ciertamente puedo imaginar cómo lo harían.

Chrome parece tener css para discapacitados:. Visitados (excepto por el color)

Esto sería evitar que la historia oler explotar.

http://www.azarask.in/blog/post/socialhistoryjs/

Es posible que necesite sus comillas simples alrededor de su url img ... Los navegadores son divertidos acerca de cuándo se preocupan por cotizaciones y cuando no lo hacen ....

Esto se hace por razones de seguridad, ya que era posible cargar una gran cantidad de imágenes y detectar que une el usuario había visitado, cualquier propiedad envío de un pedido específico, o cargar un recurso específico, dependiendo de lo que el usuario ha visitado se considera técnicamente como un problema de seguridad, ya que puede filtrarse intereses personales del usuario.

https://blog.jeremiahgrossman.com /2006/08/i-know-where-youve-been.html

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top