Comunidad de diseño web y desarrollo en internet online

hackear IE para que funcione CSS

Citar            
MensajeEscrito el 04 Dic 2006 10:17 am
Estoy montando una web con un menu hecho por listas en CSS igual al que hay en este enlace:

http://www.cssplay.co.uk/menus/vertical_slide.html

Mi problema es que en una de las secciones debe aparecer un submenu. En FF sale todo a la perfeccion, pero en IE6 no sale el submenu.

Mirando el codigo CSS que hay en la pagina del enlace, veo que crea una tabla dentro del enlace para que se pueda ver en IE6...el problema esta en que no entiendo lo que hace con las etiquetas siguientes:

Código :

<!--[if IE 7]><!--></a><!--<![endif]-->

<!--[if lte IE 6]></a><![endif]-->


se que son unas etiquetas que se ponen para hackear IE6...pero no entiendo como las usa.Podriais explicarmelo?

Gracias^^

Por noctam

Claber

197 de clabLevel



 

firefox
Citar            
MensajeEscrito el 04 Dic 2006 02:43 pm
Yo preferiria usar javascript para mostrar las sublistas, me ahorraria el problema de la compatibilidad y si lo haces bien seguiria siendo accesible. Saludos.

Por NEO_JP

BOFH

5724 de clabLevel

13 tutoriales
12 articulos

Genero:Masculino   Anime Bloggers Premio_Secretos Team Cristalab

Front-end Developer en Washington, DC

firefox
Citar            
MensajeEscrito el 04 Dic 2006 03:06 pm
El problema es que no tengo ni idea de javascript ^^U

de todas formas, me ha surgido otra pregunta al ver el codigo del menu de CSSPlay. En el se ve que utiliza una tabla para crear el submenu, y bueno, ¿esto no va en contra de los fundamentos del w3c sobre la web?.

Me refiero a que se esta utilizando un elemento estructural como es el elemento <table> para conseguir un efecto estetico y eso no es correcto no? corregidme si me equivoco en esto.

de nuevo gracias^^

Por noctam

Claber

197 de clabLevel



 

firefox
Citar            
MensajeEscrito el 04 Dic 2006 05:30 pm
ademas con javascript puedes darle un efecto extra, haciendo que la expancion de los elementos sea prograsivoi dando asi la imprecion de que van creciendo y no aumentan su tamano de golpe...
fijhate en cssboulevard que ahi hay un ejemplo de lo que te digo

http://www.cssboulevar.com.ar/codigos/?id=164

no es exactamente lo que quieres, pero puedes ajustarlo y obtener lo que necesitas...

Por buzu

163 de clabLevel



 

Los Angeles, California

firefox
Citar            
MensajeEscrito el 05 Dic 2006 01:37 am
Lo que sucede con cssplay es que son experimentos para la web, él autor solo demuestra la posibilidad del css, el único problema es que no todos sus experimentos son válidos, ni sirven para el uso normal en una web, debido al fuerte uso de hacks, condicionales IE y "workarounds". Son solo experimentos y no todos valen la pena ser usados.

Para ese tipo de menú yo haria algo como esto.

Código :

<ul id="nav">
  <li><a href="#">Link</a>
    <ul>
      <li><a href="#">Sub Link</a></li>
    </ul>
  </li>
  <li><a href="#">Link</a></li>
</ul>


Código :

#nav li ul { display:none; }
#nav li:hover ul { display:block; }


Eso deberia funcionar en todos los navegadores actuales: Firefox 2, IE7, Safari2, Opera9.

Si quieres mayor soporte podrias usar este javascript que acabo de hacer, solo se agrega la línea nav('id_de_tu_lista'); en el window.onload y cambiar un poco el css.

Código :

<script type="text/javascript">
function nav(mylist){
  mylist = document.getElementById(mylist);
  lis = mylist.getElementsByTagName('li');
  for(i=0;i<lis.length;i++){
    lis[i].onmouseover = function(){
      this.setAttribute('class','hover');
    }
    lis[i].onmouseout = function(){
      this.removeAttribute('class');
    }
  }
}
window.onload = function(){
nav('nav');
}
</script>


Código :

#nav li:hover ul, #nav li.hover ul { display:block; }

Por NEO_JP

BOFH

5724 de clabLevel

13 tutoriales
12 articulos

Genero:Masculino   Anime Bloggers Premio_Secretos Team Cristalab

Front-end Developer en Washington, DC

firefox
Citar            
MensajeEscrito el 05 Dic 2006 12:57 pm
Gracias Neo_jp probare el codigo esta tarde a ver que tal va.

Solo una cosa mas, me podriais decir algun sitio bueno para aprender javascript?

Algo asi como la pagina del SIDAR de la traduccion de la especificacion de CSS (dejo un enlace abajo para la gente que no la conozca, que en este foro creo que seran pocos ya jeje) porque esta visto que por mucho que me pese y por mucho CSS, actionscript o PHP que aprenda javascript siempre estara rondando por ahi.

http://www.sidar.org/recur/desdi/traduc/es/css/cover.html

Por noctam

Claber

197 de clabLevel



 

firefox
Citar            
MensajeEscrito el 05 Dic 2006 04:19 pm
Cuando tengas una duda o inquietud distinta al tema que toca el post, es mejor que abras un mensaje nuevo, respondiendo a tu pregunta, visita este post.

Saludos

Por wilssonly

Claber

593 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 05 Dic 2006 05:14 pm
Hey Neo buen script, es tuyo? :o
Aunque tengo entendido que el setattribute no funka en ie 6
......(10 min despues)
damn, al fin encontre el enlace de lo que menciono

Por Max

Claber

267 de clabLevel



Genero:Masculino  

Lima - Peru

firefox
Citar            
MensajeEscrito el 06 Dic 2006 03:59 am

Max escribió:

Hey Neo buen script, es tuyo? :o Aunque tengo entendido que el setattribute no funka en ie 6


Si, lo hice en ese instante pero es super sencillo cualquiera puede hacerlo asi que no creas que es algo sorprendente que hice yo y deben ir mis iniciales por derechos de autor y todo eso.

Sobre el tema del setAttribute/removeAttribute, esta función/método es parte oficial del DOM (Document Object Model, un estándar) y casi todas sus especificaciones muy básicas han sido implementadas en todos los navegadores actuales (incluso en IE6), es por eso que SI es posible la creación de javascript no intrusivo de manera multiplataforma y multinavegador.

Saludos.

Por NEO_JP

BOFH

5724 de clabLevel

13 tutoriales
12 articulos

Genero:Masculino   Anime Bloggers Premio_Secretos Team Cristalab

Front-end Developer en Washington, DC

firefox
Citar            
MensajeEscrito el 15 Dic 2006 03:38 am

Por Inyaka

Claber

3176 de clabLevel

9 tutoriales
2 articulos

Genero:Masculino   Desarrollador de GAIA

Programador y fotógrafo

firefox
Citar            
MensajeEscrito el 17 Ene 2007 11:44 pm
Buenas a todos, perdonad que recupere este viejo tema del oldivo, pero resulta que aun no he consegido hacer que salga el dichoso menu en IE6 asi que como ya teneis el CSS ahi arriba aqui os dejo el HTML correspondiente por si hiciera falta.

Ya se que a estas alturas deberia haber mirao algo de javascript pero no es que me sobre el tiempo ultimamente asi que si me podeis echar una mano para que el submenu se vea en IE6 os lo agradeceria.

Gracias de antemano^^

Código :

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<link href="css/estiloCurriculum.css" rel="stylesheet" type="text/css" />
<title>Mi Curriculum Vitae - En Linea</title>
<!--[if IE 6]><style type="text/css">@import "css/estiloCurriculumIE6.css";</style><![endif]-->
</head>

<body>
<div id="contenedor">
  <div id="header">
    <h1>Mi Curriculum Vitae - En Linea</h1>
  </div>
  <div id="navegacion">
    <ul>
       <li><a href="index.html">Inicio </a></li>
       <li><a>Curriculum </a>
       <ul>
          <li><a href="curriculumQuiro.html">Quiromasaje</a></li>
         <li><a href="curriculumAV.html">Audiovisuales</a></li>
         <li><a href="curriculumDG.html">Dise&ntilde;o Grafico</a></li>
         <li><a href="curriculumTodo.html">Completo</a></li>
       </ul>
       </li>
       <li><a href="portafolio.html">Portafolio </a></li>
       <li><a href="contacto.html">Contacto </a></li>
     </ul>
  </div>
  <div id="contenido"> 
...

Por noctam

Claber

197 de clabLevel



 

firefox
Citar            
MensajeEscrito el 18 Ene 2007 12:08 am
anda a la dirección que te di y con el click derecho pones ver código fuente ahí esta el css + html

PD. no es necesario JavaScript, ademas de esto ser mas sencillo, es mas optimo, tanto para la navegación como para la visibilidad

Por Inyaka

Claber

3176 de clabLevel

9 tutoriales
2 articulos

Genero:Masculino   Desarrollador de GAIA

Programador y fotógrafo

firefox
Citar            
MensajeEscrito el 18 Ene 2007 09:51 am
pero para esa solucion que viene en el enlace que me das veo que utiliza tablas para crear el submenu y eso no es valido segun el w3c por eso es que busco otra forma de hacerlo mas correcta. hay alguna otra solucion posible que sea valida por w3c?

Por noctam

Claber

197 de clabLevel



 

firefox
Citar            
MensajeEscrito el 18 Ene 2007 10:15 am
usa tablas dentro de comentarios condicionales para IE osea funciona en cualquier navegador. y es valido de echo la portada de mi pagina es valida y usa ese menu

Por Inyaka

Claber

3176 de clabLevel

9 tutoriales
2 articulos

Genero:Masculino   Desarrollador de GAIA

Programador y fotógrafo

firefox
Citar            
MensajeEscrito el 18 Ene 2007 06:10 pm
vaya pues yo pensaba que no era codigo valido el hacerlo asi. Probaremos entonces

Gracias gente!!

Por noctam

Claber

197 de clabLevel



 

firefox
Citar            
MensajeEscrito el 19 Ene 2007 02:12 am
Oh.. ese código en js que hice.. y creer que con jQuery todo se resumen a 4 líneas..

Por NEO_JP

BOFH

5724 de clabLevel

13 tutoriales
12 articulos

Genero:Masculino   Anime Bloggers Premio_Secretos Team Cristalab

Front-end Developer en Washington, DC

firefox
Citar            
MensajeEscrito el 19 Ene 2007 02:17 am
por favor explícate NEO, que suena interesante

¿los link con esa cosa siguen siendo ?

Código :

<a href=""></a> 

Por Inyaka

Claber

3176 de clabLevel

9 tutoriales
2 articulos

Genero:Masculino   Desarrollador de GAIA

Programador y fotógrafo

firefox
Citar            
MensajeEscrito el 19 Ene 2007 09:31 am
estoo....

de que hablais? no entendi nada

Por noctam

Claber

197 de clabLevel



 

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.