所有分类
  • 所有分类
  • 后端开发
Modernizr为HTML5和CSS3而生

Modernizr为HTML5和CSS3而生

modernizr是为HTML5而生的——它是一个JS库,用于检测浏览器支持HTML5和CSS3的特性,基于这个框架实现著名的HTML5/CSS3浏览器兼容性网站FindmeByIP。 右下角的绿色按钮上有Modernizr链接。 Modernizr的功能 其实modernizr的功能很简单,就是用js检测浏览器支持HTML5/C...

modernizr是为HTML5而生的——它是一个JS库,用于检测浏览器支持HTML5和CSS3的特性,基于这个框架实现著名的HTML5/CSS3浏览器兼容性网站FindmeByIP。

右下角的绿色按钮上有Modernizr链接。

Modernizr的功能

其实modernizr的功能很简单,就是用js检测浏览器支持HTML5/CSS3的特性,支持页面上的某个属性。<html>在标签上添加相应的class,如果不支持,则添加no-前缀class,例如,如果检测到的浏览器支持video标签,modernizr<html>在标签上添加video类,否则,添加no-video类。

查看FindMebyIP的源代码或使用firebug等工具查看页面代码<HTML>标签中的class。

此外,modernizr还提供了另一种用法,即单独检测浏览器对某一特性的支持,例如:

if (Modernizr.video) {}

通过类似的接口检测浏览器对HTML5的支持相对安全。

浏览器检测:UA VS 特性

事实上,我们通常使用UA来检测浏览器。当然,UA也提供了更丰富的信息。UA不是万能的,它也有一些弱点。例如,用户浏览器的UA伪装和一些落后浏览器提供的UA信息太少,这将影响对浏览器信息的判断。更重要的是,对于HTML5特性,用UA判断浏览器是否支持某个特性太复杂和不可靠

当然,关于UA和特性检测的争论一直存在。我在这里想说的是,在网站上使用HTML5来检测特性支持比UA更可靠、更方便~~

Modernizr使用

modernizr的使用非常简单,只需将js文件引入页面:

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

Modernizr它是开源的,但由于某种原因,它被G-FW封住了。

Modernizr @ git

modernizr项目托管在git,您可以通过以下地址获得它:
http://github.com/Modernizr/Modernizr
作者还在git提供了一个简单的输出页面:
http://modernizr.github.com/Modernizr/output.html
还有详细的测试页面:
http://modernizr.github.com/Modernizr/test/index.html

扩展阅读:

detacting HTML5 features
Safely Deploy HTML5 and CSS3 with Modernizr

原文链接:https://www.icz.com/technicalinformation/web/html/2023/05/9659.html,转载请注明出处~~~
0
注意:请收藏好网址www.icz.com,防止失联!站内免费资源持续上传中…!赞助我们
显示验证码
没有账号?注册  忘记密码?