使用Modernizr库,为什么要在html标记中添加类

Dee*_*000 5 html5 modernizr

任何人都可以解释(因为github页面没有)为什么Modernizr认为需要将所有这些类名添加到HTML标记中?加载Modernizr后,它看起来像这样:

<!doctype html>
<html class=" js flexbox canvas canvastext webgl ~~~~ etc etc
Run Code Online (Sandbox Code Playgroud)

我完全没有解释为什么要这样做.Modernizr提供的属性让我知道是否支持canvas(Modernizr.canvas == true?).这些html类名是否为测试添加了更容易?

paw*_*wel 8

这些类名称应在CSS代码中使用,因此您可以添加回退样式,以防功能不受支持.来自modernizr docs页面的示例:

/* Simulated box shadow using borders: */
.box {
   border-bottom: 1px solid #666;
   border-right:  1px solid #777;
}
.boxshadow div.box {
   border: none;
   -webkit-box-shadow: #666 1px 1px 1px;
      -moz-box-shadow: #666 1px 1px 1px;
           box-shadow: #666 1px 1px 1px;
}
Run Code Online (Sandbox Code Playgroud)