Tabelas
Last updated
Was this helpful?
Last updated
Was this helpful?
Uma tabela é um conjunto estruturado de dados constituído por linhas e colunas. Uma tabela permite consultar, fácil e rapidamente, valores que indiquem alguma relação entre diferentes tipos de dados, por exemplo, uma pessoa e a sua idade, ou os dias da semana num horário de uma piscina.
As tabelas são definidas com a tag <table>
. Uma tabela é dividida em linhas (com a tag <tr>
), e cada linha é dividida em células de dados (com a tag <td>
). Além dessas tags, <th>
é usada ao invés de <td>
quando a célula contém o cabeçalho da coluna.
Imagine a tabela abaixo, mostrando as bandas de indie rock mais ouvidas do juntamente com o país onde a banda surgiu. Em seguida, veja o código que usamos para construi-la.
Às vezes teremos a necessidade de que uma célula de uma tabela ocupe mais de uma coluna ou linha. É o que chamamos de células "mescladas" em programas como Excel ou até mesmo o Word. O exemplo anterior, reformulado para células em múltiplas linhas e colunas (coluna país) pode ser visto abaixo para um melhor entendimento.
Para isso utilizaremos os atributos colspan
e rowspan
nas células da tabela. Elas servem para expandir as células fazendo com que uma única célula ocupe mais de uma linha (rowspan
) ou mais de uma coluna (colspan
).
Por muitos anos, o elemento <table>
foi usado para criar layouts de páginas inteiras. Isso é extremamente desencorajado nos dias de hoje. Layouts com tabelas reduzem acessibilidade de utilizadores com deficiências visuais, uma vez que tabelas não são uma ferramenta adequada para o layout, e a marcação é mais complexa do que se recorresse a técnicas de layout de CSS, a informação dada pelos leitores de tela será confusa para os seus utilizadores.
Perceba que usamos apenas um elemento <table>
que contem todas as informações da tabela. Para cada linha, usamos um elemento <tr>
que contem seus elementos. No caso da primeira linha, usamos <th>
e nas demais, a tag <td>
. Veja no exemplo do que a tabela não está visualmente igual a que mostramos aqui, isso acontece porque ainda não estilizamos ela com CSS, mas nós chegaremos lá durante nossa disciplina.