📜  HTML5-Modernizr

📅  最后修改于: 2020-10-23 06:25:42             🧑  作者: Mango


Modernizr是一个小型JavaScript库,用于检测下一代Web技术的本机实现的可用性

通过HTML5和CSS3引入了一些新功能,但同时许多浏览器不支持这些新闻功能。

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

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

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

句法

在开始使用Modernizr之前,您必须在HTML页面标题中包含其javascript库,如下所示-


如上所述,您可以根据功能可用性创建CSS规则,如果浏览器不支持新功能,这些规则将自动应用到网页上。

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

/* In your CSS: */
.no-audio #music {
   display: none; /* Don't show Audio options */
}
.audio #music button {
   /* Style the Play and Pause buttons nicely */
}


这里值得注意的是,您需要为不支持它们的浏览器要处理的每个功能/属性添加“ no-”前缀。

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

if (Modernizr.audio) {
   /* properties for browsers that
   support audio */
}

else{
   /* properties for browsers that
   does not support audio */
}

Modernizr检测到的功能

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

Feature CSS Property JavaScript Check
@font-face .fontface Modernizr.fontface
Canvas .canvas Modernizr.canvas
Canvas Text .canvastext Modernizr.canvastext
HTML5 Audio .audio Modernizr.audio
HTML5 Audio formats NA Modernizr.audio[format]
HTML5 Video .video Modernizr.video
HTML5 Video Formats NA Modernizr.video[format]
rgba() .rgba Modernizr.rgba
hsla() .hsla Modernizr.hsla
border-image .borderimage Modernizr.borderimage
border-radius .borderradius Modernizr.borderradius
box-shadow .boxshadow Modernizr.boxshadow
Multiple backgrounds .multiplebgs Modernizr.multiplebgs
opacity .opacity Modernizr.opacity
CSS Animations .cssanimations Modernizr.cssanimations
CSS Columns .csscolumns Modernizr.csscolumns
CSS Gradients .cssgradients Modernizr.cssgradients
CSS Reflections .cssreflections Modernizr.cssreflections
CSS 2D Transforms .csstransforms Modernizr.csstransforms
CSS 3D Transforms .csstransforms3d Modernizr.csstransforms3d
CSS Transitions .csstransitions Modernizr.csstransitions
Geolocation API .geolocation Modernizr.geolocation
Input Types NA Modernizr.inputtypes[type]
Input Attributes NA Modernizr.input[attribute]
localStorage .localstorage Modernizr.localstorage
sessionStorage .sessionstorage Modernizr.sessionstorage
Web Workers .webworkers Modernizr.webworkers
applicationCache .applicationcache Modernizr.applicationcache
SVG .svg Modernizr.svg
SVG Clip Paths .svgclippaths Modernizr.svgclippaths
SMIL .smil Modernizr.smil
Web SQL Database .websqldatabase Modernizr.websqldatabase
IndexedDB .indexeddb Modernizr.indexeddb
Web Sockets .websockets Modernizr.websockets
Hashchange Event .hashchange Modernizr.hashchange
History Management .historymanagement Modernizr.historymanagement
Drag and Drop .draganddrop Modernizr.draganddrop
Cross-window Messaging .crosswindowmessaging Modernizr.crosswindowmessaging
addTest() Plugin API NA Modernizr.addTest(str,fn)