Versão original: Lists | Traduzido por: De Sena Viegas


10 Listas

Conteúdos

  1. Introdução às listas
  2. Listas não ordenadas (UL),Listas ordenadas (OL) e itens contidos numa lista (LI)
  3. Listas de definição: os elementos DL, DT e DD
    1. Representação visual das listas
  4. Os elementos DIR e MENU

10.1 Introdução às listas

O HTML oferece-nos vários mecanismos destinados à especificação das listas de informação. Todas as listas devem conter mais do que um elemento. As listas poderão conter:

A lista anterior, por exemplo, é uma lista não ordenada, definida através do elemento UL:

<UL>
<LI>Informação não ordenada
<LI>Informação ordenada
<LI>Definições
</UL>

Uma lista ordenada, definida através do elemento OL, deverá conter informações referentes aos elementos enfatizantes da respectiva ordem, como por exemplo nesta receita:

  1. Misturar por completo os ingredientes a seco.
  2. Adicionar os ingredientes líquidos.
  3. Mexer ininterruptamente durante 10 minutos.
  4. Levar ao forno e deixar cozinhar uma hora a 300 graus.

As listas de definição, criadas através do elemento DL, consistem geralmente numa série de pares terminológicos termo/definição (embora possam as listas de definição ter uma outra aplicação). Poder-se-á usar uma lista de definição, por exemplo, para se fazer publicidade a um determinado produto:

Redução dos custos
A nova versão deste produto custa significativamente menos do que a versão anterior!
De fácil utilização
Nós alterámos o produto de forma a que você o possa usar mais facilmente!
Não representa qualquer risco para as crianças
Você poderá deixar os seus filhos sózinhos na sala, sem temer que eles se possam aleijar (no entanto, sem garantia).

definido no HTML como:

<DL>
<DT><STRONG>Redução dos custos</STRONG>
<DD>A nova versão deste produto custa significativamente menos do que a versão anterior!

<DT><STRONG>De fácil utilização</STRONG>
<DD>Nós alterámos o produto de forma a que você o possa usar mais facilmente!
<DT><STRONG>Não representa qualquer risco para as crianças</STRONG>
<DD>Você poderá deixar os seus filhos sózinhos na sala,
sem temer que eles se possam aleijar (no entanto, sem garantia).
</DL>

As listas poderão ainda ser integradas num documento, podendo ainda usar-se conjuntamente diferentes tipos de listas. O exemplo que se segue baseia-se numa lista de definição, contendo uma lista não ordenada (os ingredientes) e uma lista ordenada (o procedimento):

Os ingredientes:
O procedimento:
  1. Primeiro, misturar bem os ingredientes a seco.
  2. Adicionar os ingredientes líquidos.
  3. Mexer ininterruptamente durante 10 minutos.
  4. Levar ao forno e deixar cozinhar uma hora a 300 graus.
Notas:
Poder-se-á improvisar um pouco, adicionando-se algumas passas de uva.

A apresentação exacta dos três tipos de listas depende em muito do agente. Nós aconselhamos os autores a não usarem as listas unicamente como forma de fazer sobressaír o texto. Este é um pormenor estilístico e mais propriamente processado através das folhas de estilo.

10.2 Listas não ordenadas (UL), Listas ordenadas (OL) e os itens ou tópicos nelas contidos (LI)

<!ELEMENT UL - - (LI)+                 -- lista não ordenada -->
<!ATTLIST UL
  %attrs;                              -- %coreattrs, %i18n, %events --
  >
<!ELEMENT OL - - (LI)+                 -- lista ordenada -->
<!ATTLIST OL
  %attrs;                              -- %coreattrs, %i18n, %events --
  >

"tag" de abertura: requerida
"tag" de encerramento: requerida

<!ELEMENT LI - O (%flow;)*             -- item ou tópico contido na lista -->
<!ATTLIST LI
  %attrs;                              -- %coreattrs, %i18n, %events --
  >

"tag" de abertura: requerida
"tag" de encerramento: opcional

Definições do atributo

type  =  informação referente ao estilo [CI]
Deprecado. Este atributo estabelece o estilo de um item contido numa lista. Os valores actualmente disponíveis destinam-se aos agentes visuais. Os valores possíveis são descritos mais abaixo (lado a lado com a informação do caso – maiúsculas e minúsculas, caso sensível ou não).
start = number [CN]
Deprecado. Apenas para o elemento OL Este atributo especifica o número inicial do primeiro item contido numa lista ordenada. Por defeito, o "1" é o número de abertura. Note-se que, ao passo que o valor deste atributo nos é dado sob a forma de um número inteiro, a marca a ele correspondente poderá não ser numérica. Seguindo a mesma lógica, quando o estilo do item contido na lista for uma letra maiúscula do alfabeto latino (A, B, C, ...), start=3 significa "C". Quando o estilo for um numeral romano em letras minúsculas, start=3 significa "iii", e por aí adiante.
value = number [CN]
<a href="conform.html#deprecated"><strong>Deprecado</strong></a>. Apenas para o elemento LI Este atributo especifica o número do actul item. Note-se que, ao passo que o valor deste atributo nos é dado sob a forma de um número inteiro, a marca a ele correspondente poderá não ser numérica (consulte as notas referentes ao atributo start).
compact [CI]
Deprecado. Aquando usado, este atributo boleano ordena aos agentes visuais a apresentação da lista de uma forma mais compacta. A interpretação deste atributo dependerá do tipo de agente visual que for usado.

Atributos definidos noutros lugares:

As listas ordenadas e as listas não ordenadas são-nos apresentadas de uma forma idêntica, com a excepção dos agentes visuais numerarem os itens contidos nas listas ordenadas. Os agentes poderão apresentar esses números de várias maneiras. As listas não ordenadas não são numeradas.

Ambos os tipos de lista são constituídos por sequências de itens, os quais são definidos pelo elemento LI (cuja "tag" de encerramento poderá ser omitida).

O exemplo que se segue ilustra-nos a estrutura básica de uma lista:

<UL>
   <LI> ... primeiro item contido na lista...
   <LI> ... segundo item contido na lista...</em>
   ...
</UL>

As listas poderão ainda ser encaixadas:

EXEMPLO DEPRECADO:

<UL>
     <LI> ... Nível um, número um...
     <OL>
        <LI> ... Nível dois, número um...
        <LI> ... Nível dois, número dois...
        <OL start="10">
           <LI> ... Nível três, número um...
        </OL>
        <LI> ... Nível dois, número três...
     </OL>
     <LI> <em>... Nível um, número dois...</em>
</UL>

Detalhes referente à ordem dos números: nas listas ordenadas, não é possível continuar automaticamente a numeração a partir de uma lista anterior nem tão-pouco esconder a numeração de alguns dos itens de uma lista. Contudo, os autores poderão fazer o "reset" do número do item, através da aplicação do atributo value. A numeração dos itens subsequentes continuará a partir do novo valor. Por exemplo:

<ol>
<li value="30"> torna este item no número 30.
<li value="40"> torna este item no número 40.
<li> torna este item no número 41.
</ol>

10.3 Listas de definição : os elementos DL, DT e DD

<!-- listas de definição - DT para o termo, DD para a sua definição -->

<!ELEMENT DL - - (DT|DD)+              -- lista de definição -->
<!ATTLIST DL
  %attrs;                              -- %coreattrs, %i18n, 
%events --
  >

"tag" de abertura: requerida
"tag" de encerramento: requerida

<!ELEMENT DT - O (%inline;)*           -- definição do termo -->
<!ELEMENT DD - O (%flow;)*             -- descrição da definição -->
<!ATTLIST (DT|DD)
  %attrs;                              -- %coreattrs, %i18n, 
%events --
  >

"tag" de abertura: requerida
"tag" de encerramento: opcional

Atributos definidos noutros lugares:

As listas de definição diferem apenas ligeiramente dos outros tipos de listas, no sentido que os itens nela contidos são compostos por duas partes: um termo e uma descrição. O termo é-nos dado pelo elemento DT e é restringido ao conteúdo "inline". A descrição é-nos dada através do elemento DD, o qual contém conteúdo de bloco.

Eis aqui um exemplo:

  
<DL>
  <DT>Dweeb
  <DD>pessoa jovem e dinâmica que poderá amadurecer
    e tornar-se num <EM>banana</EM> ou num <EM>idiota</EM>

  <DT>Hacker
  <DD>um programador inteligente

  <DT>banana
  <DD>tecnicamente brilhante, mas socialmente inapto.

</DL>

Eis mais um exemplo, desta feita contendo vários termos e várias descrições:

<DL>
   <DT>Carácter
   <DT>Carácter
   <DD> personalidade inerente a um determinado
              indivíduo. O espírito ou a alma da coisa.
   <DD> símbolo tipográfico ou em branco;
              letra, vogal ou consoante;
              símbolo;
</DL>

Uma outra aplicação do elemento DL poderá ser, por exemplo, a marcação de diálogos, nomeando com cada DT um sujeito, e cada DD contendo as suas palavras.

10.3.1 Representação visual das listas

Nota: a informação que se segue descreve o comportamento de alguns dos correntes agentes visuais no que se refere à formatação das listas. As folhas de estilo permitem um melhor controlo sobre os aspectos relacionados com a formatação da lista (por exemplo, a numeração, convenções dependentes do tipo de linguagem ou idioma utilizado, recortamento dos texto, etc.).

De uma forma, os agentes visuais recortam as listas que foram encaixadas segundo o seu grau de integração.

O atributo type especifica as opções de representação nos agentes visuais para os elementos OL e UL.

No elemento UL, os três valores possíveis para o atributo type são nomeadamente disc, square e circle. O valor atribuído por defeito depende do nível de encaixamento ou integração da lista corrente. Esses valores são um caso não sensível.

A forma como cada valor é apresentado visualmente depende do agente usado pelo utente. Os agentes visuais deverão tentar representar o valor "disc" como sendo um círculo preenchido a negro, o valor "circle" como sendo um círculo vazio e o valor "square" como sendo um quadrado vazio.

Os agentes gráficos deverão poder repreentar os valores da seguinte forma:

A possible rendering of a discpara o valor "disc"
A possible rendering of a circlepara o valor "circle"
A possible rendering of a squarepara o valor "square"

Relativamente ao elemento OL, os valores possíveis para o atributo type são sumarizados na tabela mais abaixo (caso sensível):

Tipo Estilo de numeração
1 numeros arábicos 1, 2, 3, ...
a letras minúsculas a, b, c, ...
A letras maiúsculas A, B, C, ...
i números romanos em letras minúsculas i, ii, iii, ...
I números romanos em letras maiúsculas I, II, III, ...

Note-se que atributo type é deprecado e os estilos das listas deveriam ser definidos através das folhas de estilo.

Por exemplo, através do uso de CSS, poder-se-á especificar que o estilo dos números dos elementos contidos numa lista numerada corresponde a números romanos escritos em letras minúsculas. No fragmento que se segue, cada elemento OL, pertencente à classe "withroman", terá números romanos à frente da sua lista de itens.

<STYLE type="text/css">
OL.withroman { list-style-type: lower-roman }
</STYLE>
<BODY>
<OL class="withroman">
<LI> Passo um ...
<LI> Passo dois ...
</OL>
</BODY>

A apresentação das listas definição depende também do agente que é usado pelo utente. O exemplo:

<DL>
  <DT>Dweeb
  <DD>pessoa jovem e dinâmica que ao amadurecer se poderá
    tornar num <EM>banana</EM> ou num <EM>idiota</EM>

  <DT>Hacker
  <DD>um programador inteligente

  <DT>Banana
  <DD>tecnicamente brilhante, mas socialmente um zero à esquerda.
</DL>

poderá ser representado da seguinte maneira:

Dweeb
       pessoa jovem e dinâmica que ao amadurecer poderá tornar-se num Banana ou num Idiota
Hacker
       um programador inteligente 
Banana
       pessoa brilhante do ponto de vista técnico, mas socialmente um zero à esquerda.

10.4 Os elementos DIR e MENU

Os elementos DIR e MENU estão deprecados.

Veja a DTD Transitiva, a fim de obter a definição formal.

Atributos definidos noutros lugares:

O elemento DIR foi concebido com vista a ser usado na criação de listas de directorias conendo várias colunas. O elemento MENU foi concebido para ser usado em listas de menus contendo apenas uma coluna. Ambos os elementos possuem a mesma estrutura que o elemento UL, diferindo apenas no modo como são representados. Na prática, o agente representa uma lista DIR ou MENU da mesma forma que uma lista UL.

Recomendamos-lhe encarecidamente o uso do elemento UL na vez dos referidos elementos.