Foros del Web » Creando para Internet » CSS »

Problema con ie6 y clases

Estas en el tema de Problema con ie6 y clases en el foro de CSS en Foros del Web. Hola tengo una tabla dentro de un div y quiero asignar un color segun la clase que sea esa celda. El caso es que como ...
  #1 (permalink)  
Antiguo 13/09/2009, 11:37
 
Fecha de Ingreso: diciembre-2005
Mensajes: 92
Antigüedad: 12 años
Puntos: 0
Problema con ie6 y clases

Hola tengo una tabla dentro de un div y quiero asignar un color segun la clase que sea esa celda. El caso es que como siempre funciona en Firefox sin problemas pero en ie6 no funciona. Os pongo el codigo:
Código:
// os pongo la estructura del html un poco resumida
<body>
	<div id='contenedor'align="center">
                <div id="main">
                     <table id="tablaModelos">
                              <table id="tablaModelos">
                                    <tr>
                                       <td id="tdModelos" class="modelosTLF">
                                       <td id="tdModelos" class="modelosORG">
Como veis lo que quiero es que segun la clase sea de un color u otro.
Código:
// codigo css, os pongo todo lo que he probado
 #tbodyModelos .modelosTLF{...}
 #tbodyModelos td#tdModelos.modelosTLF{ 
 			background-color:#00FF33;
}

//tambien eh intentado el hack del asterisco para que solo lo lea explorer pero no se si lo he hecho bien porque no funciona

* html body div#main #tablaModelos #tbodyModelos td#tdModelos.modelosTLF{ 
 			background-color:#00FF33;

}
// y tambien he probado esto y nada
#tbodyModelos td#tdModelos.modelosTLF{ 
 			background-color:#00FF33;
 			*background-color:#00FF33;
			_background-color:#00FF33;
}
He probado mil conbinaciones y no doy con la solucion. Algun consejo?
  #2 (permalink)  
Antiguo 13/09/2009, 16:39
Avatar de mayid
Colaborador
 
Fecha de Ingreso: marzo-2009
Ubicación: BsAs
Mensajes: 4.014
Antigüedad: 8 años, 8 meses
Puntos: 101
Respuesta: Problema con ie6 y clases

Cita:
<table id="tablaModelos">
<table id="tablaModelos">
En el ejemplo que das, la tabla no esta bien construida. Se repite el inicio, y no cierra.

Y ese no es el unico problema:
Cita:
<td id="tdModelos" class="modelosTLF">
<td id="tdModelos" class="modelosORG
Aqui estas repitiendo dos elementos con un mismo id. Lo cual va a producir error, porque no puede haber dos elementos con un mismo id en una misma pagina. Eso vale con el class name, pero no con los id, que tienen que ser unicos.

Otra cosa:
Cita:
#tbodyModelos .modelosTLF
Aca estas dando la orden para dos elementos: #tbodyModelos y .modelosTLF independientemente de que sean jerarquicos (de que vayan uno adentro de otro).

SI lo que quisieras es organizar esto por jerarquia, tendrias que omitir el espacio intermedio:
#tbodyModelos.modelosTLF
  #3 (permalink)  
Antiguo 14/09/2009, 14:18
 
Fecha de Ingreso: diciembre-2005
Mensajes: 92
Antigüedad: 12 años
Puntos: 0
Respuesta: Problema con ie6 y clases

Hola Mayid, la tabla esta bien construida lo que pasa que copie dos veces la linea table y no copie las sentencias de cierre.

He cambiado lo de los td=tdModelos por td=tdModelos1, td=tdModelos2,td=tdModelos3, etc y sigo recibiendo el mismo problema.

Tambien he probado lo de juntar #tbodyModelos.modelosTLF y nada.

Mi pregunta es, la tabla es generada al pulsar un enlace que genera un evento onclick, el cual llama a la funcion construye tabla que es la que genera la tabla.

Mi pregunta es , esto puede ser la causa de que no vaya en ie6? Existe algun problema entre DOM javascript con CSS y ie6??

No se es ke pruebo mil selectores css, todos van en firefox y ninguno en ie6 y claro no se por donde tirar.

Por ejemplo todos estos selectores css funcionan en firefox e ie6 ni se entera:

.modelosTLF
#tbodyModelos .modelosTLF // #tbodyModelos.modelosTLF
#tbodyModelos td#tdModelos1.modelosTLF //#tbodyModelostd#tdModelos1.modelosTLF
td#tdModelos1.modelosTLF

Que selector usariais vosotros para desarrollar mi ejemplo???
  #4 (permalink)  
Antiguo 14/09/2009, 15:25
 
Fecha de Ingreso: diciembre-2005
Mensajes: 92
Antigüedad: 12 años
Puntos: 0
Respuesta: Problema con ie6 y clases

Hola, ya he encontrado el fallo, estaba asignando la propiedad class cuando deberia de ser className. pero aqui no acaba el problema, como yo asigno el atributo con la sentencia:

objeto.setAttribute('className','modelosTLF'); esto seguia sin funcionar en firefox, aunke en explorer si que funcionaba. Asi que dandele vueltas he conseguido que funcione sin usar setAttribute, usando directamente la propiedad className:

objeto.className='modelosTLF';

Cuando no lo ves no lo ves aunque engas la solucion delante.

Muchas gracias Mayid por la ayuda...
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 21:03.