html5中no-js类的含义是什么?

时间:2012-09-28 06:56:06

标签: html5 css3

我看到很多网站都有ie6,ie7,ie8的特定代码。

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

任何人只是告诉这个代码有什么用?

3 个答案:

答案 0 :(得分:10)

这是Moderniz的指示。如果您的浏览器中启用了JavaScript,则Modernizr会将no-js更改为js类,因此您可以为启用JavaScript的浏览器和禁用JavaScript的浏览器定义CSS样式

答案 1 :(得分:7)

它放在那里,如果有 IS Javascript支持,那么你可以使用JS删除no-js类。

如果您的网站通常需要JS才能正常运行,则可以使用no-js类为网页设置CSS样式。 这提供了一种降级但功能性的格式,如果你想提供足够的HTML和足够的表单来使页面无需JS工作,那么随后隐藏贫民窟版本并用闪亮和花哨的东西替换它。

答案 2 :(得分:3)

<!--[if IE]><![endif]-->是Microsoft的conditional comment

因此对于IE版本&lt; 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版本&gt; 9([if gt IE 9]),<html lang="en" class="no-js">被使用。

由于它是Microsoft特定的评论,所有非IE浏览器都会将其视为普通评论,因此仅使用<html lang="en" class="no-js">(唯一未评论的部分)。