HTML5 – Modernizr

HTML5 – Modernizr

Modernizr是一个小型的JavaScript库,用于检测下一代web技术的原生实现是否可用。

HTML5和CSS3引入了许多新功能,但同时许多浏览器并不支持这些新特性。

Modernizr提供了一种简单的方法来检测任何新功能,以便您可以采取相应的行动。例如,如果浏览器不支持视频功能,则您想要显示一个简单的页面。

您可以基于功能可用性创建CSS规则,如果浏览器不支持新功能,则这些规则会自动应用于网页。

您可以从Modernizr下载此实用程序的最新版本。

语法

在开始使用Modernizr之前,您需要在HTML页面头中包含其JavaScript库,如下所示:

<script src="modernizr.min.js" type="text/javascript"></script>

如上所述,您可以基于功能可用性创建CSS规则,如果浏览器不支持新的功能,则这些规则会自动应用于页面。

以下是处理支持和不支持的功能的简单语法-

/* 在你的CSS中: */
.no-audio #music {
   display: none; /* 不显示音频选项 */
}
.audio #music button {
   /* 美观地设计播放和暂停按钮 */
}

<!--在你的HTML中:-->
<div id="music">

   <audio>
      <source src="audio.ogg" />
      <source src="audio.mp3" />
   </audio>

   <button id="play">Play</button>
   <button id="pause">Pause</button>
</div>

在这里,需要注意的是,您需要在您想要处理的每个特征/属性前加上”no-“,以适应不支持它们的浏览器。

以下是通过Javascript检测特定功能的语法-

if (Modernizr.audio) {
   /* 支持音频的浏览器 */
}

else{
   /* 不支持音频的浏览器 */
}

Modernizr检测到的功能

以下是Modernizr可以检测的功能列表-

特性 CSS 属性 JavaScript 检测
@font-face .fontface Modernizr.fontface
画布 .canvas Modernizr.canvas
画布文本 .canvastext Modernizr.canvastext
HTML5 音频 .audio Modernizr.audio
HTML5 音频格式 NA Modernizr.audio[format]
HTML5 视频 .video Modernizr.video
HTML5 视频格式 NA Modernizr.video[format]
rgba() .rgba Modernizr.rgba
hsla() .hsla Modernizr.hsla
边框图片 .borderimage Modernizr.borderimage
圆角边框 .borderradius Modernizr.borderradius
盒阴影 .boxshadow Modernizr.boxshadow
多重背景 .multiplebgs Modernizr.multiplebgs
透明度 .opacity Modernizr.opacity
CSS 动画 .cssanimations Modernizr.cssanimations
CSS 分栏 .csscolumns Modernizr.csscolumns
CSS 渐变 .cssgradients Modernizr.cssgradients
CSS 反射 .cssreflections Modernizr.cssreflections
CSS 2D 变换 .csstransforms Modernizr.csstransforms
CSS 3D 变换 .csstransforms3d Modernizr.csstransforms3d
CSS 过渡 .csstransitions Modernizr.csstransitions
地理位置 API .geolocation Modernizr.geolocation
输入类型 NA Modernizr.inputtypes[type]
输入属性 NA Modernizr.input[attribute]
localStorage .localstorage Modernizr.localstorage
sessionStorage .sessionstorage Modernizr.sessionstorage
Web Workers .webworkers Modernizr.webworkers
应用缓存 .applicationcache Modernizr.applicationcache
SVG .svg Modernizr.svg
SVG 剪辑路径 .svgclippaths Modernizr.svgclippaths
SMIL .smil Modernizr.smil
Web SQL 数据库 .websqldatabase Modernizr.websqldatabase
IndexedDB .indexeddb Modernizr.indexeddb
Web Sockets .websockets Modernizr.websockets
Hashchange 事件 .hashchange Modernizr.hashchange
历史管理 .historymanagement Modernizr.historymanagement
拖放 .draganddrop | Modernizr.draganddrop | 是否支持拖放(drag and drop) API | Modernizr.draganddrop

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程