Posts tagged: html

Conheça o maravilhoso mundo do HTML 5

Pra fechar minha série de posts sobre os substitutos do HTML, vou falar agora do HTML 5, desenvolvido por um grupo liderado pela Apple, Opera e Mozilla. Senta que lá vem história texto.

Se você chegou agora, pode ser interessante ler meus textos anteriores sobre o assunto:

A primeira coisa que preciso dizer é em que o HTML 5 é diferente do XHTML 2. Sua maior preocupação não é separar definitivamente o conteúdo da apresentação. O HTML 5 é feito para ser uma linguagem de desenvolvimento de aplicações online. Nada de se preocupar com XML, nada de evitar usar um elemento só porque ele também interfere na aparência do conteúdo.

Pro inferno com as frescuras, eu quero é sites bons.

Esta nova versão do HTML começou a ser desenvolvida em um grupo fora do grande W3C. Fizeram isso justamente porque o W3C estava demorando demais pra criar uma nova versão (0 xhtml 1.0 foi publicado em 2000) e eles estavam trabalhando em algo que não resolvia os problemas dos sites ricos que temos hoje em dia.

O HTML 5 é feito para facilitar o desenvolvimento de aplicações web (e não apenas sites simples) e padronizar as coisas em todos os browsers.

Vamos ver todas as coisas legais que o HTML 5 traz pra nós.

Elementos estruturais

Aquele monte de <div> que a gente usa pra montar a estrutura do site vai ter um bom substituto agora. Pra facilitar uma padronização e permitir que os elementos tenham significado, criaram vários elementos estruturais que vão funcionar como o <div>, mas cada um com seu próposito.

Por exemplo, teremos o <header> para criar o cabeçalho do site (geralmente onde fica o logotipo, etc). Temos o <nav> para definir o menu de navegação, <article> para colocar o conteúdo principal do site, <aside> pra criar uma seção lateral, e <footer> pro rodapé.

Estrutura de um site padrão

Estrutura de um site padrão

Read more »

Redes Sociais:
  • del.icio.us
  • TwitThis
  • Google
  • E-mail this story to a friend!
  • Rec6
  • StumbleUpon
  • Technorati
  • LinkedIn
  • Facebook
  • Live
  • MySpace
  • Tumblr

Use a Cabeça! (Head First) HTML com CSS & XHTML

Use a Cabeça (Head First) HTML COM CSS & XHTML

Use a Cabeça! (Head First) HTML com CSS & XHTML

Há um bom tempo atrás eu comprei o livro Use a Cabeça! (Head First) HTML com CSS & XHTML, e apesar de já ter começado a lê-lo várias vezes, somente no início desse ano eu tomei vergonha na cara e o li do início ao fim. Sendo assim, aqui está a minha opinião sobre o livro.

Assim como os demais títulos da série Use a Cabeça, esse livro tem uma abordagem bastante inteligente, focada num texto fácil e extremamente agradável de ler. Esta característica, combinada com algumas outras, faz com que o nosso cérebro preste mais atenção no conteúdo, além de aumentar as chances de memorização, conforme os livros da série explicam em seus capítulos introdutórios.

Outra tática inteligente do livro é dar exemplos para cada novo tópico apresentado, só que limitando o escopo, de forma que os exemplos sejam bem simples e diretos. Isso evita que o leitor fique cansado lendo longos exemplos onde apenas um pequeno trecho é realmente relevante.

Essa abordagem mais direta também é aplicada nos exercícios, que aparecem com razoável frequência, mas sempre bem focados no tópico que está sendo discutido no momento. Além disso, muitos dos exercícios são divertidos, e o obrigam a pensar fora da caixa, principalmente os exercícios de palavras cruzadas, presente em quase todos os capítulos.

Uma outra característica que torna o livro mais eficiente na tarefa de ensinar o conteúdo é o fato dele ser redundante sobre muitas coisas importantes. Dessa forma, alguns tópicos são apresentados mais de uma vez, só que em contextos e de formas diferentes, muitas vezes adicionando uma pequena novidade, e facilitando que o assunto em questão seja memorizado através da ocorrência repetida.

Ainda sobre a didática do livro, é interessante notar que a série segue essa fórmula não porque está dando certo, ou baseada em achismo, mas porque estudos relacionados a metacognição indicam que as técnicas de apresentação de conteúdo usadas no livro estão entre as mais eficientes.

Em relação ao conteúdo propriamente dito, é impossível não destacar positivamente a preocupação do livro em focar desde o início a separação da estrutura e da apresentação de uma página Web. Para ter uma idéia do quão engajados eles são em relação a este assunto, já no capítulo que explica sobre a metodologia da série, ou seja, antes mesmo do primeiro capítulo com conteúdo sobre HTML, XHTML e CSS, há uma breve e clara explicação sobre a função dessas tecnologias.

Adicionalmente, o livro menciona com frequência que devem ser utilizados os elementos do HTML/XHTML que melhor representarem o conteúdo que está sendo marcado, enfatizando assim a importância da semântica no desenvolvimento de uma página Web.

No entanto, nada é perfeito, e este livro não é diferente. Pra começar, a tradução é péssima. A Alta Books, que é a editora do livro, fez um trabalho extremamente descuidado na tradução, o que não me surpreendeu, já que o único outro livro traduzido que eu tenho deles, o Use a Cabeça! Java, também tem uma tradução sofrível.

Aliás, ao meu ver, este é o maior defeito do livro, pois realmente complica a compreensão do texto por parte de quem não sabe nada sobre HTML, XHTML e CSS, sendo que este é exatamente o público alvo do livro. Como exemplo deste péssimo trabalho de tradução, eu posso citar nomes de elementos sendo traduzidos, sendo o elemento head o campeão no número de ocorrências.

Outro erro bizarro está nos exemplos de regras do CSS. A extrema maioria delas não possuem um par de chaves tradicional, ou seja, { e }, e sim um bizonho par de chaves { e {. Exemplo:

p
{
  color: maroon;
{

O exemplo acima foi tirado do próprio livro, no capítulo que começa a explicar o CSS. Ou seja, quem nunca ouvir falar sobre a linguagem vai ficar bem confuso sobre a forma correta de combinar as chaves. E o mais curioso é que a versão original do livro não contém estes erros, portanto, a Alta Books fez besteira até onde nem precisava traduzir.

Contudo, nem todos os defeitos do livro são culpa da Alta Books, uma vez que há também alguns poucos deslizes na versão original em inglês. Por exemplo, o livro usa com certa frequência o elemento <br />, o que, ao me ver, é errado, uma vez que este elemento insera uma quebra de linha, o que caracteriza uma função relacionada a apresentação, não representando absolutamente nada em relação à semântica da página Web.

Outro erro relacionado ao uso incorreto de um elemento no que diz respeito a semântica está presente no exemplo abaixo:

  <h1>BEVERAGES</h1>

  <p>House Blend, $1.49</p>

  <p>Mocha Cafe Latte, $2.35</p>

  <p>Cappuccino, $1.89</p>

  <p>Chai Tea, $1.85</p>

Neste caso, novamente de acordo com a minha opinião, há vários elementos p sendo usados para representar itens de uma lista, portanto o correto seria envolver toda a lista com o elemento ul, que representa listas não ordenadas, e então usar o elemento para itens de lista, li, para cada bebida individual. O resultado seria esse:

  <h1>BEVERAGES</h1>

  <ol>
    <li>House Blend, $1.49</li>
    <li>Mocha Cafe Latte, $2.35</li>
    <li>Cappuccino, $1.89</li>
    <li>Chai Tea, $1.85</li>
  </ol>

Mas nesse caso podemos deixar passar, já que na verdade este exemplo está presente na página de recursos do livro.

Enfim, o Use a Cabeça! (Head First) HTML com CSS & XHTML é um excelente livro. Ainda que ele cometa alguns poucos deslizes, é de longe o melhor livro que eu conheço para quem quer aprender HTML, XHTML e CSS, uma vez que ensina desde o início a desenvolver páginas Web da maneira correta: usando o HTML ou XHTML para estruturar o conteúdo da página, respeitando a semântica de cada elemento, e definindo a apresentaçao através do CSS.

P.S.: Uma dica para quem se interresou pelo livro: compre a versão original e se livre de uma péssima tradução.

Redes Sociais:
  • del.icio.us
  • TwitThis
  • Google
  • E-mail this story to a friend!
  • Rec6
  • StumbleUpon
  • Technorati
  • LinkedIn
  • Facebook
  • Live
  • MySpace
  • Tumblr

Os Elementos Perdidos do HTML/XHTML

Se você é um desenvolvedor Web que faz o seu dever de casa, já deve estar cansado de saber que o HTML/XHTML serve para estruturar o conteúdo de uma página Web. Sendo assim, você usa elementos como p para parágrafos, h1, h2, h3, h4, h5 e h6 para títulos, ol para listas ordenadas, entre outros igualmente populares. No entanto, existem alguns outros elementos com tanto valor semântico quanto estes, mas que são bem menos conhecidos. Veja alguns destes abaixo:

address

O elemento address define um conteúdo como uma informação de contato do autor ou dono da página Web.

Avenida Expedicionário José Amáro, número 500, Apartamento 13, Vila São Luís, Duque de Caxias/RJ.

del

Tem a função de marcar um texto que foi removido da página.

<p>
  O Jogo Final Fantasy XIII é a continuação da famosa saga de RPG da Square
  ,sendo o seu lançamento exclusivo para o Playstation 3.
</p>

ins

Especifica um texto que foi inserido no documento, sendo muitas vezes usado em conjunto com o elemento del, como forma de corrigir uma informação anterior.

  <p>
    A atual versão do Rails é a 2.22.3.2.
  </p>

abbr

O elemento abbr serve para marcar um texto que é a forma abreviada de uma frase ou de uma expressão composta, ou seja, ele marca abreviações. Adicionalmente, é bom utilizar o atributo title neste elemento para especificar a palavra ou frase inteira que está sendo abreviada. Além disso, é válido mencionar que este elemento não é suportado pelo Internet Explorer 6.

  <p>
    O <abbr title = "EXtensible HyperText Markup Language">XHTML</abbr> deve ser
    usado para estruturar o conteúdo.
  </p>

acronym

Este elemento tem a função semântica de identificar acrônimos, que são um tipo especial de abreviação, onde cada letra do acrônimo corresponde à primeira letra de uma das palavras da expressão ou frase abreviada.

<p>
  Para definir a apresentação de uma página Web você deve usar o
  <acronym title = "Cascading Style Sheets">CSS</acronym>.
</p>

cite

Define o autor ou a fonte de uma citação, podendo, e devendo, ser usado em conjunto comos elemento q e blockquote, que identificam a citação em si.

<p>
  Conforme Martin Fowler disse:
</p>

<blockquote>
  <p>
    Any fool can write code that a computer can understand.
    Good programmers write code that humans can understand.
  </p>
</blockquote>

dl, dt e dd

Estes elementos são usados para criar listas de definição em uma página Web, sendo muito usados, por exemplo, para a criação de FAQs. O elemento dl representa a lista em si, enquanto os elementos dt e dd representam o termo a ser definido e a sua definição, respectivamente.

<dl>
  <dt>Ruby</dt>
  <dd>Linguagem de script orientada a objetos e criada por Yukihiro Matsumoto.</dd>

  <dt>Ruby on Rails</dt>
  <dd>Framework Web desenvolvido com a linguagem de programação Ruby</dd>

  <dt>ActiveRecord</dt>
  <dd>Um dos principais sub-frameworks do Ruby on Rails</dd>
</dl>

dfn

O elemento dfn é utilizado para marcar um termo que está sendo definido, sendo que pode-se usar o atributo title para resumir a sua definição. A diferença entre o dfn e uma lista de definição, é que o primeiro é utilizado para marcar uma definição isolada no texto, enquanto o segundo agrupa várias definições em uma lista.

<p>
  O <dfn title = "Framework Ruby">Merb</df> é um framework Web escrito em Ruby.
</p>

Conclusão

Existem muitos elementos no XHTML/HTML além daqueles que são amplamente conhecidos, e uma vez que estes elementos adicionais são mais precisos quanto à semântica do seu conteúdo, não há porquê não usá-los. Dessa forma, suas páginas Web ficarão mais corretas semanticamente, o que significa uma maior acessibilidade.

Além disso, não se limite aos elementos extras mostrados aqui, uma vez que a idéia deste post era apenas mostrar através de exemplos que quase sempre há um elemento mais preciso para marcar o seu conteúdo. Portanto, quando tiver dúvidas se está usando o elemento correto em sua página Web, pesquise pare descobrir se não há uma opção mais adequada.

Por fim, embora alguns destes elementos possuam um estilo padrão definido pelo browser, a regra de ouro continua valendo, ou seja, para definir a apresentação deles você deve usar o CSS.

Redes Sociais:
  • del.icio.us
  • TwitThis
  • Google
  • E-mail this story to a friend!
  • Rec6
  • StumbleUpon
  • Technorati
  • LinkedIn
  • Facebook
  • Live
  • MySpace
  • Tumblr

WordPress Themes