Percebo que em muitos mecanismos de modelo, no HTML5 Boilerplate , em várias estruturas e em sites php simples, há a no-js
classe adicionada à <HTML>
tag.
Por que isso é feito? Existe algum tipo de comportamento padrão do navegador que reage a essa classe? Por que incluí-lo sempre? Isso não torna obsoleta a própria classe, se não houver nenhum caso "não-js" e o html puder ser endereçado diretamente?
Aqui está um exemplo do 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]-->
Como você pode ver, o <html>
elemento sempre terá essa classe. Alguém pode explicar por que isso é feito com tanta frequência?