Categorías
Webmaster

Uso de target _blank en XHTML 1.0 Strict y XHTML 1.1

Como usar target blank en documentos HXTML 1.0 Strict y XHTML 1.1, y pasar la validación W3C

Valid XHTML 1.0 Valid XHTML 1.1

En XHTML, el atributo target se usa para especificar el destino de los vínculos en las etiquetas <a> o <area> de documentos del tipo XHTML Frameset o HXTML 1.0 transitional, las opciones válidas son:

  • target="_blank": Abre el enlace en una nueva ventana
  • target="_top": Abre el enlace al inicio de la misma ventana, escapando incluso de los frames.
  • target="_self": Abre el enlace en el mismo frame….

Como usar target blank en documentos HXTML 1.0 Strict y XHTML 1.1, y pasar la validación W3C

Valid XHTML 1.0 Valid XHTML 1.1

En XHTML, el atributo target se usa para especificar el destino de los vínculos en las etiquetas <a> o <area> de documentos del tipo XHTML Frameset o HXTML 1.0 transitional, las opciones válidas son:

  • target="_blank" – Abre el enlace en una nueva ventana
  • target="_top" – Abre el enlace al inicio de la misma ventana, escapando incluso de los frames.
  • target="_self" – Abre el enlace en el mismo frame, si el atributo TARGET no se especifica, esta es la opción por defecto.
  • target="_parent" – Abre el enlace en el primer frame de un documentos con frames.
  • target="NombreDelFrame" – Abre el enlace en el frame con el nombre especificado.
  • target="new" – Abre enlaces en una nueva ventana, sin embargo este atributo NO ES VALIDO y no es soportado por todos los navegadores, no se recomienda su uso, en su lugar se debe usar _blank.

XHTML Strict y target="_blank"

En este tipo de documento el atributo TARGET no es válido en ninguna etiqueta, pues los TARGETS son para uso exclusivo de los doumentos con frames, si colocamos TARGET en un documento del tipo XHTML 1.0 Strict o XHTML 1.1, nuestra página no pasará la Validación XHTML en la W3C.

Generalmente, cuando visitas los foros en busca de una alternativa, siempre te dicen que no uses el atributo TARGET o bien, que uses XHTML 1.0 Transitional (en el que si están permitidos los targets y otros atributos o tag no válidos); sin embargo, esto no es una solución ni resuelve nada.

La solución no es tan difícil, de hecho es simple, se usa JavaScript y funciona en todos los navegadores:

  1. Para elementos individuales, usaremos el evento onclick de la siguiente forma:
    onclick="this.target='_blank'"
    
    Ejemplo de aplicación:
    <a href="https://www.dasumo.com/" onclick="this.target='_blank'">Enlace</a>
  2. Para aplicar a TODOS los enlaces de la página, escribí una pequeña función JavaScript:
    Nota: Colocar la función dentro de las etiquetas <head> y </head>:
    <script type="text/javascript"><!--
    function enlaceBlank() {
    	for(var i = 0; document.links[i]; i++) {
    		document.links[i].target = '_blank';
    	}
    }
    //--></script>

    Podemos cargar la función en onload dentro de la etiqueta <body>:

    <body onload="enlaceBlank()">

    O bien, podemos llamar a la función desde el final de nuestra página antes de cerrar </body>:

    <script type="text/javascript"><!--
    enlaceBlank();
    //--></script>
    </body>
    </html>

Saludos a todos y si tienen cualquier duda pregunten; tambien los invito a visitar la sección de Programación Web en ForoFix, en donde seguramente encontrarán temas interesantes.

Desde México, Dasumo.

5 respuestas a «Uso de target _blank en XHTML 1.0 Strict y XHTML 1.1»

Hola Luis,

Lo que pasa es que ese es un objeto flash y no HTML puro, es casi seguro que la configuración del objeto flash cambia el TARGET a TOP, mira en las opciones del programa a ver si tiene para modificar esa opción pasandola como PARAMETRO, porque cambiarlo en los enlaces del JavaScript que genera el objeto flash, al parecer no funciona.

Un saludo.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *