Contenido

Detecta el navegador del usuario mediante HTML

4 Oct

+ 3

Actualmente tenemos tres formas de detectar o condicionar nuestra aplicación dependiendo del navegador con el que nos visita el usuario, el CSS, que mediante hacks podemos hacer que se apliquen unos estilos para unos navegadores u otros para los restantes, mediante javascript intentando acceder a elementos del DOM disponibles solo para algunos navegadores, condicionando la ejecución del script o directamente desde el servidor, mostrando una página para cada navegador.

html20hacks-snapshot.png

Pero desde la aparición de nuevas versiones de HTML HTML 2.0, podemos condicionar esta problemática desde el propio HTML.

<img
   /src\x00="ie.gif"
 /''src\x00="firefox1_5.gif"
 /''src="firefox2_0.gif"
 /""src="gecko_others.gif"
   "s\x00rc="safari2.gif"
   "src="safari3.gif"
  ""src="konqueror.gif"
    src\x00="w3m.gif"
    src\x0c="opera.gif"
    src="others.gif"
    src="lynx.gif"
/>

De esta forma podemos detectar Firefox 2.0, Firefox 1.5, otros motores Gecko, Safari2, Safari3, Opera, IE, W3m, Lynx,…

[Demo]

Debido a que no hay un estandard respetado por todos los navegadores, no se puede decir que haya una forma correcta para detectar el navegador de usuario, es más todas lo son y todas nos ayudan a detectar el navegador en cada una de las capas que componen una página web.

  • «Pero con la aparición de nuevas versiones de HTML, la HTML 2.0»

    Creo que HTML 2.0 es una version un poco vieja de html en realidad y el autor se refiere a que solamente con elementos del html de aquella epoca podes filtrar entre un navegador y otro.
    Me parece genial, aunque no le veo la utilidad en el caso de la IMG.
    Tal vez si se pudiera hacer lo mismo para el width de una table o para una class, estaria interesante.
    Me imagino poniendo una clase en el body que indique el navegador para el CSS.

  • Ostras! Que fallo xDDD Me confundí con xHTML xDDD No tengo perdón. 🙁

    Muchas gracias Martin, ya está corregido

  • A mi no me funciono 🙁

    Mi Safari 3 es reconocido como IE :s

    Maldito parser corregido de Webkit :s

Comentar

#

Me reservo el derecho de eliminar y/o modificar los comentarios que contengan lenguaje inapropiado, spam u otras conductas no apropiadas en una comunidad civilizada. Si tu comentario no aparece, puede ser que akismet lo haya capturado, cada día lo reviso y lo coloco en su lugar. Siento las molestias.