html5 - etiquetas - meta name= keywords
¿Es necesaria la metaetiqueta charset con HTML5? (4)
De acuerdo con la extensión del navegador Google PageSpeed, declarar un conjunto de caracteres en un metaelemento "deshabilita la función de búsqueda anticipada de IE8" que aparentemente lo obliga a descargar todo en serie.
<meta charset-"utf-8">
que se <meta charset-"utf-8">
para HTML5 válido, pero es por eso que comencé a buscar aquí.
El borrador de la especificación me parece bastante claro y, dado que agrego el encabezado HTTP a través de .htaccess
, comenzaré a omitirlo ... aunque estoy tentado de hacerlo, solo hago que los usuarios de IE8 sufran un poco más.
Gracias.
@Jules Mazur, ¿tienes alguna referencia sobre esos puntos? La mayor parte de lo que hago es SEO y la accesibilidad es importante para mí y, si ese es el caso, estoy más que receptivo a dejar la declaración meta.
El borrador de trabajo de W3C "HTML5 diferencias de HTML4" dice:
Para la sintaxis HTML, los autores deben declarar la codificación de caracteres.
¿Qué significa "requerido"?
Obviamente, un navegador todavía mostrará HTML5 sin la metaetiqueta charset. Si no se especifica ninguna codificación, ¿qué codificación utilizará un navegador?
Básicamente, quiero saber si es realmente necesario incluir <meta charset="">
, o si el 99% del tiempo los navegadores usarán la codificación correcta de todos modos.
Aquí está el enlace: http://www.w3.org/TR/html5-diff/#character-encoding
Desde 1999, cuando salió la mayoría de estas especificaciones w3C, los organismos de estándares han presionado a los proveedores (fabricantes de servidores y navegadores y aplicaciones de documentos) para que sigan las reglas de codificación y utilicen metatags para ayudar a determinar la intención. Pero debido a la codicia, el mal diseño del navegador y otros factores, muy pocos han seguido las especificaciones de manera consistente a lo largo de los años. Como resultado, tenemos un sistema fracturado. Algunos proveedores como Mozilla han seguido los estándares desde 2001 para metatags, mientras que otros como Microsoft y Google no lo han hecho.
Por esa razón, todos los desarrolladores web deben usar el diseño de contingencia en la forma en que se construyen todas sus páginas web, y usar metatags y otras marcas estándar a pesar del soporte inconsistente. En otras palabras, use los dos tipos de metatag (meta charset = "UTF-8" y meta http-equiv = "content-type" content = "text / htmlcharset = utf-8"), aunque en realidad ese marcado no decidirá cómo serán sus páginas. Están codificados o interpretados por modernos usuarios-agentes. El controlador principal para la codificación utilizada por el navegador será cómo esa página fue codificada por el software, como alguien mencionado anteriormente, que cada vez más es UTF-8, que es solo un estándar de Unicode que actualmente es popular. Es probable que el navegador del usuario omita los metatags y verifique la página para adivinar la intención de codificación del autor.
En el año 2000 todo este debate metatag fue aún peor. El uso de HTML 4 con caracteres Unicode incrustados a menudo significaba páginas donde ni se codificaba correctamente ni se representaba correctamente, a pesar de los encabezados HTTP del servidor, el uso de entidades de caracteres y los metatags simplemente porque los navegadores modernos en ese entonces NO seguían los estándares y no miraban los metatags. Codificación de páginas, o entidades de caracteres codificados. Es por eso que para combatir todas las complejas combinaciones de soporte y sistemas en la adopción de estándares fallidos, es mejor usar todas las combinaciones de tecnología para aumentar la "probabilidad" de que sus páginas web se representen correctamente.
Aprendimos entonces una valiosa lección: los estándares web nunca serían seguidos por las empresas. Cuando la industria privada no adopta sistemáticamente los estándares, siempre es mejor usar todos los formularios y versiones de etiquetado, todo el tiempo, en todas las formas posibles para maximizar sus páginas, se visualizan correctamente en muchos dispositivos diferentes, utilizando varias formas de esos estándares, incluso si hoy no importan (ya que los navegadores ahora analizan las páginas y determinan la codificación por sí mismos).
Esa debería ser la estrategia utilizada para el diseño de todas las páginas web hasta que de alguna manera apliquemos la adopción universal de los Estándares Web, que ahora es cada vez más improbable con los agentes de usuarios móviles y HTML5 que nos han obligado a abandonar una vez más muchos de los estándares XML que se habrían aplicado mejor. diseño de marcado
Es importante especificar un conjunto de caracteres del documento lo antes posible (ya sea a través del encabezado Content-Type
o la etiqueta META
), de lo contrario, se dejará que el navegador determine la codificación antes de analizar el documento y esto puede afectar negativamente la carga de la página. tiempo
No es necesario incluir <meta charset="blah">
. Como dice la especificación, el conjunto de caracteres también puede ser especificado por el servidor utilizando el Content-Type
HTTP Content-Type
o incluyendo una lista de materiales Unicode al principio del archivo descargado.
La mayoría de los servidores web de hoy devolverán un juego de caracteres en el encabezado Content-Type
para datos de texto HTML si no se especifica ninguno. Si el servidor web no devuelve un juego de caracteres con el encabezado Content-Type
y el archivo no incluye una lista de materiales y la página no incluye una declaración <meta charset="blah">
, el navegador tendrá una codificación predeterminada que generalmente se basa en la configuración de idioma de la computadora host. Si esto no coincide con la codificación de caracteres real del archivo, entonces algunos caracteres se mostrarán incorrectamente.
¿Utilizarán los navegadores la codificación adecuada el 99% del tiempo? Si su página es UTF-8, probablemente. Si no, probablemente no.
El W3C proporciona un documento que describe las reglas de precendencia para los tres métodos que dicen que el orden es el encabezado HTTP, la lista de materiales, seguido de la especificación en el documento (etiqueta meta).