2012-09-28 24 views
7

です。ウェブサイトの多くにはie6、ie7、ie8の特定のコードがあります。html5のno-jsクラスの意味は

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

は、と私はHTMLがこの

<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"> 

いずれかのような特定のクラスだけで使用それはそこに入れています

+1

のための可能な重複http://stackoverflow.com/questions/6724515/what-is-the-purpose-of-the-html-no-js-class – w00

答えて

7

このコードが何であるかを伝える必要があり思えるようのJavascriptがされた場合JSを使用してno-jsクラスを削除することができます。

通常、サイトが正常に機能するためにJSが必要な場合は、no-jsクラスを使用してWebページのスタイルを設定します。 これは、JSなしでページを動作させるのに十分なHTMLと十分なフォームを提供したいが、後でゲットーバージョンを隠し、それを光沢のある派手なものに置き換えるために、機能は低下するが機能的なフォーマットを提供する。

2

<!--[if IE]><![endif]-->は、Microsoftのconditional commentです。

IE版< 7([if lt IE 7])の場合、<html lang="en" class="no-js ie6">が使用されます。

IEバージョン7([if IE 7])では、<html lang="en" class="no-js ie7">が使用されます。

など。

最後に、IEバージョン> 9([if gt IE 9])の場合、<html lang="en" class="no-js">が使用されます。

これはマイクロソフト固有のコメントであるため、IE以外のすべてのブラウザでは通常のコメントとして処理されるため、<html lang="en" class="no-js">(唯一の非コメント部分)のみが使用されます。

8

のこのお使いのブラウザでJavaScriptが有効になっている場合、Modernizrする命令であるModernizr実行し、JavaScript対応のブラウザでCSS-スタイルを定義することができますので、jsクラスにno-jsを変更してJavaScriptを無効ブラウザ