La risposta è semplicemente per trasmettere informazioni e per strutturare il tuo documento .
Quando usi span e div, il documento non ha una struttura. Non ci sono liste, senza paragrafi, senza tabelle, senza collegamenti ipertestuali. Niente. Non ha davvero senso scegliere HTML come linguaggio di markup e quindi ignorare il vocabolario che offre per esprimere e strutturare il contenuto. La struttura è la parola importante qui btw. HTML è per la strutturazione che non viene visualizzata. Ecco a cosa serve CSS.
Se marcisci semanticamente il tuo codice, dai ai lettori umani e alle macchine la possibilità di comprendere i dati all'interno dei tuoi elementi. Se utilizzi gli elementi span e div fino in fondo, non avrai queste informazioni extra e non sarà possibile dedurli dai soli valori.
Allo stesso modo, se voglio raschiare i siti web e solo estrarre i titoli per creare il sommario per loro, il mio ragno dovrebbe sapere qual è il titolo. Non può farlo senza gli elementi appropriati.
Ultimo ma non meno importante, se si utilizzano solo le div e span, si avrà difficoltà a progettarle con i CSS. I selettori CSS funzionano sulla struttura del tuo documento e, se questa è per lo più una struttura ambigua, le regole CSS non riescono ad applicarsi. Come decidi se div div div
si riferisce effettivamente a table tr td
o body ul li
? Dovresti aggiungere classi e id allora, ma poi stai reinventando la ruota.
Vedi anche la raccomandazione del W3C
Using the appropriate semantic elements will make sure the structure is available to the user agent. This involves explicitly indicating the role that different units have in understanding the meaning of the content. The nature of a piece of content as a paragraph, header, emphasized text, table, etc. can all be indicated in this way. In some cases, the relationships between units of content should also be indicated, such as between headings and subheadings, or amongst the cells of a table. The user agent can then make the structure perceivable to the user, for example using a different visual presentation for different types of structures or by using a different voice or pitch in an auditory presentation.