如果浏览器忽略了他们不理解的CSS,为什么要使用Modernizr?

时间:2009-11-17 16:05:40

标签: html css modernizr

我一直在与Modernizr合作,这是一个很棒的资源,只是一个很棒的项目。但是,我一直在使用它的方式是:

  • 使用基线(IE)CSS设计
  • 使用CSS3效果增强高级浏览器

除非我要根据行为完全替换样式,为什么我不应该只在样式表中添加框阴影,渐变和边框半径等样式?如果浏览器不理解规则,它会忽略它,对吗?如果JavaScript关闭,我无论如何也无法使用它。

我应该在典型案例中使用上述方法吗?对于高级案例,我应该使用Modernizr吗?或者依靠浏览器忽略他们不理解的东西是否有问题?

2 个答案:

答案 0 :(得分:16)

旧版浏览器完全忽视了CSS3中的大部分内容,这是完全正确的。

因此,我在我的基本选择器中执行我的css3 ..但是经常使用modernizr的无功能类来处理旧浏览器的情况:

div.box { 
         height:50px; 
         -moz-box-shadow: 3px 3px 5px #555; 
         -webkit-box-shadow: 3px 3px 5px #555; }

div.box span.fakeshadow { 
         display:none; 
}

.no-boxshadow div.box span.fakeshadow { 
         display:block; background: url('fakeshadowbg.png'); 
}

我希望这更清楚。

答案 1 :(得分:6)

您可以使用某些浏览器尚不支持的(html 5)元素。您也可以指定后备样式。

许多浏览器为文本转换等内容创建自己的CSS规则。使用Modernizr,您可以编写一个规则,Modernizr可以实现多个浏览器。

我认为这只是方便。