In realtà il div occupa tutto lo spazio orizzontale perché di default ha come css display:block e non per il fatto di rappresentare una sezione...
In realtà il div occupa tutto lo spazio orizzontale perché di default ha come css display:block e non per il fatto di rappresentare una sezione...
"Le uniche cose che sbagli sono quelle che non provi a fare."
Atipica
Io non ho contraddetto il w3c...
"The <div> tag defines a division or a section in an HTML document. "
Dove in questa frase, che definisce il contenuto semantico del tag DIV, ci sta scritto che una division o section deve essere mostrata visivamente come un riquadro orizzontale che occupi tutto lo spazio disponibile, io non lo so proprio...
Anzi, uno degli elementi fondanti della logica di html e css è PROPRIO che html si occupa di semantica, ovvero del significato logico dei vari tag, mentre css si occupa di presentazione, ovvero di come questi contenuti vengono mostrati a schermo.
Ed in effetti, basta scrivere nel css
div {display:table-cell;}
per ottenere una div che guarda caso non occupa più tutto lo spazio orizzontale!
Per rispondere a Creat, SEMPRE sono i fogli di stile a decidere come un tag, QUALSIASI tag viene mostrato a schermo...
Per esempio:
<div style="display:table">
<div style="display:table-cell">Cella A</div>
<div style="display:table-cell">Cella B</div>
</div>
Produrrà ESATTAMENTE lo stesso aspetto visivo di:
<table>
<td>Cella A</td>
<td>Cella B</td>
</table>
Anche se i tag sono completamente diversi; questo perchè esiste una cosa che si chiama "foglio di stile di default" che, tra le tante cose, guarda caso contiene anche le seguenti regole:
div {display:block;}
table {display:table;}
td {display:table-cell;}
"Le uniche cose che sbagli sono quelle che non provi a fare."
Atipica