Lo noto in molti motori di template, nella HTML5 Boilerplate , in vari framework e in semplici siti php c'è la no-js
classe aggiunta al <HTML>
tag.
Perché è fatto? Esiste una sorta di comportamento predefinito del browser che reagisce a questa classe? Perché includerlo sempre? Ciò non rende obsoleta la classe stessa, se non esiste un caso no "no-js" e HTML può essere indirizzato direttamente?
Ecco un esempio dal HTML5 Boilerplate index.html:
<!--[if lt IE 7 ]> <html lang="en" class="no-js ie6"> <![endif]-->
<!--[if IE 7 ]> <html lang="en" class="no-js ie7"> <![endif]-->
<!--[if IE 8 ]> <html lang="en" class="no-js ie8"> <![endif]-->
<!--[if IE 9 ]> <html lang="en" class="no-js ie9"> <![endif]-->
<!--[if (gt IE 9)|!(IE)]><!--> <html lang="en" class="no-js"> <!--<![endif]-->
Come puoi vedere, l' <html>
elemento avrà sempre questa classe. Qualcuno può spiegare perché questo è fatto così spesso?