Foros del Web » Creando para Internet » CSS »

Evitar que una propiedad se aplique en IE6

Estas en el tema de Evitar que una propiedad se aplique en IE6 en el foro de CSS en Foros del Web. Hola y antes de nada gracias por leer este mensaje. Vereis, estoy modificando un archivo css en donde vienen todas las reglas que se aplican ...
  #1 (permalink)  
Antiguo 28/07/2011, 02:26
 
Fecha de Ingreso: febrero-2002
Mensajes: 351
Antigüedad: 22 años, 3 meses
Puntos: 19
Evitar que una propiedad se aplique en IE6

Hola y antes de nada gracias por leer este mensaje.

Vereis, estoy modificando un archivo css en donde vienen todas las reglas que se aplican a una página web.

El problema que tengo es que al modificar algunos anchos o algunas distancias, en Internet Explorer 6 se descuadra todo. En los demás navegadores no ocurre.

Bien, hasta ahora lo estaba solucionando de una manera sencilla, con el hack siguiente. Pongo un ejemplo:

Código:
.idTabs {
	_margin-top: 1em;   <- esta regla se aplicaría a IE 6
	margin-top: 0;  <- esta regla se aplicaría al resto de navegadores
}
Bien, pero ¿qué ocurre si necesito especificar una regla no especificada en el archivo CSS?. Pongo un ejemplo:

Código:
.idTabs {
	_margin-top: 1em;
	margin-top: 0;
	padding-top: 8px  <- esta regla es nueva
}
Pues que esa regla se aplica en todos los navegadores y no se como especificar que esa regla no se aplique a Interner Explorer 6.
¿Cómo se que valor tiene una regla que no está especificada en el archivo CSS?, ¿tendría que especificarlo como padding-top: 0, o me valdría con establecer un _padding-top: auto o cómo conseguir lo que necesito hacer?

Muchas gracias por anticipado y un cordial saludo.

POSTMENSAJE: No me vale el crear dos hojas de estilo por separada, una para Internet Explorer 6 y otra para el resto de navegadores. Por lo menos, por ahora no me lo planteo porque la aplicación web que estoy utilizando no lo permite.
  #2 (permalink)  
Antiguo 28/07/2011, 04:17
Avatar de IsaBelM
Colaborador
 
Fecha de Ingreso: junio-2008
Mensajes: 5.032
Antigüedad: 15 años, 10 meses
Puntos: 1012
Respuesta: Evitar que una propiedad se aplique en IE6

para eso tienes los comentarios condicionales
  #3 (permalink)  
Antiguo 28/07/2011, 04:34
Avatar de Batan  
Fecha de Ingreso: septiembre-2010
Ubicación: Madrid
Mensajes: 408
Antigüedad: 13 años, 7 meses
Puntos: 63
Respuesta: Evitar que una propiedad se aplique en IE6

Y si eso no te vale el comentario que daba AlZuwaga por medio de programación tambien te podria vale.
http://www.forosdelweb.com/f53/puede...es-css-392675/



A mi me hizo gracias por que no se ocurrio nunca. Pero es una solución.
  #4 (permalink)  
Antiguo 28/07/2011, 05:20
 
Fecha de Ingreso: febrero-2002
Mensajes: 351
Antigüedad: 22 años, 3 meses
Puntos: 19
Respuesta: Evitar que una propiedad se aplique en IE6

Muchas gracias por vuestras respuestan tan rápidas IsaBelM y Batan.

Pero me da que ninguno de las soluciones que me dais la puedo utilizar, en este caso.

Por una parte, los comentarios condicionales no puedo usarlos, porque como he especificado en mi POSTMENSAJE, no puedo declarar dos hojas de estilo distintas. Tendría que tocar código y aunque pueda parecer una tontería de una línea, en el foro oficial de esta aplicación hay bastantes usuarios intentándolo y la mayoría muchos han decidido no dar soporte a Internet Explorer 6 del lio que hay que montar.

Por eso preguntaba por algo más rápido. Algún hack que no conociera, pero por lo que veo está la cosa complicada.

Por otra parte, tampoco me sirve el comentario de AlZuwaga, puesto que al realizar ese cambio en el código, lo utilizarían todos los navegadores. Y como digo, el problema sólo está en Internet Explorer 6. Si declaro una variable que me cambie el alto de una caja por poner un ejemplo, ese cambio se vería reflejado en todos los navegadores, y yo lo único que quiero es que al realizar un cambio en el CSS Internet Explorer no lo tenga en cuenta.

Miles de gracias de todas formas por vuestras sugerencias, habéis sido muy amables. Ya veré finalmente que decisión tomo con este asunto.

Un saludo.
  #5 (permalink)  
Antiguo 28/07/2011, 05:26
Avatar de Batan  
Fecha de Ingreso: septiembre-2010
Ubicación: Madrid
Mensajes: 408
Antigüedad: 13 años, 7 meses
Puntos: 63
Respuesta: Evitar que una propiedad se aplique en IE6

Si que puedes, el comentario de ALZuwaga solo era un ejemplo de que si se puede.

Ahora si sabes un poco de programación, puedes hacer algo como esto

Código CSS:
Ver original
  1. <%
  2. response.ContentType = "text/css" /* IMPORTANTE, sino no anda */
  3. %>
  4. .idTabs {
  5.     _margin-top: 1em;
  6.     margin-top: 0;
  7. <%
  8. nav = Request.ServerVariables("HTTP_USER_AGENT")
  9.       if nav = "internet explorer 6" then
  10. %>
  11.         padding-top: 8px  <- esta regla es nueva}
  12. <%
  13. end if
  14. %>


Es un ejemplo rápido. Saludos
  #6 (permalink)  
Antiguo 10/09/2011, 06:42
Avatar de bananabalance  
Fecha de Ingreso: julio-2011
Ubicación: Madrid
Mensajes: 51
Antigüedad: 12 años, 9 meses
Puntos: 11
Respuesta: Evitar que una propiedad se aplique en IE6

Buen aporte Batan, el uso de programación del lado del servidor para generar distintas versiones del css.
__________________
Posicionamiento Web en buscadores
Los Chocolates te apasionan!!!

Etiquetas: ancho, ie6, propiedad
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:48.