El verano pasado, leí la especificación HTML5 completa, y todas las especificaciones HTML anteriores (incluso las abandonadas), y todas las especificaciones CSS que pude encontrar, y muchas especificaciones XML. Dado que me encantan los documentos de hipertexto semánticamente ricos, permítame darle la idea detrás de la semántica HTML relevante en HTML5.
Antes de HTML5
Antes de HTML5, i
y de b
hecho estaban fuera de moda. La razón era que esencialmente funcionaban como em
y strong
, respectivamente, pero con enfoque en la presentación y no en la semántica (lo cual es malo).
De hecho, i
significaba que el texto debería estar en cursiva (decía algo sobre cómo debería representarse el texto en pantalla). Por otro lado, em
significaba que el texto debía enfatizarse (decía algo sobre la semántica del texto).
Hay una diferencia teórica importante aquí. Si lo usa em
, el agente de usuario (= navegador) sabe que el texto debe enfatizarse, por lo que puede mostrarlo en cursiva si el documento se muestra en pantalla (o todo en mayúsculas si no es posible formatear, o incluso en negrita). el usuario lo prefiere), puede pronunciarlo de manera diferente si el documento se le habla al usuario, etc.
Observe que el énfasis realmente se trata de la semántica. Por ejemplo, las frases
- El gato es mio. (= ¡no el perro!)
- El gato es mio . (= ¡no el tuyo!)
No tienen el mismo significado.
La misma diferencia se aplica a b
(fuente en negrita) y strong
(énfasis fuerte).
Un principio general de la escritura digital en general, y de la autoría de hipertexto en particular, es que debe separar el contenido y el estilo. En la autoría de hipertexto, esto significa que el contenido debe estar en el archivo HTML, y el estilo debe estar en un archivo CSS (o varios archivos CSS). Un principio diferente pero relacionado es que el documento debe ser rico en semántica (como marcar encabezados, pies de página, listas, énfasis, direcciones, áreas de navegación, etc.). Esto tiene una serie de ventajas:
- Es mucho más fácil para los programas de computadora interpretar el documento. Estos programas incluyen navegadores, aplicaciones de texto a voz, motores de búsqueda y asistentes digitales. (Por ejemplo, el navegador puede permitirle guardar una dirección en su libreta de direcciones, si solo puede encontrarla e interpretarla. Además, puede saber que Microsoft Word puede crear y actualizar automáticamente una tabla de contenido para usted si marca sus encabezados correctamente .)
- Es mucho más fácil cambiar el estilo más adelante. (Si desea cambiar el color de todos los encabezados de tercer nivel en su documento de 860 páginas, puede cambiar una sola línea en la hoja de estilo. Si tuviera contenido mixto y presentación, tendría que revisar todo el documento manualmente Y es probable que se pierda uno o dos encabezados, lo que hace que el documento parezca poco profesional).
- Puede usar diferentes hojas de estilo según las circunstancias (¿el documento se muestra en pantalla o se imprime en papel?). Incluso puede dejar que el usuario final elija el estilo ella misma. (Mi sitio web ofrece varias hojas de estilo alternativas. En IE y FF, puede cambiarlas usando el menú Ver).
Entonces, en resumen, i
ya no b
se utilizan porque eran etiquetas HTML preocupadas por la presentación , lo cual es totalmente incorrecto.
En HTML5
En HTML5 i
y b
ya no están en desuso. En cambio, se les da un significado semántico . Entonces, en realidad, ahora se trata de semántica, y no de presentación.
Como antes, solía em
marcar el énfasis: "El gato es mío". Pero lo usa i
para casi todos los demás casos en los que usaría cursiva en una obra impresa. Por ejemplo:
- Se utilizan
i
para marcar designaciones taxonómicas: "Me gusta R. norvegicus ".
- Se utiliza
i
para marcar una frase en un idioma diferente en comparación con el texto circundante: a la carta
- Se usa
i
para marcar una palabra cuando se habla de la palabra en sí: " beber es tanto un sustantivo como un verbo"
También es una buena idea utilizar el class
atributo para especificar el uso preciso (también "microformato" y "microdatos" de Google). Y, por supuesto, en el segundo caso, realmente debería usar el lang
atributo para especificar el idioma correcto. (De lo contrario, por ejemplo , un agente de texto a voz podría pronunciar mal el texto).
Hace aproximadamente un año, la especificación HTML5 también decía que cite
debería usarse para marcar nombres de libros, películas, óperas, pinturas, etc.
- ¿Qué opinas de Nymphomaniac ?
Finalmente, desde hace mucho tiempo, dfn
se usa para marcar la instancia definitoria de una frase en un texto (como una definición matemática o la definición de un término):
- Un grupo es un conjunto X equipado con una sola operación binaria * tal que ...
Entonces, la cursiva en su libro impreso, que puede significar muchas cosas diferentes, está representada por cuatro etiquetas HTML5 diferentes, lo cual es realmente genial, porque la semántica es buena, ya que traté de convencerlo anteriormente. (Por ejemplo, puede pedirle a su navegador que haga una lista de todas las definiciones en el texto, para asegurarse de conocerlas todas antes del examen).
En cuanto a strong
y b
, la especificación HTML5 dice que strong
debe usarse para marcar una parte importante del texto, como una advertencia o alguna palabra muy importante para atrapar en una oración. Por otro lado, b
debe usarse para marcar cosas que deben ser fáciles de encontrar en el texto, como palabras clave. También lo uso b
como encabezados en los elementos de la lista (LI).
<b>
y<i>
no estoy en desuso.