Pregunta

Incluso siendo HTML5 el camino a seguir para HTML, tenemos dos opciones como desarrolladores:Sintaxis XHTML y sintaxis HTML.He estado usando XHTML como mi tipo de documento principal durante aproximadamente 5 años, así que me siento muy cómodo con él.

Pero mi pregunta es que se permitirá una sintaxis no XML, ¿hay alguna razón para seguir con una sintaxis XML válida?¿Se gana algo con uno sobre otro, además de preferencia (compatibilidad, etc.)?Personalmente me sentiré un poco sucio al volver a no cerrar etiquetas.
Es algo natural para mí ahora, pero ¿obtendría algo volviendo a la sintaxis HTML?

Actualizar: Supongo que mi verdadera pregunta es ¿hay alguna razón para cambiar de sintaxis XHTML a HTML?He estado usando XHTML durante años y no estoy seguro de si hay algún motivo para volver a hacerlo.¿Compatibilidad del navegador (IE a veces era complicado con el tipo mime aplicación/xhtml+xml), etc.?

¿Fue útil?

Solución

Supongo que mi verdadera pregunta es ¿hay una razón para cambiar de XHTML a sintaxis HTML?He estado usando XHTML durante años y no estoy seguro de si hay una razón para volver.Compatibilidad del navegador (es decir, a veces era finiky con la aplicación/xhtml+xml de tipo mime), etc.?

Como se mencionó en una respuesta anterior, text/html se analiza como HTML y application/xhtml+xml se analiza como XML.Por lo tanto, debes utilizar la sintaxis que coincida con el tipo MIME que utilizas.

Si ahora estás sirviendo text/html pero usando la sintaxis XHTML, entonces debes arreglar tu contenido para usar la sintaxis HTML5.Puede que ya estés cerca, ya que HTML5 permite el XMLesque /> sintaxis de elemento vacío para elementos vacíos (elementos que siempre están vacíos, como img y br).

Si ahora estás usando application/xhtml+xml, el soporte de IE sería una razón para cambiar a text/html y la sintaxis HTML si le interesa admitir IE.

Intentar escribir documentos políglotas que sean HTML5 y XHTML5 correctos (para servir diferentes tipos MIME, diferentes navegadores con los mismos bytes de carga útil) es más difícil de lo que parece a primera vista y no vale la pena.

Otros consejos

  

La ventaja de la sintaxis XHTML es que es XML. Se puede analizar fácilmente, comprendido y manipulado. La sintaxis HTML es mucho más difícil para los clientes a trabajar con ellos.

Tonterías! La especificación HTML5 define cómo analizar HTML de una manera que es relativamente fácil de implementar, y off-the-shelf se están desarrollando programas de análisis que se puede integrar fácilmente en cadenas de herramientas. Es incluso posible que un analizador HTML5 para ser integrado en una cadena de herramientas de XML en lugar de un analizador XML.

Pero lo que hay que entender es que en la práctica, lo más probable el uso de HTML de todos modos, incluso si usted piensa que está utilizando XHTML basado en el DOCTYPE. Si su contenido está siendo servido como text / html, en lugar de aplicación / xhtml + xml u otro tipo MIME XML, entonces su contenido será procesada como HTML.

Con HTML5, puede optar por utilizar la sintaxis sólo HTML, lo que significa que sólo es compatible con ser servido y procesado como text / html no es XML bien formado. O utilizar la sintaxis XHTML-solamente, lo que significa que es se XML bien formado, pero utiliza funciones de XML que no son compatibles con HTML. O bien, puede escribir un documento Políglota, que está conforme y compatible con HTML y XHTML procesamiento (En principio, esto es conceptualmente similar a escribir XHTML 1.0 compatible con las normas Apéndice C).

El proyecto de HTML5 es muy claro acerca de qué sintaxis conviene utilizar:

  • Utilice la sintaxis HTML al enviar páginas como text / html
  • Utilice la sintaxis XHTML al enviar páginas como application / xhtml + xml

Referencia: http://dev.w3.org/ HTML5 / spec / overview.html #-autores utilizando XHTML-

Cuando utilice XHTML, puede mezclarlo con otro contenido XML, p.e.MathML, SVG o su propio formato propietario, simplemente cambiando el espacio de nombres en algún momento.Además, puedes incrustar XHTML dentro de otros documentos XML.

(bueno, en realidad MathML y ​​SVG también se pueden usar en HTML5 que no sea XML, pero están en mayúsculas y minúsculas especiales)

No debe usar XHTML para servir contenido en la web (o cualquier red que incluye clientes de Internet Explorer); ver Envío de XHTML como text / html Considerado perjudicial para la justificación completa.

La mayor parte de los beneficios de XHTML tienen no se materializó . Aunque yo no lo recomendaría para nuevos proyectos, XHTML servido como text / html parece ser bastante manejable y generalizado, siempre y cuando usted sigue la directrices de compatibilidad . Es probable que no vale la pena cambiar ninguna proyectos significativos de nuevo a la serialización HTML.

La ventaja de la sintaxis XHTML es que es XML. Se puede analizar fácilmente, comprendido y manipulado. La sintaxis HTML es mucho más difícil para los clientes a trabajar con ellos.

Sin embargo, en última instancia, es sólo una cuestión de sintaxis. Ambas formas están permitidos para HTML5.

  

Actualización: Creo que mi verdadera pregunta es ¿hay alguna razón para cambiar de XHTML para la sintaxis HTML? He estado usando XHTML durante años y no estoy seguro si hay una razón para cambiar de nuevo. Compatibilidad del navegador (IE fue finiky veces con el / xhtml + xml tipo MIME de la aplicación), etc?

Hay que tener en cuenta dos cosas realmente. El idioma que está escribiendo y el idioma que está enviando. La Web se define por 3 componentes:

  • URI
  • Un recurso - Markup Language (documento)
  • Un protocolo - HTTP (herramienta para la gestión de espacio de información)

Puede escribir un documento con una sintaxis XML en el escritorio como el uso de XHTML. En este entorno específico, si se le da la extensión ".xhtml" al nombre de archivo y abrirlo con el navegador local, será analizado como XML. Si se le da la extensión ".html" al nombre del archivo, se analiza como HTML. Básicamente en su herramienta de autoría, es XML, pero esto ya no importa, una vez que lo procesa con una herramienta.

En la Web, el ressource identificado por un URI será enviado con un tipo MIME específico, la mayoría de las veces, estos días, la gente está utilizando text / html. El MIME define cómo el cliente (navegador, robot de búsqueda del motor, etc.) deben procesar el documento. Si está utilizando una sintaxis XML, pero lo envía con text / html , el documento se hará por medio de un analizador de HTML.

Para enviar sus documentos a través del cable como XML, tiene que configurar el servidor para enviarlo como application / xhtml + xml. (Nota:. Que IE8 y versiones anteriores no entienden lo que es application / xhtml + xml y propondrán el menú guardar)

El HTML 5 Resumen modelo ha sido diseñado de manera que se puede casi escribirlo con una sintaxis HTML o una sintaxis XML en text / html. Casi, porque incluso si se escribe con una sintaxis XML (cerrando los elementos vacíos, cita alrededor de atributos, etc.) obtendrá en problemas para las páginas complejas que están llamando secuencias de comandos y los espacios de nombres, debido a la analizadores XML y HTML analizadores mucho camino con ellos.

Me gusta XHTML, porque me obliga a escribir una buena página. Hay muchas ventajas a XHTML, ya que los navegadores analizarlo más rápido, y hay que hacer un formato XML en lugar de HTML. Además, es necesario para servir a una página con el tipo MIME application/xhtml+xml o no obtiene ninguna de las ventajas de la X. El único problema con XHTML es que no se mostrará en Internet Explorer 8 y versiones anteriores.

2019 ACTUALIZACIÓN

W3 propias palabras acerca de XHTML :

"Existe una nueva especificación que se recomienda para la adopción de nuevas en el lugar de la presente memoria. Las nuevas implementaciones deben seguir el última versión de la especificación HTML ."

Por lo tanto, se debe usar HTML 5. *

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top