Pergunta

Eu estou construindo um site agora, até agora eu dolorosamente forçado tudo para ser compatível e parece praticamente o mesmo em todos os navegadores. No entanto, eu estou começando a implementar algumas terceiros javascripts partido / livre que fazem coisas como atributos add (ex. Ordem = 2). Eu poderia contornar isso, mas é uma dor, e eu estou começando a perder meus princípios de certificando-se tudo é válido. Realmente, existe algum ponto a trabalhar em torno de algo assim? Eu tenho o plugin HTMLValidator para o Firefox, e olhando para a maioria dos grandes sites (incluindo este, Google, etc.), eles não são XHTML ou HTML.

Foi útil?

Solução

Eu ainda tenho que experimentar uma instância onde a adição de um atributo de não-padrão tem causado um problema de processamento em qualquer navegador.

Não tente contornar esses atributos não-padrão. Validadores são úteis como ferramentas para dobrar verificar o seu código para erros não intencionais, mas como todos sabemos, mesmo xhtml plenamente válida irá nem sempre tornar consistente em todos os navegadores. Há muitas ocasiões em que as decisões de design nos obrigam a utilizar específica navegador (e não-padrão) hacks para conseguir um efeito. Esta é a vida de um desenvolvedor web como evidenciado pelo número de sites de tecnologia de condução (Google, Yahoo, etc.) que não validam.

Outras dicas

A validação é útil para determinar quando as coisas não estão a cumprir as normas que você provavelmente concordo com ele. Se você está propositadamente usando uma ferramenta que especificamente acrescenta algo não nas normas de validação, obviamente que não quebrar o seu contrato de padrões pessoais.

Essa discussão fica muito mais difícil se você tem um chefe ou um cliente que acredita que tudo deve retornar a luz verde, como você vai ter que explicar o acima para eles e convencê-los de que não é simplesmente você ser preguiçoso.

Dito isso, certifique-se de que não é simplesmente um caso de você ser preguiçoso. Enquanto os validadores podem irritantemente constantemente trazer cada instância do terceiro atributo partido, isso não invalida (ha) outros erros de validação que está mencionando. É muitas vezes vale a digitalização através de um meio de duplo controlo o seu trabalho.

cumprimento

Padrões é sobre aumentando a chance de que sua página vai funcionar em todos os navegadores que você não fazer prova contra. Isto inclui leitores de tela, ea próxima atualização dos navegadores que você faz teste contra e navegadores que você faz teste contra, mas que foram configurados de forma inesperada por parte do usuário.

Validando não garante nada, já que é possível para sua página para validar mas ainda ser suficientemente ambígua que não irá se comportar da maneira que você quer que ele em algum navegador algum dia.

No entanto, se a sua página está validando, você pelo menos tem a força do XHTML especificação dizendo como ele deve se comportar. Se ele não valida, tudo que você tem é um bando de convenções informais entre escritores navegador.

É provavelmente melhor para escrever HTML válido 3 do que XHTML inválido, se há algo que você quer fazer o que é permitido em um, mas não o outro.

Se você está pensando em tomar vantagem do XHTML como XML, então vale a pena do que para fazer suas páginas válido e bem formado. Caso contrário, bom e velho HTML semântica é provavelmente o que quer. De qualquer maneira, as necessidades de seu público superam as necessidades de um validador.

Basta ter em mente que a tag XHTML torna diferente na maioria dos navegadores do que não tê-la. O atributo DOCTYPE determina o modo do navegador processa e ditames que é e não é permitido. Se você desviar-se do cumprimento XHTML apenas a certeza de reteste em todos os navegadores.

Pessoalmente eu ficar com as mais recentes normas, sempre que possível, mas você tem que pesar o tempo / dinheiro contra conformidade com certeza e que se resume a preferência pessoal para a maioria.

Quanto navegadores estão em causa, o cumprimento XHTML é inútil na medida em que:

  1. Os navegadores não têm analisadores XHTML. Eles têm específicos não-versão, analisadores HTML web-compatível que construir um DOM em todo o http: // www .w3.org / 1999 / xhtml namespace.

  2. Alguns navegadores que têm analisadores XML pode tratar marcação XHTML servido como application / xhtml + xml como XML. Isso levará o XML e dar estilo padrão HTML e comportamento para elementos na http: //www.w3. org / 1999 / xhtml namespace. Mas, na medida em que a análise vai, não tem nada a ver com XHTML. Análise de XML regras são seguidas, não regras de algum DTD XHTML.

Assim, quando você usa marcação XHTML, você está dando algo estranho para os navegadores e ver se ele sai como você pretende. A coisa é, você pode fazer isso com qualquer marcação. Se ele processa como pretendido e produz o DOM correto, você está fazendo muito bem. Você apenas tem que certificar-se manter comutação DOCTYPE em mente e certifique-se que você não está confiando em um bug do navegador (assim que as coisas não desmoronar em navegadores que não têm o bug).

cumprimento

O XHTML é bom para se verificação de sintaxe (validando) para ver se a marcação está bem formado. Isso ajuda a evitar erros de análise. Claro, isso pode ser feito com HTML também, então não há nada de especial sobre XHTML neste caso. De qualquer maneira, você ainda tem que testar em navegadores e fabricantes de navegadores esperança fazer analisadores HTML impressionantes que podem aceitar todos os tipos de lixo.

O que não é inútil está tentando conformar com o que navegadores esperar. HTML5 ajuda com este grande momento. E, por falar em HTML5, você pode definir atributos personalizados tudo o que quiser. Apenas prefixar-los com data-, como em Test

.

Sendo Valid HTML é normalmente uma ajuda para ambos você e o motor de renderização do navegador. Quanto menos peculiaridades dos navegadores têm de lidar, mais eles podem se concentrar em adicionar novas funcionalidades. Quanto mais rigoroso você é, menos tempo você vai gastar tempo se perguntando por que isso f @ # cking tag proprietária não funciona em outros navegadores.

Por outro lado, XHTML é, IMHO, mais inútil, exceto se você pretende integrá-lo dentro de algum documento XML. Como IE ainda não reconhecê-lo, é bastante inútil para ficar com vara.

Eu acho que escrever "código válido" é importante, simplesmente porque você está dando um exemplo, seguindo as regras. Se cada desenvolvedor tinha escrito código para Fx, Safari e Opera, eu acho que o IE teve que "começar a seguir as regras" mais cedo do que com a versão 8.

Eu tento código compatível com gravação na maioria das vezes pesando o tempo / custo vs as necessidades do público em todos os casos, mas um. Onde você código precisa ser 503 compatível, é no seu melhor interesse eo interesse de seu público para escrever código compatível. Eu me deparei com um monte de leitores de tela que explodem quando o código é ainda um pouco fora.

Como a maioria dos cartazes disse, é realmente tudo sobre o que suas necessidades de audiência.

Não é inútil, por qualquer meio, mas há muita justificativa para quebrá-lo. Durante os estágios iniciais de desenvolvimento CSS é muito útil para diagnosticar problemas com o navegador se a sua marcação é válido. Além disso, se você quiser fazer alguma coisa e você sente o método mais apropriado é quebrar a validação, que normalmente é ok.

Uma alternativa para utilizar atributos personalizados é fazer uso do atributo 'rel', para um exemplo ver Litebox (e seus parentes).

Claro, você pode sempre ir em frente e escrevê-lo da maneira que quiser, certificando-se que no mínimo ele funciona. Claro, nós já sofreu essa mentalidade e testemunharam sua saída, Internet Explorer 6 .

Eu sou um grande fã do abordagem Mike Davidson aos padrões orientados para o desenvolvimento .

Só porque você pode validar o seu código não significa que você é melhor do que ninguém. Heck, ele mesmo não significa necessariamente que você escrever um código melhor do que ninguém. Alguém que pode escrever um aplicativo bancário totalmente em Flash é um programador melhor do que você. Alguém que pode integrar código de terceiros em um ambiente de publicar complicado é um programador melhor do que você. Pense validação como a utilização de imagem perfeita gramática; ele ajuda a obter as suas ideias através de e é um sinal de uma boa educação, mas não é quase tão importante como as idéias e conceitos que você pensar e, posteriormente, comunicar. A pessoa mais carismática e, possivelmente, mais inteligente que eu já trabalhei para era do Sul e usou a palavra “não é” bastante regularidade. Ele não faz dele menos inteligente, e, na verdade, ele fez mais memorável. Então tudo que eu estou dizendo é que há uma abundância de coisas para julgar alguém ... validação é um deles, mas certamente não é o mais importante.

Um monte de pessoas não entendem este post para dizer que não devemos código para padrões. Devemos, obviamente, mas não é algo que deve mesmo realmente ser pensado. O Exército validação será sempre condenam aqueles que não validam, mas os meios de validação muito mais do que um código válido.

Assim, não perder seus princípios, mas lembre-se que se você seguir as normas que você é muito menos provável que acabam no deep-final de problemas no futuro. O conteúdo que você está tentando oferecer é muito mais importante do que como ele é exibido.

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