desenv-web-rp.com

Doctypes XHTML estritos

Fiquei me perguntando sobre as consequências da criação de um site compatível com o XHTML1.0 Strict. Eu desenvolvi muitos sites usando o doctype de transição e li sobre as consequências de um atributo de destino do link. Ele não pode ser usado e deve ser corrigido com um bloco de código JavaScript.

Fiquei me perguntando se havia mais dessas ocorrências de 'forte impacto' e se há mudanças significativas na codificação diária na variante de transição.

3
Rickjaah

Primeiro, usar o Javascript para adicionar atributos inválidos aos elementos é exatamente tão ruim como colocá-los no HTML na primeira instância. Você está apenas mascarando o "problema".

Segundo, eu disse isso em outra resposta, mas a chave para uma boa validação é saber quais são os erros importantes a serem enfrentados. Adicionar target="_blank" a um link afetará negativamente alguém usando um navegador específico? Não - o link será aberto em uma nova janela ou não. Não vai quebrar o layout ou travar o navegador ou algo assim.

Um tipo de documento estrito * é a única opção sensata para novas páginas da Web, porque reduz massivamente os problemas entre navegadores, mais do que qualquer outra técnica. Mas usar um doctype estrito não significa que seu código deve ser 100% válido para a especificação. Não há problema em usar atributos tecnicamente inválidos, desde que você esteja ciente das consequências (ou falta de) quando um navegador pode não suportar um recurso.

* Pessoalmente, adoro o doctype HTML5: <!DOCTYPE html>.
Incrivelmente fácil de lembrar e força o modo estrito em todos os navegadores, mesmo no IE6.

3
DisgruntledGoat

As conseqüências são um melhor suporte aos padrões da web, mais compatibilidade entre navegadores e verificação mais fácil de acessibilidade. O padrão estrito incentiva um código muito limpo.

No entanto, às vezes você simplesmente precisa quebrar uma regra para fazê-la funcionar corretamente. Nesses casos, o uso de Strict não impede que você faça algo, apenas impede que você passe na validação.

1
dmsnell