Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/376.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/34.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用Modernizer对CSS转换进行多边形填充_Javascript_Css_Modernizr_Html5boilerplate - Fatal编程技术网

Javascript 使用Modernizer对CSS转换进行多边形填充

Javascript 使用Modernizer对CSS转换进行多边形填充,javascript,css,modernizr,html5boilerplate,Javascript,Css,Modernizr,Html5boilerplate,我在HTML5样板中安装了modernizr js,但我不知道如何使用它。我创建了一个带有一些过渡的CSS3导航。我知道IE不支持它们,但据我所知,Modernizer可以使用js进行polyfill。是这样吗?我该怎么做?我知道的不多 您需要添加yepnope脚本来检查是否支持css3转换。例如: yepnope({ test : Modernizr.transition, yep : '', nope : ['polyfillfortransition.js'] }); 更新

我在HTML5样板中安装了modernizr js,但我不知道如何使用它。我创建了一个带有一些过渡的CSS3导航。我知道IE不支持它们,但据我所知,Modernizer可以使用js进行polyfill。是这样吗?我该怎么做?我知道的不多


您需要添加yepnope脚本来检查是否支持css3转换。例如:

yepnope({
  test : Modernizr.transition,
  yep  : '',
  nope : ['polyfillfortransition.js']
});
更新


实际上,如果您使用jQuery,就有了一个插件。您不需要执行上面的代码。这篇由Addy Osmani撰写的文章将更好地解释这一点。在那篇文章中,他还解释了yepnope的用法。

Modernizer没有为CSS3功能提供任何多边形填充。它确实提供了一个简单的多边形填充,以便在旧浏览器中实现HTML5元素的样式化。除此之外,它主要用于通过向页面的html标记添加类名来检测特性

因此,在css中,您可以执行以下操作

.borderradius .mydiv {
    border-radius: 8px;
}

如果您的浏览器支持,Modernizer会将.borderradius类名添加到页面的html标记中……或者您可以在js中使用它来有选择地回退到插件之类的东西。

我把它放在哪里?我对这真的很陌生。我把它放在HTML中的一些
标记之间,就在我放Modernizer脚本的地方,但什么也没发生。这是我的网站`
http://dev.newfrequency.com/index.html
如果它有助于您查看。好吧,我的错……那
polyfillfortransition.js
实际上是一个示例,您需要在使用它之前先获取实际的js。但让我解释一下代码。因此,
yepnope
是随着
modernizer
而来的测试。它将测试您的浏览器是否支持css转换。如果不是的话,你需要调用一个JS来为你做多边形填充。你需要把代码放在你的js中,我建议在关闭
body
标签之前把它放在代码的末尾。如果你对js了解不多,正如你所说,那么你评估Modernizer中的解决方案或Addy Osmani提出的解决方案的依据是什么?我知道这并不能帮助你解决眼前的问题,但网络上一个(更大的)问题是,大量潜在的专家和博客作者急于提供帮助,但并没有提供最好的建议。如果可能的话,让你的应用程序在没有过渡的情况下可以降级运行。我不知道Addy Odmani是谁。基本上,我只是蒙混过关,边走边学。它在没有过渡的情况下运行良好。只是没那么漂亮。我希望有一个js解决方案,当css转换不起作用时,它会变得更漂亮。当然,这是可能的。好的解决方案并不是那么容易,而坏的解决方案则非常复杂——比如Modernizer、jQuery和其他博客。