• Contato
  • Agni na mídia
  • Quem sou eu?
  • Agni.art

    Padrões Web, Design, Publicidade, Software Livre, e outras histórias!

    posts com a tag ‘css’

    Resistência aos Padrões Web

    Olá amiguinhos!

    Na última edição do Campus Party Brasil, fiquei encarregado de abrir as atividades na área de Design com a palestra sobre Web Standards.

    Após a palestra, e depois de bater papo com muita gente por lá, cheguei a triste conclusão de que muitos profissionais ainda desconhecem as Web Standards[bb], e desenvolvem sites a moda antiga (usando tabelas para diagramar o Layout).

    Para contribuir na mudança desse quadro, este artigo é o primeiro de uma série sobre Web Standards ao qual estarei escrevendo. E para ter certeza de que vou ajudar a esclarecer as dúvidas sobre esse assunto, deixo aberto o espaço para a sugestão de temas para os próximos artigos.

    Resistência aos padrões, ou amor as tabelas?

    Pior do que perceber que ainda hoje muitas pessoas desconhecem as Web Standards e suas vantagens, é perceber que existem pessoas que conhecem, porém resistem a elas, com argumentos (sem fundamentos) de que desenvolver sites com o uso de tabelas para diagramar o Layout é melhor e mais produtivo.

    Esses dias andou pipocando pelas listas de discussão um artigo escrito por um tal de Ron Garret, onde ele tenta justificar que o CSS não serve para diagramar Layouts (Why CSS should not be used for layout), e afirmando que o uso de tabelas é melhor para tal finalidade.

    Essa forma de pensar mostra que muitas pessoas tem a visão equivocada de considerar o Design como mera produção estética, e desconsideram a concepção de projeto. Como escrevi em outro artigo, além da questão estética, o Design engloba a criação de um produto funcional, usável, eficiente e economicamente viável.

    Uma estrutura de informação, como documentos escritos em HTML ou XML, deve conter apenas marcações com devido significado (semântica). Adicionar marcações sem significado em um site pode ser comparado a adicionar diversas páginas em branco a um livro: aumentaria inutilmente o tamanho do mesmo, e não teriam sentido algum para o leitor. É justamente isso que acontece com o uso das tabelas para diagramar o Layout.

    Podemos dizer que o HTML não é uma linguagem de marcação verdadeira, pois sua sintaxe preve (limitadas) marcações para formatação. Uma linguagem de marcação deve apenas estruturar a informação (como o XHTML), enquanto a apresentação deve vir de um documento específico (CSS).

    A maior dificuldade no uso do CSS para diagramação das páginas vem da incapacidade dos navegadores, não só no suporte a linguagem, como na padronização do efeito renderizado. O IE6 suporta apenas 51% das propriedades do CSS 2.1, o IE7 apenas 56%, o Firefox2 suporta 91%. O IE6, que ainda é o navegador mais usado, também suporta apenas 73% do HTML/XHTML, 50% do DOM e 10% do CSS3. Mais informações sobre essas estatísticas podem ser vistas em http://www.webdevout.net/browser-support).

    O CSS não é perfeito, as empresas que desenvolvem os navegadores não colaboram no suporte, e a W3C não é nenhum exemplo de discussões promissoras em prol a padronização. Lembrando que a W3C não se resume apenas aquele tiozinho carismatico de ideais livres que inventou a Web, mas de diversas empresas com interesses não tão nobres (quem chegou a acompanhar discussões sobre o uso dos codec’s Ogg Vorbis e o Ogg Theora como padrão nos navegadores, para o uso da nova tag <video></video> no HTML5, sabe do que eu estou falando).

    A vantagem do uso de Padrões Web

    Recortar um layout em softwares como o Fireworks, e exportar diretamente para HTML com tabelas pode parecer fácil e rápido. Porém o código gerado torna-se incompreensível, sem uma sequência lógica da informação ou significado, além de ser muito maior que o necessário.

    O uso das Web Standards propicia um melhor custo-benefício. As vantagens do uso de padrões e da separação das camadas de Conteúdo (XHTML), apresentação (CSS) e Comportamento (Javascript) são evidentes:

    • Com arquivos menores e as camadas de Apresentação (CSS) e Comportamento (Javascript) no cachê do navegador, teremos um carregamento mais rápido das páginas, além de menores custos de hospedagem.
    • Com a formatação de todas as páginas baseadas num mesmo arquivo CSS, teremos uma melhor consistência visual, e possibilidades de manutenção e redesign mais baratos e eficientes.
    • Com marcações mais semânticas (usadas com seu devido significado) e com as informações do documento estruturadas em uma sequência lógica, teremos melhores resultado nos mecanismos de buscas, além de melhor acessibilidade e Interoperabilidade entre diferentes dispositivos.

    Exemplos práticos dessas vantagens:

    • A Legal & General, uma das primeiras empresas a aplicar em seu site as “Diretivas para acessibilidade Web” (Web Content Accessibility Guidelines) da W3C, e os resultados foram que as taxas de conversão aumentaram 300%, custos de manutenção cairam 66%, listagem natural nas buscas aumentou 50% e o carregamento das páginas ficou 75% mais rápido (fonte: RevistaW).
    • A ESPN, quando migrou seu site para os Padrões, reduziu cerca de 50kb em cada página, economizando 2 Terabytes de banda por dia (fonte: Mike Davidson).

    Quanto a beleza dos sites feitos com CSS, é indiscultivel que as possibilidades são enormes, e muito mais eficiêntes que a formatação possibilitada com o uso de tabelas no HTML. Exemplos disso podemos encontrar na galeria CSS Zen Garden ou em sites como o Web Leed Design.

    Se as Web Standards ainda não são o ideal, é o que de melhor temos hoje para o desenvolvimento de páginas para a Web.

    Linguagens como o CSS tem sempre mil possibilidades. A limitação está no Designer[bb].

    Web Standards no Campus Party

    Nesta segunda edição brasileira do Campus Party, que acontecerá entre os dias 19 e 22 de janeiro, estarei na área de Design para dia 24/01 ministrar a oficina sobre HTML e CSS para Designers (não programadores), e para já no primeiro dia de atividades (20/01) puxar a discussão sobre as Web Standards, os Padrões de Desenvolvimento Web[bb] criados e mantidos pela W3C (World Wide Web Consortium).

    O horário da palestra está previsto para as 15h00, com 2h00 de duração, onde terei como objetivo contextualizar os participantes (com um pouco da história) sobre o “porque” precisamos desses padrões de desenvolvimento, e qual a importância dos mesmos. Pretendo apresentar também as vantagens que podem nos favorecer na adoção das Web Standards, tanto em termos de acessibilidade, quanto tecnológicos, práticos e (inclusive) financeiros. A palestra também buscará esclarecer os participantes sobre os principais padrões e sobre as questões de Acessibilidade.

    Confesso que dá um certo frio na barriga falar sobre Web Standards num evento que conta com a presença de ninguém mais ninguém menos que Tim Berners-Lee…mas “vamo que vamo!”

    Slides da Palestra “Web Standards”

    Ver mais Slides de Agni no SlideShare.

    Alternativa textual para os Slides

    1. Palestra sobre Web Standards – Campus Party Brasil 2009

    2. Porque falar de Padrões Web?

      • A maior parte da Web e dos profissionais ainda é obsoleta
      • Necessidade de acompanhar a evolução da Web
      • Necessidade de interoperabilidade
      • Necessidade de otimização dos sites
      • Necessidade (ainda) de esclarecimentos a respeito
    3. No início de tudo

      A Web é criada em 1989, para ser um padrão de publicação e distribuição de textos científicos e acadêmicos

      • Localizador Uniforme de Recursos (URL)
      • Linguagem de Marcação de Hipertexto (HTML)
      • Protocolo de Transferência de Hipertexto (HTTP)

      Tecnologia aberta e gratuita

    4. A limitação do HTML

      A Web cresce comercialmente, e veem a necessidade de publicação de conteúdo diagramado, como em revistas e jornais (algo para o qual o HTML não possuia recursos)

      Há então a adaptação da linguagem de forma equivocada, com uma preocupação unicamente visual, esquecendo da qualidade do código

    5. A Guerra dos Browsers

      Aproximadamente entre 1995 e 1999 houve a chamada “Guerra dos Browsers”, onde a Netscape (e seu Browsers de mesmo nome) e a Microsoft[bb] (com o seu Internet Explorer) disputavam o mercado de navegadores.

      Além de não darem suporte aos padrões do recém criada W3C, ainda criavam seus próprios padrões, aumentando a bagunça.

    6. Editores WYSIWYG

      “O que você vê é o que você tem”, ou em inglês “What You See Is What You Get” são programas que lhe permitem ter a visualização final de um documento, enquanto o mesmo ainda é editado. Editores HTML WYSIWYG como Go Live, Front Page e Dreamweaver surgiram por volta de 1996, e são conhecidos por gerar um código sujo e muito maior que o necessário.

    7. Cursos e Profissionais Desatualizados

    8. Com tudo isso, as páginas…

      Cada arquivos de um site acaba sendo um incompreensível emaranhado de Tags com tabelas, formatações, scripts… Tudo muito maior que o necessário.

      Dessa forma, para que seja feita alguma alteração no site, é necessário alterar todos os arquivos… um a um!

    9. O resultado de tudo isso

      • Código sujo e incompreensível
      • Dificudade de Desenvolvimento e Manutenção
      • Falta de padrão
      • spacer.gif
      • Formação junto da Estrutura
      • Páginas feitas com tabelas
    10. O que são os Padrões Web?

      Padrões Web são um conjunto de normas, diretrizes, recomendações, notas, artigos, tutoriais e afins de caráter técnico, produzidos pela W3C.

      É destinado a orientar fabricantes, desenvolvedores, projetistas para o uso de práticas que possibilitem a criação de uma Web acessível a todos

    11. Consórcio W3C

      • Fundada por Tim Berners-Lee em 1994
      • Desenvolve Recomendações abertas, até agora mais de 80 padrões
      • Engajado em educação, expansão e desenvolvimento de orientações
      • Um fórum neutro para construir consenso em torno de padrões web
    12. W3C: A evolução da Web para seu potencial máximo.

    13. Web Standards Project

      O Web Standards Project é um grupo formado em 1998 com o objetivo de promover os Padrões Web, assegurando desse modo um acesso simples e com menos custos para todos.

      Vem encorajando e persuadindo os fabricantes de Browsers a fornecerem suporte aos padrões, como o XHTML, CSS, ECMAScript (a versão standard do JavaScript) e o DOM.

    14. Mudança de Conceito

      A Web é dividida em três camadas:

      • Conteúdo (XHTML)
      • Apresentação (CSS)
      • Comportamento (Javascript)

      Devem ser desenvolvidas de forma independente, porém uma complementa a outra

    15. Sites sem padrões

      • Extensão da Mídia Impressa
      • Layout baseado em Tabelas
      • Conteúdo, Apresentação e Comportamento “aninhados”
      • Código Incompreensível

      Com padrões

      • Acessível de qualquer dispositivo
      • Layout baseado em CSS
      • Separação entre Conteúdo, Apresentação e Comportamento
      • Código Acessível
    16. Um “menu” a moda antiga

      <TABLE CELLSPACING=1 CELLPADDING=1 BORDER=0 WIDTH=400>
      <TBODY>
      <TR>
      <TD VALIGN=MIDDLE ALIGN=CENTER BGCOLOR=#006600 WIDTH=100>
      <FONT FACE=VERDANA SIZE=1><B><A HREF=item1.html>Item 1</A></B></FONT>
      </TD>
      <TD VALIGN=MIDDLE ALIGN=CENTER BGCOLOR=#006600 WIDTH=100>
      <FONT FACE=VERDANA SIZE=1><B><A HREF=item2.html>Item 2</A></B></FONT>
      </TD>
      <TD VALIGN=MIDDLE ALIGN=CENTER BGCOLOR=#006600 WIDTH=100>
      <FONT FACE=VERDANA SIZE=1><B><A HREF=item3.html>Item 3</A></B></FONT>
      </TD>
      <TD VALIGN=MIDDLE ALIGN=CENTER BGCOLOR=#006600 WIDTH=100>
      <FONT FACE=VERDANA SIZE=1><B><A HREF=item4.html>Item 4</A></B></FONT>
      </TD>
      </TR>
      </TBODY>
      </table>
      
    17. Um “menu” seguindo os padrões

      <ul>
      	<li><a href="item1.html" title="Página 1">Item 1</a></li>
      	<li><a href="item2.html" title="Página 2">Item 2</a></li>
      	<li><a href="item3.html" title="Página 3">Item 3</a></li>
      	<li><a href="item4.html" title="Página 4">Item 4</a></li>
      </ul>
      
    18. Um código Semântico

      Semântica refere-se ao estudo do significado.

      Quando utilizamos cada marcação para o que ela realmente foi criada, estamos construindo um “Código Semântico”

      Parar de pensar em “isso vem aqui, isso vai ali…” e pensar na “Estrutura da Informação” Criar uma “Marcação com Significado”

    19. Marcação Semântica

      • Usar tabelas apenas para dados tabulares
        <table>
        	<tr>
        		<th>Produto</th>
        		<th>Quantidade</th>
        		<th>Valor</th>
        	</tr>
        	<tr>
        		<td>Maçã</td>
        		<td>2 Quilos</td>
        		<td>R$4,30</td>
        	</tr>
        	<tr>
        		<td>Laranja</td>
        		<td>1 Duzia</td>
        		<td>R$2,50</td>
        	</tr>
        </table>
        
      • Usar Marcações corretas para títulos
        <h1>Título da página</h1>
      • Usar marcações para Listas Ordenadas e Listas Não Ordenadas
        <ol>
        	<li>Lista Ordenada 1<li>
        	<li>Lista Ordenada 2<li>
        	<li>Lista Ordenada 3<li>
        </ol>
        
        <ul>
        	<li>Lista Não Ordenada 1<li>
        	<li>Lista Não Ordenada 2<li>
        	<li>Lista Não Ordenada 3<li>
        </ul>
        
      • Usar marcações corretas para Ênfase Itálica e Ênfase Forte
        <em>Ênfase Itálica</em> e <strong>Ênfase Forte</strong>
      • Usar rôtulos para identificar campos de formulários
        <label for="nome">Nome</label>
        <input id="nome" type"text" />
        
    20. Vantagens da adoção dos padrões

      • Carregamento mais rápido
      • Menores custos com hospedagem
      • Melhor Consistência Visual
      • Redesign mais barato e eficiênte
      • Melhores resultados nos Mecanismos de Buscas
      • Maior acessibilidade e interoperabilidade
    21. Vantagem: Carregamento mais rápido

      Páginas com menos código, consequentemente com menos Kb

      Estando a Apresentação (CSS) e o Comportamentorão (Javascript) em arquivos separados, eles serão carregados apenas uma vez. A cada página acessada, esses arquivos já estarão no Cachê do Navegador, e não precisarão ser carregados novamente.

    22. Vantagem: Menores custos de hospedagem

      Páginas com menos Kb, além de mais leves para o usuário, ocupam menor espaço no servidor, e com isso se reduz a Largura de Banda utilizada

    23. Caso ESPN

      Mike Davidson foi o responsável pelo Redesenho do site da ESPN, seguindo os Padrões Web

      Média de redução de 50Kb por página.

      Com isso, a economia de banda foi de:

      • 2 Terabytes/dia
      • 61 Terabytes/mês
      • 730 Terabytes/ano
    24. Melhores resultados nas buscas

      Um dos fatores considerados pelos Mecanismos de Busca para a ordenação dos resultados é a Relevância das páginas encontradas com relação as palavras-chave buscadas

      Usar corretamente as marcações, como por exemplo <h1></h1> até <h6></h6> para títulos e <strong></strong> para Ênfase Forte, pode aumentar a relevância dos seus documentos na Web e melhorar o posicionamento nas buscas.

    25. Maior Acessibilidade

      A Camada de Conteúdo (HTML) bem estruturada e ordenada, possibilita o acesso através de Leitores de Tela.

      Criando Camadas de Apresentação separadas, podemos fornecer acesso ao site através de TVs, Celulares e PDA’s, fornecer versões para impressão, etc

      Páginas mais leves facilitam o acesso de conexões mais lentas (Dial Up)

    26. HTML

      • Criada por Tim Berners-Lee, baseada no SGML
      • Primeira especificação formal publicada em 1993, como uma aplicação formal para SGML
      • Desde 1996 tem suas especificações mantidas pela W3C
      • Apesar de ser uma “Linguagem de Marcação”, possui algumas Tags para formatação
      • Não possui uma sintaxe rigorosa.
    27. HTML

      O HTML sofreu várias mudanças em suas diferentes versões, com o objetivo de estender a linguagem para que pudesse acompanhar a evolução da Web e das tecnologias nela inseridas.

      A última versão especificada foi o HTML 4.1

      Existe atualmente um grupo de trabalho desenvolvendo o HTML 5

    28. XML

      • Criada para suprir a falta de flexibilidade do HTML
      • Separação do conteúdo da formatação
      • Simplicidade e Legibilidade, para humanos e computadores
      • Criação de arquivos para validação de estrutura (DTD, posteriormente também o padrão Schema)
      • Interligação de bancos de dados distintos
      • Concentração na estrutura da informação
    29. XML

      O desenvolvedor tem a possibilidade de criar suas próprias marcações

      Isso dá a ele flexibilidade e liberdade na hora da implementação do documento. Por outro lado, fica a cargo do desenvolvedor a tarefa de definir o significado dos elementos que ele utiliza (através de DTDs ou Schemas)

    30. Exemplo:
      <?xml version="1.0" encoding="UTF-8"?>
      <agenda-telefonica>
      	<contato tipo="pessoa">
      		<nome>João Aurélio</nome>
      		<endereco>Rua XV de Novembro, 1234</endereco>
      		<telefone>1234-5678</telefone>
      	</contato>
      	<contato tipo="pessoa">
      		<nome>Ana Maria</nome>
      		<endereco>Avenida São João, 111</endereco>
      		<telefone>4321-8765</telefone>
      	</contato>
      <agenda-telefonica>
      
    31. XHTML

      Uma reformulação da linguagem de marcação HTML baseada em XML

      Pode ser interpretado por qualquer dispositivo, independentemente da plataforma utilizada, pois as marcações possuem sentido semântico para as máquinas. XHTML deverá ser o sucessor do HTML

    32. HTML vs XHTML: Principais diferenças

      • As marcações devem ser escritas em letras minúsculas
      • As marcações devem estar corretamente aninhadas
      • Os documentos devem ser bem formados
      • Marcações de fechamento são obrigatórias
      • Elementos orfãos devem ser fechados
      • Diferenças para os atributos.
    33. As marcações devem ser escritas em letras minúsculas

      Exemplo errado:

      <P>Meu texto vem aqui!</P>

      Exemplo correto:

      <p>Meu texto vem aqui!</p>
    34. As marcações devem estar corretamente aninhadas

      Exemplo errado:

      <p>Meu texto vem <strong>aqui!</p></strong>

      Exemplo correto:

      <p>Meu texto vem <strong>aqui!</strong></p>
    35. Os documentos devem ser bem formados

      Todos os elementos XHTML devem estar corretamente aninhados seguindo a estrutura básica conforme abaixo:

      <html>
      	<head>
      	...
      	</head>
      	<body>
      	...
      	</body>
      </html>
      
    36. Marcações de fechamento são obrigatórias

      Exemplo errado:

      <p>Um parágrafo.<p>Outro parágrafo.
      

      Exemplo correto:

      <p>Um parágrafo.</p><p>Outro parágrafo.</p>
      
    37. Elementos orfãos devem ser fechados

      Exemplo errado:

      <br>
      <img src="imagem.gif" alt="minha imagem">
      

      Exemplo correto:

      <br />
      <img src="imagem.gif" alt="minhaimagem" />
      
    38. XHTML: Recomendações

      Aplicamos “Itálico” em um texto para dar ênfase. Ao invés da marcação <i></i>, use <em></em>, ou então <cite></cite> se for uma citação (de um livro, por exemplo)

      Para uma ênfase forte, ao invés de <b></b>, use a marcação <strong></strong>

      Um menu nada mais é do que uma lista de opções. Então, use as marcações de Lista não-ordenada

      <ul>
      	<li><a href="pagina1.html" title="Página 1">Link 1</a></li>
      	<li><a href="pagina1.html" title="Página 1">Link 1</a></li>
      	<li><a href="pagina1.html" title="Página 1">Link 1</a></li>
      	<li><a href="pagina1.html" title="Página 1">Link 1</a></li>
      	<li><a href="pagina1.html" title="Página 1">Link 1</a></li>
      </ul>
      
    39. CSS

      CSS é uma linguagem de estilo utilizada para definir a apresentação de documentos escritos em uma linguagem de marcação, como HTML ou XML.

      Seu principal benefício é prover a separação entre o formato e o conteúdo de um documento.

      Pode-se definir apresentações especificas para diferentes dispositivos (TVs, Celulares e PDA’s, Impressoras, etc) apenas criando folhas de estilo alternativas.

    40. CSS

      Pode mos inserir código CSS diretamente dentro de uma marcação (inline) ou entre as marcações <head></head> (Interno).

      Porém, a forma mais correta é criar um link para uma página que contém os estilos, procedendo de forma idêntica para todas as páginas do site.

      <link href="estilo.css" rel="stylesheet" type="text/css" />
      
    41. Exemplo da Sintaxe CSS

      seletor { propriedade: valor; }
      seletor
      Marcação HTML ou identificador
      propriedade
      O que será alterado
      valor
      O valor de alteração
      body {
      	font-family: Arial, Verdana, sans-serif;
      	background-color: #FFF;
      	margin: 5px 10px;
      	}
    42. Caso: CSS Zen Garden

      www.csszengarden.com

      O CSS Zen Garden tem como alvo entusiasmar, inspirar e encorajar a sep aração do Conteúdo (HTML) da Apresentação (CSS). Mostrar as enormes possibilidades de se obter belos Layout’s através do CSS. Como exemplo, podemos acessar os link’s e visualizar diversos Layout’s diferentes. O código HTML permanece o mesmo, a única coisa que muda é o arquivo CSS externo.

    43. Web Content Accessibility Guidelines

      Acessibilidade à Web significa que pessoas portadoras de necessidades especiais (incluindo as visuais, auditivas, físicas, de fala, cognitivas e neurológicas) pessoas idosas, usuários de diferentes Sistemas Operacionais, browsers antigos ou conexões lentas sejam capazes de usar a Web.

      Como guia de desenvolvimento acessível, a W3C fornece as “Diretivas para a acessibilidade de conteúdo da Web”

    44. Algumas Recomendações de Acessibilidade

      Fornecer conteúdo textual para imagens

      <img src ="imagem.png" alt="descrição da imagem" />

      Fornecer equivalente textual para Scripts

      <noscript>Equivalente textual</noscript>

      Links com título, tecla de atalho e ordem de navegação

      <a href="pagina.html" title="titulo informativo" accesskey="m" tabindex="1">Página de destino</a>

      Associar cada controle do formulário ao rótulo

      <label for="nome">Nome:</label>
      <input type="text" value="Entre com o nome" id="nome" />
    45. Exemplos de Tecnologia Assistivas

      • Dispositivos apontadores alternativos
      • Teclados alternativos
      • Ponteiras de cabeça
      • Sistema para entrada de voz
      • Ampliadores de telas
      • Leitores de tela com síntese de voz
      • Linhas braile
      • Impressoras braile
    46. Decreto n° 5.296 de 2 de dezembro de 2004

      Art. 47 . No prazo de até doze meses a contar da data publicação deste Decreto, será obrigatória a acessibilidade nos portais e sítios eletrônicos da administração pública na Rede mundial de computadores (internet), para o uso das pessoas portadoras de deficiência visual, garantindo-lhes o pleno acesso às informações disponíveis.

      Art. 8 – II – d. Barreiras nas comunicações e informações: qualquer entrave ou obstáculo que dificulte ou impossibilite a expressão ou o recebimento de mensagens por intermédio dos dispositivos, meios ou sistemas de comunicação, sejam ou não de massa, bem como aqueles que dificultem ou impossibilitem o acesso à informação.

    47. Caso Legal & General

      Um dos primeiros sites acessíveis produzidos por uma empresa comercial

      Todo o Redesenho foi baseado nas “Diretivas para acessibilidade de conteúdo da Web”, da W3C. Com isso, as taxas de conversão aumentaram 300%, custos de manutenção caíram 66%, listagem natural nas buscas aumentou 50%, e o tempo de carregamento da página caiu 75%.

    48. DTD

      Um padrão que define as partes de um documento, e descrevem como eles podem ou não ser usados, o que pode ser colocado em seus interiores, e se são ou não elementos obrigatórios do documento.

      As diversas declarações de componentes determinam como o documento será estruturado.

    49. XHTML 1.0 – Exemplo de DOCTYPE:

      Strict

      <!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
      "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

      Transitional

      <!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
      "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

      Frameset (fuja disso!)

      <!DOCTYPE HTML PUBLIC "//W3C//DTD HTML 1.0 Frameset//EN"
      "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
    50. Validadores

      http://validator.w3.org
      Validador de HTML, XHTML, XML e outras linguagens de marcação
      http://jigsaw.w3.org/CSS-validator/
      Validador de Folhas de Estilo CSS
      http://www.dasilva.org.br/
      Validador de Acessibilidade
      http://www.w3.org/QA/Tools/
      Outros validadores e ferramentas
    51. Tableless Vs Web Standards

      Tableless é um termo que ficou muito popular no Brasil, e que acaba por confundir muita gente.

      Tableless significa (resumidamente) um site desenvolvido sem o antiquado uso das tabelas para organizar o layout, e sim usando CSS.

      Criar um site Tableless não significa que esteja seguindo os Padrões Web, que vão muito além de um código válido, e tem preocupações maiores como a Semântica e a Acessibilidade.

    52. Então, daqui por diante…

      • Estude, estude e estude…e depois disso, estude mais um pouco
      • Utilize os padrões XHTML e CSS
      • Separe as camadas de Conteúdo, Apresentação e Comportamento
      • Valide seu código
      • Se preocupe com a Semântica e a Acessibilidade
      • Participe de comunidades e listas: Discuta, aprenda e ensine
    53. Referências

    

    Quem deve aprender HTML?

    HTML

    E você, acha que deve aprender HTML?

    Muito bem pessoas, como nesse Campus Party de 2009 eu fiquei encarregado de ministrar a palestra sobre “Web Standards” (23/01 as 15h00, nível avançado) e a Oficina “Seu desenho vai virar código, e agora?” (CSS para Designers, 24/01 as 20h00, nível básico), vou falar aqui de um assunto que é anterior a tudo isso.

    Trago uma discussão que partiu de alguns alunos meus do curso de “Habilidades Online”, organizado pela Escola de Comunicação do Portal Comunique-se, quando após uma aula de WordPress, eu comentava com eles sobre qual seria o tema das próximas aulas (HTML), e partiu deles o questionamento: porque um profissional que não trabalha com desenvolvimento de sites deveria aprender HTML?

    Recebendo a questão assim, sem muito tempo pra “molhar o bico” e bem na hora de ir embora, argumentei que o fato de conhecer HTML e saber como as páginas são feitas poderia ajuda-los a navegar de forma mais segura e aumentar a produtividade. Bem, eu concordo que isso por si só não foi uma resposta das mais convincentes, e os alunos (que na sua grande maioria são Jornalistas) não gostaram muito da ideia de aprender HTML, afirmando que prefeririam aprender mais coisas sobre WordPress ou até mesmo aprender Dreamweaver. Então, achei que devia convence-los!

    A primeira coisa que fiz foi jogar essa questão em algumas listas de discussão, para que outros profissionais que também usam a Internet como ferramenta de trabalho (não necessariamente Web Designers ou Programadores) colocassem seus pontos de vista, e consegui uma pequena discussão de aproximadamente 70 a 80 e-mails, em 3 listas de discussão.

    Alguns pessoas opnaram que nenhum profissional que usa a Internet como ferramenta precisaria aprender HTML (a não ser que trabalhasse desenvolvendo sites), porque hoje as ferramentas disponíveis (blog’s, CMS’s, etc) fornecem recursos para publicação de conteúdo sem a necessidade de se conhecer uma linguagem de marcação, através de editores do tipo WYSIWYG. Alguns usaram analogias do tipo “se eu compro uma TV, não quero saber como funciona por dentro, quero apenas apertar o botão e ve-la funcionar!”.

    Porém a grande maioria daqueles que opnaram se mostraram favoráveis a que “todo profissional que usa a Internet como ferramenta deveria sim conhecer HTML”. O primeiro comentário que achei mais interessante foi o do Jader Rubini, que disse:

    Assim como quem está na auto-escola tem que aprender noções de mecânica (ainda que ele leve o carro a um mecânico a cada barulho estranho que notar), todos os que trabalham com internet, direta ou indiretamente, devem ter noções básicas de HTML

    Seguindo o mesmo raciocínio automobilístico, o Marlos Ápyus comentou:

    Eu não sou mecânico, não construo nem conserto carros, mas é sempre bom que eu, enquanto motorista (ou seja, enquanto alguém que utiliza o carro para os mais variados fins) saiba ao menos conferir o nível do óleo, a calibragem dos pneus, trocar um pneu, etc

    Logicamente, nenhum profissional é obrigado a aprender HTML, assim como conhecer HTML não é nenhum pré-requisito para se trabalhar usando a Internet, porém é inegável que as pessoas que aprendem HTML (assim como as que aprendem sobre o que é o HTTP, FTP, POP e SMTP, DNS, TCP/IP, Banco de Dados, etc) terão uma navegação mais segura e um melhor desempenho. Cansei de ver profissionais que trabalham com Internet não saberem postar um link em um e-mail, ou não saberem o que fazer quando não conseguem acessar um site em que o navegador indica que o “Certificado de segurança” expirou ou é inválido, ou então não entenderem o porque ao clicar em um link de contato em uma página não aparece um formulário, mas sim uma janela de um tal de “Outlook”, que eles nem sabiam pra que servia.

    Claro que não estamos falando de “usuários finais” na forma mais específica, mas daqueles que realmente usam a Internet como ferramenta de trabalho. Conhecer HTML ajudará a entender a demanda de trabalho daqueles profissionais de Desenvolvimento que fazem parte da sua equipe, ou que você contratou para fazer um “sitezinho”, para entender porque em certos casos não é aconselhável usar “Flash” em todo o site por questões de Acessibilidade, ou até mesmo para conhecer o destino de um link olhando na “barra de status”, e não clicar caso o final da URL seja um “.exe“.

    HTML não é nenhum “bicho de sete cabeças”. É lógico que para ser um HTMLer de respeito exige esforço, da mesma forma que exigia-se para ser um datilografo de primeira linha. Aqueles que usavam a máquina de escrever com apenas dois dedos são capazes de aprender algumas tags de HTML.

    E você que lê isso agora, acha que é importante que os novos profissionais, aqueles que usam a Internet como ferramenta de trabalho, aprendam HTML?

    Return top