Pergunta

Embora eu sempre me esforce pela validação completa hoje em dia, muitas vezes me pergunto se isso é uma perda de tempo.Se o código for executado e parecer igual em todos os navegadores (eu uso o browsershots.org para verificar), preciso ir mais longe ou estou apenas sendo excessivamente anal?

Em que nível você mantém seu código ao criá-lo:

a) você mesmo b) seus clientes

P.S.Jeff e companhia, por que o stack overflow não é validado?:)

EDITAR:Alguns bons insights, acho que como sou obcecado pela validade há tanto tempo, programo sabendo o que causará problemas e o que não causará, então estou em uma posição melhor do que as pessoas que criam um site primeiro e depois "vão voltar e corrigir os problemas de validação"

Acho que posso postar outra pergunta sobre estouro de pilha;"Você valida enquanto vai ou termina e depois volta e valida?" Como isso parece ser para onde esta pergunta está indo

Foi útil?

Solução

a) Deve ter a mesma aparência

b) O mais compatível possível com os padrões, mas não tão anal que bloqueie o trabalho de acabamento

Em uma situação em que você tem acesso perpétuo ao código, não acho que a conformidade com os padrões seja tão importante, pois você sempre pode fazer alterações no código se algo quebrar.Se você não tiver acesso perpétuo (ou seja, você assina o código e ele se torna responsabilidade de outra pessoa), provavelmente é melhor ser o mais compatível possível com os padrões para minimizar dores de cabeça de manutenção posteriormente...mesmo que você nunca mais precise lidar com o código, sua reputação persiste e pode ser transmitida a outros clientes em potencial, e muitas equipes gostam de culpar o(s) desenvolvedor(es) anterior(es) pelos problemas que surgirem.

Outras dicas

Penso que esta é uma área em que você deve se esforçar para usar o Princípio de robustez na medida do possível (o que é um bom conselho para qualquer área de codificação).Só porque algo funciona hoje não significa que funcionará amanhã:se você estiver contando com um hack específico de HTML/CSS ou mesmo se tiver sido um pouco negligente na emissão de código estritamente válido, a próxima iteração de navegadores poderá falhar.Fazer isso uma vez da maneira certa minimiza esse problema (embora não o mitigue totalmente).

No entanto, há um certo elemento de pragmatismo a ser adotado aqui.Eu certamente faria tudo o que pudesse para que o site de um cliente fosse válido, mas estaria disposto a correr mais riscos em meu próprio espaço.

Acho que apenas os caras da "tecnologia" realmente se importam com a "conformidade 100% com os padrões".Os consumidores habituais da minha página (= usuários) não se importam se não há atributo alt para um "elemento de imagem da borda do menu".

Normalmente, apenas me certifico de não ver nenhum erro óbvio (todas as tags fechadas, todas em letras minúsculas, atributos entre aspas, ...), mas se parecer bom no IE e no FF, isso é tudo que me importa.Eu realmente não me importo se uso um atributo não padrão em qualquer tag HTML, para que a página não seja validada em um DTD - desde que eu obtenha os resultados visuais que pretendia obter.

Para entendimento por que validação é importante, é necessário entender como funciona um navegador em suas diferentes camadas, e também um pouco sobre a história da web na perspectiva dos navegadores.

O HTML que você fornece a um navegador é interpretado pelo navegador seguindo o DOM, uma interface de programação de aplicativos que mapeia a página inteira como uma hierarquia de nós.Cada parte disso árvore é um tipo de nó que contém diferentes tipos de dados.O DOM (Document Object Model) foi necessário devido à diversidade de páginas HTML que os primeiros navegadores web (Netscape, IE...) implementaram para permitir alterar a aparência e o conteúdo de uma página web sem recarregá-la.Para preservar a natureza multiplataforma da web, o W3C quis corrigir as diferentes implementações desses navegadores, propondo o DOM.

O suporte ao DOM tornou-se uma grande prioridade para a maioria dos fornecedores de navegadores da Web, e esforços têm sido contínuos para melhorar o suporte em cada versão.Então, funcionou.

DOM é a etapa básica com a qual um navegador da web é iniciado.Seu fluxo principal é:

  1. analisando HTML para construir a árvore DOM
  2. renderizar construção de árvore
  3. layout da árvore de renderização
  4. pintando a árvore de renderização

O passo 1 dá a árvore de conteúdo, com as tags voltadas para nós DOM.O passo 2 dá a renderizar árvore, contendo informações de estilo.

Então, por que validação é importante:porque árvore de conteúdo e renderizar árvore são a base a partir da qual o navegador inicia seu trabalho.Quanto mais bem definidos, melhor para o navegador.

Em última análise, o DOM também é a base para seus eventos JavaScript.Portanto, sua validação auxilia também na camada de interação.

Eu sei que isso não está respondendo a toda a sua pergunta, mas vale a pena considerar que, ao usar um HTML totalmente válido, você pode ter certeza de que seu site funcionará corretamente em futuro navegadores da web que ainda não foram lançados.

Minha abordagem tende a ser garantir que eu possa validar completamente todas as páginas, no entanto, ainda envio a página como text/html em vez de application/xhtml+xml para que não haja erros XML feios caso eu tenha perdido alguma coisa.

Para mim, sinto que fiz um bom trabalho se meu código for validado.Ver a caixa de seleção verde nas páginas w3c me deixa um pouco tonto.Quanto ao grupo b, eles geralmente só se importam com a aparência e o funcionamento iguais em todos os navegadores.O único lugar onde descobri que isso não é verdade foi no setor governamental.Eles exigem validação completa não apenas com o w3c, mas também aprovação nos testes ADA (basicamente como soa com um leitor de tela).

p.s.quando digo setor governamental, quero dizer especificamente o estado da Califórnia e alguns condados dentro dele.Não tive nenhuma outra experiência com outros grupos governamentais além deles.

Acho que a validação é um bom teste para saber se você fez as coisas corretamente, então se houver apenas alguns pequenos problemas, por que não corrigi-los e garantir que seu site seja pelo menos compreendido corretamente pelos navegadores no futuro (mesmo que eles renderizam as coisas de maneira diferente por outros motivos)?

OTOH, para a maioria dos projetos, a validação parece uma grande dor de cabeça e se você conseguir fazer as coisas funcionarem nos navegadores, não vale a pena gastar um dia/semana a mais apenas na validação.

Exceto que os próprios validadores são tão positivamente anal, quando sinalizam um erro ou aviso sempre que um -moz- ou -webkit ou -o- ieé usado um termo de qualificação específico do navegador.Além disso, eles querem que você especifique 0px em vez de 0 ou outras unidades zero é zero, qualquer unidade que o validador deseja verificar!

apenas tente validar o WordPress twentyeleven style.css, ele gera 140 erros estranhos que são todos da natureza acima ou o validador está se recuperando de erros de análise

Os validadores são inúteis se você não consegue separar o joio do trigo!!!

Precisamos de validadores que reconheçam os termos de qualificação específicos do navegador!

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top