【发布时间】:2015-04-23 12:26:14
【问题描述】:
我在使用 Modernizr 加载 CSS 文件时遇到了争用情况。在我的本地和暂存环境中,它将 CSS 文件加载到头部的另一个样式表下方。这就是我想要它做的事情,所以异步加载文件中定义的规则会覆盖文件中未异步加载的样式。但是,在生产环境中,异步加载的文件 get 放置在另一个样式表之上,这使得异步加载文件中的覆盖不起作用。
问题是,有没有办法告诉 Modernizr 在哪里加载异步文件?我查看了 Modernizr 的文档和 Modernizr 用来加载文件的 yepnope 库,但什么也没看到。
旁注:
我意识到我可以在异步加载文件中的规则上添加更多特异性或使用!important,但希望避免这样做。
另外,我知道还有其他方法可以实现这一点,例如使用 jQuery 在头部最后一个之后添加样式表,但我想先看看是否可以使用 Modernizr 来实现。
例子:
本地和暂存(我想要的)
<link rel='stylesheet' href='main.css' type='text/css'>
<!-- Loaded asynchronously with Modernizr -->
<link rel='stylesheet' href='overrides.css' type='text/css'>
生产(不是我想要的)
<!-- Loaded asynchronously with Modernizr -->
<link rel='stylesheet' href='overrides.css' type='text/css'>
<link rel='stylesheet' href='main.css' type='text/css'>
【问题讨论】:
标签: javascript css modernizr yepnope