Algun programador html? Problema seguramente tonto con links y CSS.

Estoy creando estilos de color para los links de una web, en css, y tengo lo siguiente:

a.menu:link {
color:ffffff
}
a.menu:visited {
color:ffffff
}
a.menu:hover {
color:c00404
}
a.menu:active {
color:ffffff
}


Ahora en el .html, para un link pongo




En firefox rula perfecto pero en IE no hace puto caso, solo si quito los .menu y entonces no tengo que hacer referencia a la clase en el enlace, pero de esta forma solo puedo tener un estilo en toda la página y quiero uno para menus y otro para web.

Saludos.
prueba a ponerlos asi


A:link{}
A:visited{}
A:hover{}
Hmmmmm. Estoy un poco despistado. ¿Qué efecto quieres conseguir? ¿Una imagen con el borde del color del estilo definido?
Nac_eol escribió:Hmmmmm. Estoy un poco despistado. ¿Qué efecto quieres conseguir? ¿Una imagen con el borde del color del estilo definido?


Si, y links de texto del mismo color que los bordes de los botones segun la zona de la pagina(menu o cuerpo)

@Lego: así sí funcionan, pero queda limitado a un estilo para todo.
Nada, que no he leido bien.
Yo lo veo todo aparentemente bien.

¿Tienes bien definidos los DTDs en la cabecera de tu html?
Quizá el error te pueda venir por ahí.

Recomiento xhtml estricto (o transitional, pero mejor estricto).

Desde luego el error no está en la sintaxis del css ni en la invocación al enlace. O tienes un override por algún sitio, o no llamas bien al css o lo que te he comentado de los dtd.
Muchas gracias por responder, se me olvido comentar un detalle, no tengo casi(o sin casi) idea de programación, de lo que has dicho no he pillado ni la mitad xD. El CSS supongo que está llamado correctamente, ya que en firefox funciona todo perfectamente, y en IE lo unico que no funciona es al "a href= ...." meterle lo de class="menu", que pasa de mi cara, pero si en el css quito los .menu, y obviamente no pongo lo de class="menu" en el enlace, aparece con los colores establecidos en el css, pero con el inconveniente de tener un solo estilo de colores para los enlaces.
Te comento brevemente.

En la cabecera de tu html debes definir un DTD (Document Type Definition) para que el navegador sepa la sintaxis que estás utilizando en tu html.
Según el doctype que definas el navegador se pone en uno u otro modo. Si no pones nada, ahí cada navegador hace una cosa diferente. IE si no encuentra doctype se pone en modo "quicks" (caprichoso) con lo que su comportamiento puede ser impredecible.

Si estás usando Dreamweaver, cuando creas una página nueva puedes definirle el doctype y el propio programa ya te pone la cabecera. Si estás picando html a mano o usando otro editor menos "inteligente", entonces deberas poner la cabecera tú mismo.

Si, por ejemplo, quiere usar xhtml transicional, debes poner:




Espero que esto te ayude. Creo que el fallo te puede venir por ahí.
Puedes probar a hacer algo mucho más sencillo:

a.menu:link {
color:ffffff;
}
a.menu:visited {
color:ffffff;
}
a.menu:hover {
color:c00404;
}
a.menu:active {
color:ffffff;
}

Añade los ; al final de cada declaración de color.

Un saludo.
masual escribió:Estoy creando estilos de color para los links de una web, en css, y tengo lo siguiente:



Ahora en el .html, para un link pongo



En firefox rula perfecto pero en IE no hace puto caso, solo si quito los .menu y entonces no tengo que hacer referencia a la clase en el enlace, pero de esta forma solo puedo tener un estilo en toda la página y quiero uno para menus y otro para web.

Saludos.


Ponlo asi:

.menu a { color: #ffffff; }
.menu a:visited { color: #ffffff; }
.menu a:hover { color: #c00404; }
.menu a:focus {color: #ffffff }

dime si t funciono
Prueba con esto, sino:

/* Estilos para los enlaces de texto */
a.menu:link {
color:#ffffff;
}
a.menu:visited {
color:#ffffff
}

a.menu:hover{
color:#c00404;
}

a.menu:active {
color:#ffffff
}

/* Estilos para las imágenes con enlaces */
a.menu:link img{
border:1px solid #FFFFF;
}
a.menu:visited img{
border:1px solid #FFFFFF;
}

a.menu:hover img{
border:1px solid #c00404;
}

a.menu:active img{
border:1px solid #FFFFFF;
}
DalaiLomo escribió:
Ponlo asi:

.menu a { color: #ffffff; }
.menu a:visited { color: #ffffff; }
.menu a:hover { color: #c00404; }
.menu a:focus {color: #ffffff }

dime si t funciono


Eso no funciona porque sólo es válido para los DIV no para los A. Es decir, que sólo afecta a los A dentro de los DIV, no a los A directamente.

Pasa que cuando te piden algo y debes adaptarlo a todos los navegadores puede resultar un cao total. No hay ninguno que se adapta al estándar al 100% y nos jode a todos, pero es lo que hay.
Gracias a todos por responder. Llevo una hora pasando el "validator" de W3.org, ahora pone que está todo correcto tanto en el html como en el css, en firefox funciona todo perfecto pero el IE ahora ni siquiera abre la pagina xDDDDD. Me voy a pegar un tiro. [uzi]
¿Has probado lo que te he puesto? A mi en IE6 me funciona.
Nac_eol escribió:¿Has probado lo que te he puesto? A mi en IE6 me funciona.


Si no eres dios, estás cerca de serlo. Mil gracias de verdad tio, ayer con la paranoia del IE que tenía no me fijé en tu post. Ya va perfecto. Gracias de nuevo! [beer] Solo me hizo falta cambiar 1px por 2px que daban saltitos las imgs.
14 respuestas