Non e` che ti agevoli il lavoro usando strutture sbagliate: semmai te lo complichi.
Ma occorre pensare che non stai facendo la lista della spesa che dopo due ore la butti: stai realizzando una pagina Web, che "vive" anni (in qualche caso anche dieci, venti, ...)
E pensa che il Web sta diventando sempre piu` "semantico": vuol dire che la pagina verra` interpretata non solo da un utente che interpreta il video, ma puo` essere "vista" anche da un cieco, anche da uno strumento automatico: questi non capiranno il signficato se non usi i tag corretti.
La tua e` una lista di definizione. Va realizzata tramite <dl>, <dt>, <dd>:
codice:
<dl>
<dt>pasta</dt><dd>50</dd>
<dt>pane</dt><dd>40</dd>
...
</dl>
Questi sono tutti oggetti di tipo block, esattamente come i <div> che impropriamente vorresti usare.
Ora si presenta il problema di sistemarli tutti su una riga: ci sono due possibilta`:
- li trasformi in oggetti inline (e allora perdono le dimensioni proprie)
- li affianchi con il float (e in tal caso puoi formattarli circa come se fossero in una tabella)
La scelta dipende da te e dal risultato pratico che vuoi ottenere:
codice:
/* oggetti inline */
dd {
/* ... formattazione del blocco contenitore */
}
dt {
display: inline;
/* altre formattazioni (colore, carattere, ...) */
}
dd {
display: inline;
/* altre formattazioni (colore, carattere, ...) */
}
/* oggetti block */
dd {
width: ...;
/* ... altre formattazioni del blocco contenitore */
}
dt {
float: left;
width: ...; /* oppure min-width, con l'hack per IE6 */
margin: ...;
display: inline; /* questo serve solo per far contento IE6 */
/* altre formattazioni (colore, carattere, ...) */
}
dd {
float: left;
width: ...; /* oppure min-width, con l'hack per IE6 */
margin: ...;
display: inline; /* questo serve solo per far contento IE6 */
/* altre formattazioni (colore, carattere, ...) */
}