微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

HTML5+CSS3使用Modernizr介绍

传统浏览器目前不会被完全取代,令你难以将最新的 CSS3 或 HTML5 功能嵌入你的网站。 Modernizr 正是为解决这一难题应运而生,作为一个开源的 JavaScript 库,Modernizr 检测浏览器对 CSS3 或 HTML5 功能支持情况。 Modernizr 并非试图添加老版本浏览器不支持功能,而是令你通过创建可选风格配置修改页面设计。 它也可以通过加载定制的脚本来模拟老版本浏览器不支持功能

Modernizr下载地址:http://modernizr.com/download/

一.使用Modernizr前提条件:
1.添加引用:
<script src="modernizr-latest.js"  type="text/javascript" > </script>
2.向<html>元素添加“no-js”的类
<html class="no-js">

二.使用Modernizr检测浏览器是否支持CSS3:
添加div代码:

<div class="Boxshadow"><div id="MyContainer" style=" width:150px;">测试CSS3样式</div></div>
css样式:
.Boxshadow #MyContainer { border: none; -webkit-Box-shadow: #666 1px 1px 1px; -moz-Box-shadow: #666 1px 1px 1px;} 
.no-Boxshadow #MyContainer { border: 2px solid black;}
如果浏览器不支持Box-shadow属性调用下面的样式

三.使用Modernizr 验证 HTML5 必需的表单字段
添加div代码:
search:<input id="txtsearch" type="search" name="search" required="true" /> <br />
JS代码:

window.onload = function() { 
  // 获取表单input标签元素  
  var form = document.forms[0],inputs = form.elements;   
  if (!Modernizr.input.autofocus) { 
     //因如果不支持 autofocus,那么该条件的求值结果为 true,并且 inputs[0].focus() 将光标放在第一个输入字段      
     inputs[0].focus(); 
   }  
   if (!Modernizr.input.required) { 
   form.onsubmit = function() { 
   var required = [],att,val;
    // loop through input elements looking for required          
      for (var i = 0; i < inputs.length; i++) {
    att = inputs[i].getAttribute('required');           
        // if required,get the value and trim whitespace              
        if (att != null) { 
     val = inputs[i].value; 
          // if the value is empty,add to required array                  
          if (val.replace(/^\s+|\s+$/g,'') == '') { 
       required.push(inputs[i].name);
      } 
     }
     } 
      // show alert if required array contains any elements      
       if (required.length > 0) { 
     alert('以下字段是必须的: ' + required.join(',')); 
    // prevent the form from being submitted        
        return false; 
     } 
     };
 } 
}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。