Retroceder   Foros del Web > Diseño de Sitios web > CSS

Respuesta
 
Herramientas Desplegado
Antiguo 14-mar-2008, 14:03   #1 (permalink)
Jowy no se puede cailificar en este momento
 
Avatar de Jowy
 
Fecha de Ingreso: febrero-2007
Ubicación: En la red
Mensajes: 228
Enlazar con un div completo

Hola gente, que tal andamos? Me asalta una duda... en la cabecera de una web tengo un div tal que así:

Código:
 <a href='index.html'><div class="logo"></div></a>
El div tiene una imagen de fondo que es el logo de la web... al hacer click en él debería llevarme al index.

Bien, funciona en firefox. En IE7 funciona pero no aparece el cursor en forma de mano... y en IE6 no funciona nada de nada... ¿Que puedo hacer para que en IE me funcione correctamente? ¿Se os ocurre alguna otra forma de conseguirlo?
Jowy está desconectado   Responder Citando
Antiguo 14-mar-2008, 14:12   #2 (permalink)
Raulmmmm tiene algunos puntos positivos de karma
 
Avatar de Raulmmmm
 
Fecha de Ingreso: marzo-2007
Ubicación: En otro lugar que tú
Mensajes: 1.392
Re: Enlazar con un div completo

Poner todo el CSS del logo al <a>, y luego añadirle el display:block;. Ejemplo:
.logo{ width: 300px; height: 400px; background: url('logo.gif'); display: block;}
Y el html:
<a href="index.html" class="logo"></a>
Raulmmmm está desconectado   Responder Citando
Antiguo 14-mar-2008, 14:55   #3 (permalink)
Jowy no se puede cailificar en este momento
 
Avatar de Jowy
 
Fecha de Ingreso: febrero-2007
Ubicación: En la red
Mensajes: 228
Re: Enlazar con un div completo

Gracias! en IE7 ya funciona perfecto! Pero en IE6 ni se ha inmutado...

:(
Jowy está desconectado   Responder Citando
Antiguo 14-mar-2008, 15:34   #4 (permalink)
Raulmmmm tiene algunos puntos positivos de karma
 
Avatar de Raulmmmm
 
Fecha de Ingreso: marzo-2007
Ubicación: En otro lugar que tú
Mensajes: 1.392
Re: Enlazar con un div completo

Intenta borrar la caché y vuelve a probar, a mí me va en IE6, y si sigue sin ir, pon aquí el código del .logo.
Raulmmmm está desconectado   Responder Citando
Antiguo 14-mar-2008, 16:53   #5 (permalink)
Jowy no se puede cailificar en este momento
 
Avatar de Jowy
 
Fecha de Ingreso: febrero-2007
Ubicación: En la red
Mensajes: 228
Re: Enlazar con un div completo

Vale, esta bien como tu habías dicho. He comprobado que funciona, pero como uso un fix para preservar la transparencias de los .png:

Código:
img, div, a { behavior: url(js/iepngfix.htc) }
entonces se ve que interactua de alguna manera y no me detecta el enlace...

Creo que voy a tener que usar otro fix para transparencias de png... :(
Jowy está desconectado   Responder Citando
Antiguo 16-mar-2008, 20:54   #6 (permalink)
feral tiene algunos puntos positivos de karma
 
Fecha de Ingreso: septiembre-2007
Mensajes: 184
Re: Enlazar con un div completo

<a href='index.html'><div class="logo"></div></a>
Los div son elementos de bloque en (x)html y no pueden ir dentro de los <a>, que son elementos en linea. Eso es un fallo grave sintactico que te puede dar problemas en el CSS y en el DOM a parte de una validacion negativa del codigo (x)html.
Usa una etiqueta <span> en vez del div, y luego si quieres le das un comportamiento block al span en el CSS (block e inline en CSS no son lo mismo que en (x)html), en CSS todo elemento puede ser block o inline (posicionalmente) pero en xhtml no, por defecto tienen el mismo comportamiento que en xhtml pero se puede cambiar.

Por ejemplo <span> es un elemento en linea de (x)html, y siempre sera en linea en el (x)html, por lo tanto se puede colocar dentro de otro elemento en linea como <a>. Sin embargo en CSS span puede mostrarse en linea o en bloque, por defecto sera mostrado en linea (como en (x)html) pero se puede cambiar.

En cuanto a tu problema si lo he entendido bien quieres poder hacer clic en una imagen de fondo a modo de enlace.. lo que no se es como has conseguido hacer eso en algun navegador ya que las imagenes de fondo CSS no son interactivas, para que una imagen pueda ser clickeada es necesario que este puesta mediante <img> en el codigo fuente del (x)html. Creo que debe estar relacionado con el fallo del codigo que has puesto que de alguna manera extraña activa tu div como si fuera un enlace en algunos navegadores.

Quizas la manera mas sencilla de hacer lo que tu quieres si he entendido bien lo que quieres hacer seria;
<div>
<a href="#"><img src="#" alt="logo" /></a>
</div>

Tambien como te han dicho antes podrias aplicar a la etiqueta <a> todo el CSS, pero un logo en mi opinion sobrepasa en significado a un elemento decorativo (imagenes de fondo), por lo tanto es mas adecuado usar img en el codigo (x) html para mostrarlo.

Última edición por feral; 16-mar-2008 a las 21:22.
feral está desconectado   Responder Citando
Respuesta

No hay votos aún.


Herramientas
Desplegado

Normas de Publicación
No puedes crear nuevos temas
No puedes responder temas
No puedes subir archivos adjuntos
No puedes editar tus mensajes

BB code is Activado
Caritas están Activado
[IMG] está Activado
Código HTML está Desactivado


La Zona horaria es GMT -6. Ahora son las 12:23.


Message Board Statistics

LinkBacks Enabled by vBSEO 3.1.0

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93