2012-09-28 27 views
7

ho visto molto sito Web avere un codice specifico per ie6, ie7, ie8.qual è il significato della classe no-js in html5

<!--[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]--> 

e mi sembra html hanno classe specifica come questo

<html class=" js no-flexbox flexbox-legacy canvas canvastext webgl no-touch geolocation postmessage websqldatabase indexeddb hashchange history draganddrop websockets rgba hsla multiplebgs backgroundsize borderimage borderradius boxshadow textshadow opacity cssanimations csscolumns cssgradients cssreflections csstransforms csstransforms3d csstransitions fontface generatedcontent video audio localstorage sessionstorage webworkers applicationcache svg inlinesvg smil svgclippaths"> 

uno solo dire che cosa è l'uso questo i codici

+1

Eventuali duplicati di http://stackoverflow.com/questions/6724515/what-is-the-purpose-of-the-html-no-js-class – w00

risposta

7

è messo lì in modo che se ci IS Javascript supporto, quindi è possibile utilizzare JS per rimuovere la classe no-js.

Si utilizza la classe no-js per lo stile CSS per la pagina Web se di solito si richiede a JS che il sito funzioni correttamente. Questo fornisce un formato degradato ma funzionale, se si vuole servire abbastanza HTML e forme abbastanza per fare il lavoro pagina senza JS, ma poi nascondere il ghetto-versione e sostituirlo con la roba lucido e di fantasia, più tardi.

2

<!--[if IE]><![endif]--> è Microsoft conditional comment.

Quindi per versione IE < 7 ([if lt IE 7]), viene utilizzato <html lang="en" class="no-js ie6">;

Per IE versione 7 ([if IE 7]), <html lang="en" class="no-js ie7"> viene utilizzato;

e così via.

Infine, per versione IE> 9 ([if gt IE 9]), viene utilizzato <html lang="en" class="no-js">.

E poiché si tratta di un commento specifico di Microsoft, tutti i browser non IE lo considerano come un commento normale, pertanto viene utilizzato solo <html lang="en" class="no-js"> (l'unica parte non commentata).

8

Si tratta di istruzioni per Modernizr, se JavaScript nel browser abilitato, Modernizr corre e cambia no-js-js di classe, in modo da poter definire i CSS stili per i browser abilitato per JavaScript e per i browser JavaScript disabilitato