Artigos
HTML5 Diff
Um resumo do que mudou no HTML5 em comparação com o HTML4.
Por Diego Eis
O W3C mantém um documento que compara o HTML4 com as novidades do HTML5. São inúmeras mudanças em elementos mais conhecidos e também em outros elementos mais específicos, utilizados em aplicações e sistemas mais complexos. Sugiro que você leia este documento e o guarde como referência.
O HTML5 ainda é um rascunho. Ele está sendo discutido entre o WHATWG e o W3C. Diversos pontos podem ser modificados ainda, por isso é interessante que você entenda e fique por dentro das discussões para que você atualize seu código quando necessário.
Um dos grandes objetivos do HTML5 é que ele seja retrocompatível. Isso evita o retrabalho de código e faz com que a web retome o rumo da semântica e do código enxuto. Vamos às mudanças:
O elemento B passa a ter o mesmo nível semântico que um SPAN, mas ainda mantém o estilo de negrito no texto. Contudo, ele não dá nenhuma importância para o text marcado com ele.
O elemento I também passa a ser um SPAN. O texto continua sendo itálico e para usuários de leitores de tela, a voz utilizada é modificada para indicar ênfase. Isso pode ser útil para marcar frases em outros idiomas, termos técnicos e etc.
O interessante é que nestes dois casos houve apenas uma mudança semântica. Provavelmente você não precisará modificar códigos onde estes dois elementos são utilizados.
Voce utilizará o SMALL para fazer literalmente os “letras miúdas” de um documento legal, comentários gerais ou até mesmo aqueles pequenos comentários e dicas que colocamos em campos de formulários e etc.
O HR virou um parágrafo de quebra. Ou seja, ele passa a ter a mesma importância do parágrafo, mas em um nível temático para quebra de linha.
Os elementos abaixo foram descontinuados por que seus efeitos são apenas visuais:
- basefont
- big
- center
- font
- s
- strike
- tt
- u
Como já era conhecido por alguns, os inputs ganharam novos valores no atributo TYPE. Estes novos valores permitem que browsers e outros user-agents melhorem a experiência do usuário, mostrando calendários e permitindo integração com agenda de contatos e etc. Permite também que os dados possam ser submetidos para o servidor com um formato específico. Valores como TEL, URL e EMAIL já tem efeitos em smartphones como iPhone:
- tel
- search
- url
- datetime
- date
- month
- week
- time
- datetime-local
- number
- range
- color
Os elementos abaixo não foram incluídos na especificação porque não tiveram uso entre os desenvolvedores ou porque sua função foi substituída por outro elemento:
-
1acronym
não foi incluído porque criou um bocado de confusão entre os desenvolvedores que preferiram utilizar a tag
1abbr.
-
1applet
ficou obsoleto em favor da tag
1object.
-
1isindex
foi substituído pelo uso de form controls.
-
1dir
ficou obsoleto em favor da tag
1ul.
Este atributos foram descontinuados porque modificam a formatação do elemento e suas funções são melhores controladas pelo CSS:
-
1align
como atributo da tag
1caption,
1iframe,
1img,
1input,
1object,
1legend,
1table,
1hr,
1div,
1h1,
1h2,
1h3,
1h4,
1h5,
1h6,
1p,
1col,
1colgroup,
1tbody,
1td,
1tfoot,
1th,
1theade
1tr.
-
1alink
,
1link,
1texte
1vlinkcomo atributos da tag
1body.
-
1background
como atributo da tag
1body.
-
1bgcolor
como atributo da tag
1table,
1tr,
1td,
1the
1body.
-
1border
como atributo da tag
1tablee
1object.
-
1cellpadding
e
1cellspacingcomo atributos da tag
1table.
-
1char
e
1charoffcomo atributos da tag
1col,
1colgroup,
1tbody,
1td,
1tfoot,
1th,
1theade
1tr.
-
1clear
como atributo da tag
1br.
-
1compact
como atributo da tag
1dl,
1menu,
1ole
1ul.
-
1frame
como atributo da tag
1table.
-
1frameborder
como atributo da tag
1iframe.
-
1height
como atributo da tag
1tde
1th.
-
1hspace
e
1vspacecomo atributos da tag
1imge
1object.
-
1marginheight
e
1marginwidthcomo atributos da tag
1iframe.
-
1noshade
como atributo da tag
1hr.
-
1nowrap
como atributo da tag
1tde
1th.
-
1rules
como atributo da tag
1table.
-
1scrolling
como atributo da tag
1iframe.
-
1size
como atributo da tag
1hr.
-
1type
como atributo da tag
1li,
1ole
1ul.
-
1valign
como atributo da tag
1col,
1colgroup,
1tbody,
1td,
1tfoot,
1th,
1theade
1tr.
-
1width
como atributo da tag
1hr,
1table,
1td,
1th,
1col,
1colgroupe
1pre.
Alguns atributos do HTML4 não são mais permitidos no HTML5. Se eles tiverem algum impacto negativo na compatibilidade de algum user-agent eles serão discutidos.
-
1rev
e
1charsetcomo atributos da tag
1linke
1a.
-
1shape
e
1coordscomo atributos da tag
1a.
-
1longdesc
como atributo da tag
1imgand
1iframe.
-
1target
como atributo da tag
1link.
-
1nohref
como atributo da tag
1area.
-
1profile
como atributo da tag
1head.
-
1version
como atributo da tag
1html.
-
1name
como atributo da tag
1img(use
1idinstead).
-
1scheme
como atributo da tag
1meta.
-
1archive
,
1classid,
1codebase,
1codetype,
1declaree
1standbycomo atributos da tag
1object.
-
1valuetype
e
1typecomo atributos da tag
1param.
-
1axis
e
1abbrcomo atributos da tag
1tde
1th.
-
1scope
como atributo da tag
1td.
Há outras mudanças mais profundas, por isso sugiro que você leia esse documento inteiro: W3C HTML5 Diff.
Estes artigos também podem ajudar:

Pingback: Tweets that mention HTML5 Diff | Boas práticas de Desenvolvimento com Padrões Web -- Topsy.com