Foros del Web » Creando para Internet » HTML »

Condicionales para IE6

Estas en el tema de Condicionales para IE6 en el foro de HTML en Foros del Web. Muy buenas!! necesito hacer una cosa en el código. Veréis, tengo un problema con IE6 y un slide hecho en jquery. Uno de estos q ...
  #1 (permalink)  
Antiguo 14/10/2009, 03:27
 
Fecha de Ingreso: octubre-2006
Mensajes: 199
Antigüedad: 11 años, 1 mes
Puntos: 3
Condicionales para IE6

Muy buenas!!

necesito hacer una cosa en el código. Veréis, tengo un problema con IE6 y un slide hecho en jquery. Uno de estos q carga distintas diapositivas y las va pasando. El caso es q IE6 me desmaqueta el sitio con este slide.

Pues bien, me gustaría saber cómo se podría hacer para que para cualquier navegador escriba el código q tengo y que solo para IE6 se escriba otro. Quiero sustituir el slide por una imagen fija en IE6.

No conoczco la sintaxis de los condicionales, así q si sois tan amables de poner un ejemplo os lo agradecería.

Tiene q hacer esto:

Para todos los navegadores excepto IE6, [códigio HTML]
Para IE6 [este otro código HTML]

Muchas gracias!!!
  #2 (permalink)  
Antiguo 14/10/2009, 03:49
 
Fecha de Ingreso: octubre-2006
Mensajes: 199
Antigüedad: 11 años, 1 mes
Puntos: 3
Respuesta: Condicionales para IE6

He puesto el código de la siguiente manera y no me funciona. Si no lo interpreto mal siginifica que si es distinto de IE 6, ejecute el siguiente código...

Código PHP:
<!--[if !IE6]>
    <
script type="text/javascript">
        $(
document).ready(function(){    
            $(
"#slider").easySlider({
                
autotrue
                
continuoustrue
            
});
        });    
    
</script>
<![endif]--> 
  #3 (permalink)  
Antiguo 14/10/2009, 17:31
Avatar de deirdre  
Fecha de Ingreso: mayo-2009
Mensajes: 690
Antigüedad: 8 años, 6 meses
Puntos: 44
Respuesta: Condicionales para IE6

Lo tienes mal.

Si queremos que algo únicamente se muestre en IE 6, es así:
<!--[if IE 6]>
[Aquí va nuestro código]
<![endif]-->

Bye
  #4 (permalink)  
Antiguo 15/10/2009, 16:14
Avatar de jomaruro
Colaborador
 
Fecha de Ingreso: junio-2002
Ubicación: Naboo
Mensajes: 5.442
Antigüedad: 15 años, 5 meses
Puntos: 361
Respuesta: Condicionales para IE6

Hola:

Cita:
Iniciado por deirdre Ver Mensaje
Lo tienes mal.

Si queremos que algo únicamente se muestre en IE 6, es así:
<!--[if IE 6]>
[Aquí va nuestro código]
<![endif]-->
deirdre ¿Has leido bien?

Cita:
Iniciado por MadDunDee Ver Mensaje
Si no lo interpreto mal siginifica que si es distinto de IE 6, ejecute el siguiente código...
MadDunDee, el planteamiento es correcto y lo que sé es que los comentarios condicionales se aplican para el CSS aunque no recuerdo haberlo visto para aplicar Javascript, pero, por supuesto, puedo equivocarme.

Saludos.

  #5 (permalink)  
Antiguo 15/10/2009, 16:54
Avatar de webosiris
Moderador egiptólogo
 
Fecha de Ingreso: febrero-2002
Ubicación: Luxor, Egipto
Mensajes: 10.727
Antigüedad: 15 años, 9 meses
Puntos: 997
Respuesta: Condicionales para IE6

el tema es que los comentarios condicionales son SOLO para IE, así que si pones <!--[if !IE6]> lo que sigue no te lo ejecuta Firefox por ejemplo, para Firefox eso seguiría siendo un comentario como cualquier otro. Para ocultar el slide lo que deberías de hacer es cargar un css solo para ie6 que diga algo como esto:
#slider{display:none}

PD: jomaruro, los CC sirven para todo, sea css, javascript o inclusive html
__________________
Pasamos tus PSD a HTML

Pobre del que lo sabe todo, porque no tiene nada más que aprender ni razón para vivir. -
  #6 (permalink)  
Antiguo 15/10/2009, 17:07
Avatar de alexk
Colaborador
 
Fecha de Ingreso: julio-2009
Ubicación: De vuelta al trono
Mensajes: 1.697
Antigüedad: 8 años, 5 meses
Puntos: 137
Respuesta: Condicionales para IE6

los comentarios condicionales... no es necesario para CSS ya que son eso COMENTARIOS... y es util aplicarlos tanto en JS como en CSS...

Cita:
Para todos los navegadores excepto IE6
te recomendaria
Código html:
Ver original
  1. <!--[if gt IE 6]><![endif]-->
Para versiones superiores a internet explorer 6

Cita:
Para IE6
como te ah puesto deirdre esa es la manera correcta
  #7 (permalink)  
Antiguo 15/10/2009, 17:07
Avatar de deirdre  
Fecha de Ingreso: mayo-2009
Mensajes: 690
Antigüedad: 8 años, 6 meses
Puntos: 44
Respuesta: Condicionales para IE6

Hola jomaruro,

Creo que sí leí bien, pero puedo estar en un error. Los condicionales para ie sólo los lee ie y ningún otro navegador, por eso no se pueden utilizar para que otro navegador actúe de otra forma: es ie el que funciona de otra forma motivado por el comentario condicional.

Tal como dice webosiris, ni ff ni ningún otro browser harán nada con un condicional, salvo ignorarlo (igual que cualquier otro comentario).

Y, efectivamente, sirven para todo. En una ocasión construí una página completa para ie6 (incluyendo sus propios js) dentro de un condicional, y todo ello dentro de una página que se veía de otra forma en todos los restantes navegadores.

Bye
  #8 (permalink)  
Antiguo 15/10/2009, 17:12
Avatar de Mikmoro
Colaborador
 
Fecha de Ingreso: octubre-2006
Ubicación: K-pax
Mensajes: 7.228
Antigüedad: 11 años, 2 meses
Puntos: 279
Respuesta: Condicionales para IE6

Cita:
Iniciado por deirdre Ver Mensaje
Lo tienes mal.

Si queremos que algo únicamente se muestre en IE 6, es así:
<!--[if IE 6]>
[Aquí va nuestro código]
<![endif]-->
Imagino que la réplica de jomaruro ha sido a que dices "lo tienes mal. Si queremos que IE6 lea [...]"
cuando en realidad la consulta era "para que NO lo lea IE6", tal y como responde webosiris.

Es mi impresión.
__________________
Visita mi nueva web idplus.org
  #9 (permalink)  
Antiguo 15/10/2009, 17:15
Avatar de alexk
Colaborador
 
Fecha de Ingreso: julio-2009
Ubicación: De vuelta al trono
Mensajes: 1.697
Antigüedad: 8 años, 5 meses
Puntos: 137
Respuesta: Condicionales para IE6

pero ta bien por parte ya que MadDunDee hizo 2 consultas

Cita:
Para todos los navegadores excepto IE6, [códigio HTML]
Para IE6 [este otro código HTML]
  #10 (permalink)  
Antiguo 15/10/2009, 17:25
Avatar de deirdre  
Fecha de Ingreso: mayo-2009
Mensajes: 690
Antigüedad: 8 años, 6 meses
Puntos: 44
Respuesta: Condicionales para IE6

Cita:
Iniciado por Mikmoro Ver Mensaje
Imagino que la réplica de jomaruro ha sido a que dices "lo tienes mal. Si queremos que IE6 lea [...]"
cuando en realidad la consulta era "para que NO lo lea IE6", tal y como responde webosiris.
Va a ser que se me escapó ese matiz entre mis empobrecidas sinapsis neuronales...

Efectivamente, no lo muestras con un display: none.

Bye
  #11 (permalink)  
Antiguo 15/10/2009, 17:39
Avatar de Mikmoro
Colaborador
 
Fecha de Ingreso: octubre-2006
Ubicación: K-pax
Mensajes: 7.228
Antigüedad: 11 años, 2 meses
Puntos: 279
Respuesta: Condicionales para IE6

Cita:
Iniciado por deirdre Ver Mensaje
Va a ser que se me escapó ese matiz entre mis empobrecidas sinapsis neuronales...
O la hora
__________________
Visita mi nueva web idplus.org
  #12 (permalink)  
Antiguo 15/10/2009, 17:44
Avatar de jomaruro
Colaborador
 
Fecha de Ingreso: junio-2002
Ubicación: Naboo
Mensajes: 5.442
Antigüedad: 15 años, 5 meses
Puntos: 361
Respuesta: Condicionales para IE6

Cita:
Iniciado por deirdre Ver Mensaje
Va a ser que se me escapó ese matiz entre mis empobrecidas sinapsis neuronales...
Creo que las neuronas nos están fallando a más de uno, vamos a ver si me explico:

<!--[if !IE]>
[Aquí va nuestro código]
<![endif]-->

1.- Estas tres líneas, para todos los navegadores menos IE (sin distinción de versiones) es un comentario ¿no? entonces no se ejecutarán.
2.- IE busca después del inicio del comentario (<!--) y encuentra un cc que tampoco se ejecutará porqué así lo indica la instrucción if !IE.

Conclusión, aunque leyera mal la instrucción if, deirdre tiene razón. Sin embargo, el planteamiento de MadDunDee sería válido para todo IE que no sea la versión 6.

¿Nos aclaramos ya o nos vamos a la cama?

Saludos.

  #13 (permalink)  
Antiguo 15/10/2009, 17:50
Avatar de Mikmoro
Colaborador
 
Fecha de Ingreso: octubre-2006
Ubicación: K-pax
Mensajes: 7.228
Antigüedad: 11 años, 2 meses
Puntos: 279
Respuesta: Condicionales para IE6

Pero en tu argumentación (y la cuestión desde el inicio), la clave es: funciona un comentario condicional de negación (if not IE), como pones?

<!--[if !IE]>
[Aquí va nuestro código]
<![endif]-->
__________________
Visita mi nueva web idplus.org
  #14 (permalink)  
Antiguo 15/10/2009, 17:50
Avatar de deirdre  
Fecha de Ingreso: mayo-2009
Mensajes: 690
Antigüedad: 8 años, 6 meses
Puntos: 44
Respuesta: Condicionales para IE6

Yo me aclaro (o creo que me aclaro ??) y muy pronto, también a la cama, a pelear con el insomnio
  #15 (permalink)  
Antiguo 15/10/2009, 17:57
Avatar de alexk
Colaborador
 
Fecha de Ingreso: julio-2009
Ubicación: De vuelta al trono
Mensajes: 1.697
Antigüedad: 8 años, 5 meses
Puntos: 137
Respuesta: Condicionales para IE6

aver... #1 ok?

Cita:
Para todos los navegadores excepto IE6,
y creo que lo que puse en el #6 que nadie lo vio jeje
deberia funcionar en teoria...
  #16 (permalink)  
Antiguo 15/10/2009, 18:00
Avatar de Mikmoro
Colaborador
 
Fecha de Ingreso: octubre-2006
Ubicación: K-pax
Mensajes: 7.228
Antigüedad: 11 años, 2 meses
Puntos: 279
Respuesta: Condicionales para IE6

Cita:
Iniciado por alexk Ver Mensaje
aver... #1 ok?
y creo que lo que puse en el #6 que nadie lo vio jeje
deberia funcionar en teoria...


Ahí dices:

<!--[if gt IE 6]><![endif]-->
es decir
<!--[if > IE 6]><![endif]-->
es decir
Si mayor que IE6.

¿Por qué eso querría decir "si no IE6"? Eso será para IE7 o , pero no para chrome.
__________________
Visita mi nueva web idplus.org
  #17 (permalink)  
Antiguo 15/10/2009, 18:05
Avatar de deirdre  
Fecha de Ingreso: mayo-2009
Mensajes: 690
Antigüedad: 8 años, 6 meses
Puntos: 44
Respuesta: Condicionales para IE6

Hola alexk

Bueno, sí... pero para todos los navegadores iexplorer (actualmente el 7 y el 8). Eso no le afecta a los otros browsers -no ie-.

Bye

___________

Pues eso, lo que dice Mik.
  #18 (permalink)  
Antiguo 15/10/2009, 18:10
Avatar de jomaruro
Colaborador
 
Fecha de Ingreso: junio-2002
Ubicación: Naboo
Mensajes: 5.442
Antigüedad: 15 años, 5 meses
Puntos: 361
Respuesta: Condicionales para IE6

Cita:
Iniciado por Mikmoro Ver Mensaje
Pero en tu argumentación (y la cuestión desde el inicio), la clave es: funciona un comentario condicional de negación (if not IE), como pones?

<!--[if !IE]>
[Aquí va nuestro código]
<![endif]-->
Al leer la instrucción if, en IE no se ejecutaría el cc porque no es para él.
Los demás navegadores "leerían" el cc como un comentario por lo que tampoco se ejecutaría.

Saludos.

  #19 (permalink)  
Antiguo 15/10/2009, 18:13
Avatar de deirdre  
Fecha de Ingreso: mayo-2009
Mensajes: 690
Antigüedad: 8 años, 6 meses
Puntos: 44
Respuesta: Condicionales para IE6

Y sirve para algo, además de para marearnos?
  #20 (permalink)  
Antiguo 15/10/2009, 18:15
Avatar de jomaruro
Colaborador
 
Fecha de Ingreso: junio-2002
Ubicación: Naboo
Mensajes: 5.442
Antigüedad: 15 años, 5 meses
Puntos: 361
Respuesta: Condicionales para IE6

Y aún encima andamos a trompicones

Me voy para la cama que me caigo de

Saludos.



P.D.: Me encantan estos debates constructivos
  #21 (permalink)  
Antiguo 15/10/2009, 18:25
Avatar de deirdre  
Fecha de Ingreso: mayo-2009
Mensajes: 690
Antigüedad: 8 años, 6 meses
Puntos: 44
Respuesta: Condicionales para IE6

Sí, son bonitos (además, en algunas pocas ocasiones, tienen aspecto de chat de los buenos).
_____________

Comentario jocoso: Voy a ver si fundo mi ampolleta y vamos todos pareciendo fantasmas.
  #22 (permalink)  
Antiguo 15/10/2009, 19:14
Colaborador
 
Fecha de Ingreso: junio-2007
Mensajes: 5.798
Antigüedad: 10 años, 6 meses
Puntos: 538
Respuesta: Condicionales para IE6

Cita:
Iniciado por MadDunDee Ver Mensaje
Tiene q hacer esto:
Para todos los navegadores excepto IE6, [códigio HTML]
Para IE6 [este otro código HTML]

Muchas gracias!!!
Cita:
Iniciado por webosiris Ver Mensaje
el tema es que los comentarios condicionales son SOLO para IE, así que si pones <!--[if !IE6]> ...
De acuerdo Ernesto. Los cc sólo para ie

Para MadDunCee
Si mezclamos un poco de imaginación para que parezca que es aunque a nivel de código no sea y añadimos una pizca de "anticomentarios condicionales" que sería algo así como un no-cumpleaños que todos entienden y celebran menos ie:
css.devillasbuenas.es/anti_cc.html
¿cumple los 2 requisitos de MadD.?

Se agraden comentarios sobre su funcionamiento y otros aspectos. Probado en vi$ta: ie6 e ie8 en ietester, ie7, opera, ff 3.5.3, chrome y safari
__________________
Por una web con mucho estilo
+++ CUENTA ABANDONADA. ¿la quieres? +++
  #23 (permalink)  
Antiguo 16/10/2009, 06:22
Avatar de deirdre  
Fecha de Ingreso: mayo-2009
Mensajes: 690
Antigüedad: 8 años, 6 meses
Puntos: 44
Respuesta: Condicionales para IE6

Wow, fantástico: genial ejercicio de uso de condicionales y anticondicionales.
  #24 (permalink)  
Antiguo 16/10/2009, 09:12
Avatar de Mikmoro
Colaborador
 
Fecha de Ingreso: octubre-2006
Ubicación: K-pax
Mensajes: 7.228
Antigüedad: 11 años, 2 meses
Puntos: 279
Respuesta: Condicionales para IE6

Sí, fantástica jugada, kseso?, peeeerooo....

Sabiendo como sabemos que el condicional negativo no sirve de nada (if Not IE, o if !IE), porque no funciona, y sabiendo también que en realidad ese comentario funciona igual si lo ponemos como:

<!--[if miabuelo]>-->
<li><a href="#">Qué buen navegador usas</a></li>
<!--<![endif]-->

la cuestión es: ¿por qué? ¿dónde está la clave?

Mirando un poco descubrimos que la clave está aquí:

<!--[if miabuelo]>-->
<li><a href="#">Qué buen navegador usas</a></li>
<!--<![endif]-->

que no es lo normal de un comentario condicional, pero... ¿por qué?
No es una pregunta de concurso, es que no lo tengo nada claro, porque eso es un cierre de comentario, no una apertura.

A ver si alguien nos ilustra o lo descubrimos entre todos.
__________________
Visita mi nueva web idplus.org
  #25 (permalink)  
Antiguo 16/10/2009, 09:46
Colaborador
 
Fecha de Ingreso: junio-2007
Mensajes: 5.798
Antigüedad: 10 años, 6 meses
Puntos: 538
Respuesta: Condicionales para IE6

De http://haslayout.net/condcom
El código de un no-cc, donde HTML sería el código contenido en él:
Cita:
<!--[if !IE]>--> HTML <!--<![endif]-->
se "traduce" cómo:
Cita:
<!--[if !condition]><![IGNORE[--><![IGNORE[]]> HTML <!--<![endif]-->
Los navegadores no ie lo ejecutan como:
Código html:
Ver original
  1. <!--                          --><![IGNORE[]]> HTML <!--         -->
y por lo tanto, el código HTML es interpretado y mostrado su resultado en pantalla.


Para los ie donde la " if !condition " no coincide con la version (si es distinta a " if !IE ": todos los ie)
Código html:
Ver original
  1. <!--                          --><![IGNORE[]]> HTML <!--         -->
y por lo tanto, el código HTML es interpretado y mostrado su resultado en pantalla.


Y en aquellas versiones que cumplen la condición:
Código html:
Ver original
  1. <!--                                                             -->

Pero la información original y en inglés, de donde saqué el código para mi ejemplo, está en el enlace de arriba.

Un saludo
__________________
Por una web con mucho estilo
+++ CUENTA ABANDONADA. ¿la quieres? +++
  #26 (permalink)  
Antiguo 16/10/2009, 09:51
Avatar de Mikmoro
Colaborador
 
Fecha de Ingreso: octubre-2006
Ubicación: K-pax
Mensajes: 7.228
Antigüedad: 11 años, 2 meses
Puntos: 279
Respuesta: Condicionales para IE6

Pues lo siento pero si en esa fuente están usando el ! como negación en <!--[if !condition]>, se patinan, porque como he puesto en el ejemplo de <!--[if miabuelo]>-->, la negación no tiene nada que ver.
La cosa es que al poner el ! o cualquier otra cosa, nadie cumple la condición, sin más.
Pero eso no me aclara el resto ni de lejos (a mi al menos, que soy durillo de mollera).
__________________
Visita mi nueva web idplus.org

Última edición por Mikmoro; 16/10/2009 a las 10:03 Razón: Corrección
  #27 (permalink)  
Antiguo 16/10/2009, 09:58
Avatar de Mikmoro
Colaborador
 
Fecha de Ingreso: octubre-2006
Ubicación: K-pax
Mensajes: 7.228
Antigüedad: 11 años, 2 meses
Puntos: 279
Respuesta: Condicionales para IE6

Mi duda:

<!--[if miabuelo]>--> eso dice que empieza un comentario y
<!--[if miabuelo]>--> termina el comentario, luego para todos los navegadores es como si no hubiera ocurrido nada.

Para IE, <!--[if miabuelo]>--> como dentro del comentario hay un [if...], se dispone a interpretarlo por que él sí lo entiende.

Pero <!--[if miabuelo]>--> como no coincide con el patrón no interpreta nada, ni siquiera el cierre del comentario -->

Al haber un cierre del if <!--<![endif]--> como abre comentario, los demás no ven nada.

Como aparece <!--<![endif]--> un cierre real endif, IE entiende que ahí termina el condicional que debería interpretar pero no puede porque no coincide con el patrón.

Diría que es por eso por lo que funciona. La conclusión sería que cuando IE encuentra un if en un cc cuyo patrón no coincide con él, ignora lo que haya dentro, incluído un cierre de comentario -->, y se ve obligado a esperar su endif aunque el patrón no coincidiera con él.

Es lo más aproximado que encuentro.

Y como funciona con cualquier cosa, hasta lo podemos castellanizar:

<!--[if noIE]>--> HTML <!--<![endif]-->

__________________
Visita mi nueva web idplus.org
  #28 (permalink)  
Antiguo 16/10/2009, 10:28
Colaborador
 
Fecha de Ingreso: junio-2007
Mensajes: 5.798
Antigüedad: 10 años, 6 meses
Puntos: 538
Respuesta: Condicionales para IE6


Quedo más convencido con tu explicación que con la que me "saqué" de la página enlazada.
Lo que ocurría con los no-ie lo tenía claro (y ya hubo un tema donde lo comentamos, ¿recuerdas?) y lo veía de esa manera, lo que no acertaba a explicarme era lo que ocurría con los ie.

Y dejando de jugar como gato con ovillo
¿Le habremos dado a MadDunDee la respuesta que buscaba?

Un saludo
__________________
Por una web con mucho estilo
+++ CUENTA ABANDONADA. ¿la quieres? +++
  #29 (permalink)  
Antiguo 16/10/2009, 10:45
Avatar de Mikmoro
Colaborador
 
Fecha de Ingreso: octubre-2006
Ubicación: K-pax
Mensajes: 7.228
Antigüedad: 11 años, 2 meses
Puntos: 279
Respuesta: Condicionales para IE6

Sí, ahora recuerdo aquel tema

A ver si vemos más opiniones y alguien le encuentra errores, otras explicaciones, etcétera, porque si no creo que has dado con algo importante (entre comillas, claro), y con el ejemplo que has hecho y la "castellanización", a falta de más enlaces que digan algo sobre "if noIE" hemos hallado la explicación de un recurso y acertado con la forma de usar comentarios condicionales inversos, o "[si no es IE]"

¿Será muy útil? no creo, pero sí entretenido, ¿no?
__________________
Visita mi nueva web idplus.org
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 12:23.