No verão passado, li a especificação completa do HTML5, todas as especificações anteriores do HTML (mesmo as abandonadas), todas as especificações de CSS que eu encontrei e muitas especificações de XML. Como eu amo documentos de hipertexto semanticamente ricos, deixe-me dar a idéia por trás da semântica HTML relevante no HTML5.
Antes do HTML5
Antes do HTML5, i
e b
estavam realmente fora de moda. O motivo foi que eles funcionaram essencialmente como em
e strong
, respectivamente, mas com foco na apresentação e não na semântica (o que é ruim).
De fato, i
significava que o texto deveria estar em itálico (dizia algo sobre como o texto deveria ser renderizado na tela). Por outro lado, em
significava que o texto deveria ser enfatizado (dizia algo sobre a semântica do texto).
Há uma diferença teórica importante aqui. Se você usar em
, o agente do usuário (= navegador) sabe que o texto deve ser enfatizado, para que possa renderizá-lo em itálico se o documento for exibido na tela (ou em maiúsculas se a formatação não for possível, ou talvez em negrito). o usuário preferir isso), pode pronunciar de maneira diferente se o documento for falado com o usuário etc.
Observe que a ênfase é realmente sobre semântica. Por exemplo, as frases
- O gato é meu. (= não o cachorro!)
- O gato é meu . (= não o seu!)
não tem o mesmo significado.
A mesma diferença se aplica a b
(fonte em negrito) e strong
(ênfase forte).
Um princípio geral da escrita digital em geral e da autoria de hipertexto em particular é que você deve separar conteúdo e estilo. Na criação de hipertexto, isso significa que o conteúdo deve estar no arquivo HTML e o estilo deve estar em um arquivo CSS (ou em vários arquivos CSS). Um princípio diferente, porém relacionado, é que o documento seja rico em semântica (como marcar cabeçalhos, rodapés, listas, ênfases, endereços, áreas de navegação etc.). Isso tem várias vantagens:
- É muito mais fácil para os programas de computador interpretar o documento. Esses programas incluem navegadores, aplicativos de conversão de texto em fala, mecanismos de pesquisa e assistentes digitais. (Por exemplo, o navegador pode permitir que você salve um endereço em seu catálogo de endereços, se ele puder encontrá-lo e interpretá-lo. Além disso, você deve saber que o Microsoft Word pode criar e atualizar automaticamente um sumário, se você marcar seus títulos corretamente .)
- É muito mais fácil mudar o estilo mais tarde. (Se você quiser alterar a cor de todos os seus títulos de terceiro nível no documento de 860 páginas, poderá alterar uma única linha na folha de estilo. Se você misturou conteúdo e apresentação, teria que passar pelo documento inteiro manualmente E você provavelmente perderia um ou dois títulos, tornando o documento pouco profissional.)
- Você pode usar folhas de estilo diferentes, dependendo da circunstância (o documento está sendo exibido na tela ou impresso em papel?). Você pode até deixar o usuário final escolher o estilo. (Meu site oferece várias folhas de estilo alternativas. No IE e FF, você as altera usando o menu Exibir.)
Então, em resumo, i
e b
foram preteridos porque eram tags HTML preocupadas com a apresentação , o que é totalmente errado.
Em HTML5
No HTML5 i
e b
não são mais preteridos. Em vez disso, eles recebem um significado somático . Portanto, agora eles são realmente sobre semântica, e não sobre apresentação.
Como antes, você em
costuma enfatizar: "O gato é meu". Mas você usa i
para quase todos os outros casos em que usaria itálico em uma obra impressa. Por exemplo:
- Você costuma
i
marcar as designações taxonômicas: "Gosto de R. norvegicus ".
- Você usa
i
para marcar uma frase em um idioma diferente em comparação com o texto ao redor: À la carte
- Você usa
i
para marcar uma palavra quando fala sobre a própria palavra: " bebida é um substantivo e um verbo"
Também é uma boa ideia usar o class
atributo para especificar o uso preciso (também "microformato" e "microdados" do Google). E, é claro, no segundo caso, você realmente deve usar o lang
atributo para especificar o idioma correto. (Caso contrário, por exemplo , um agente de conversão de texto em fala pode pronunciar incorretamente o texto.)
Há um ano, mais ou menos, a especificação HTML5 também dizia que cite
deveria ser usado para marcar nomes de livros, filmes, óperas, pinturas etc.:
- O que você acha do ninfomaníaca ?
Finalmente, há muito tempo, dfn
é usado para marcar a instância definidora de uma frase em um texto (como uma definição matemática ou a definição de um termo):
- Um grupo é um conjunto X equipado com uma única operação binária * de forma que ...
Portanto, o itálico no seu livro impresso, que pode significar muitas coisas diferentes, é representado por quatro tags HTML5 diferentes, o que é realmente ótimo, porque a semântica é boa, como tentei convencê-lo anteriormente. (Por exemplo, você pode pedir ao seu navegador para fazer uma lista de todas as definições do texto, para garantir que você as conheça todas antes do exame.)
Virando-se para strong
e b
, a especificação HTML5 diz que strong
deve ser usado para marcar uma parte importante do texto, como uma advertência ou uma palavra muito importante-a-captura em uma frase. Por outro lado, b
deve ser usado para marcar itens que precisam ser fáceis de encontrar no texto, como palavras-chave. Eu também uso b
como títulos em itens de lista (LIs).
<b>
e<i>
não estão obsoletos.