Bootstrap – mantenuto da Twitter – è uno dei framework più popolari per realizzare dei design responsivi: io stesso ne seguo lo sviluppo su GitHub, perché molti professionisti affermati contribuiscono al progetto e integrano degli espedienti efficaci per il supporto di browser e risoluzioni diverse. Non lo utilizzo direttamente, giusto perché prevede delle caratteristiche confliggenti con le linee-guida del World Wide Web Consortium (W3C). Una fra le principali riguarda l’inserimento di multiple classi per gli elementi in HTML.

Sull’argomento è intervenuta BVision – una web agency argentina – già nel febbraio del 2012: i browser datati non supportano due o più classi per lo stesso elemento e, ad ogni modo, il W3C consiglia di farne un utilizzo limitato. Sì, ma Bootstrap funziona esclusivamente con le classi ed è impossibile rimuoverle del tutto. Una soluzione efficace è fornita da LESS, fra i componenti essenziali del framework, che include i mixin. In pratica, le classi sono generate in JavaScript e aggiunte modificando il Document Object Model (DOM).

Questo escamotage è simile a quanto previsto da jQuery, ma “spostato” da uno script esterno ai CSS collegati. Risolve il problema della consistenza dei sorgenti in HTML, però aggrava l’interpretazione del codice: se un utente disabilitasse JavaScript sul browser, insomma, non sarebbe capace di visualizzare il sito. Inoltre, rallenta la computazione. Come evitare entrambi i problemi? Purtroppo, secondo me l’unica soluzione definitiva è creare un sito escludendo la maggioranza dei framework — incluso Bootstrap. Tertium non datur.