我正在将带有javascript的.css文件添加到头部并按顺序排列最高优先级,优先排序最低优先级。
像:
base.css
theme.css
responsive.css
对于我尝试过与IE分开的每个浏览器(我已经测试过IE8,9和10),这可以正常工作但是如果我颠倒顺序:
responsive.css
theme.css
base.css
它适用于IE(8,9,10)但在每个现代浏览器中都不起作用。
是否有IE优先级错误?如果我静态添加文件没有问题,所以它接缝是一个JavaScript问题,但仅适用于IE。
任何人都知道这个问题甚至解决方案吗?
答案 0 :(得分:0)
一种解决方案是首先使用javascript检查使用了哪种浏览器。
BrowserDetect.browser
然后使用if-else语句..
if(IE){
responsive.css
theme.css
base.css
}
else{
base.css
theme.css
responsive.css
}
答案 1 :(得分:0)
这是因为IE的旧版本不理解在响应式设计中使用的媒体查询,我想在您的responsive.css中有@media screen and (min-width: 960px)
之类的内容。
通常条件注释用于检测当前浏览器是否为IE(及其版本)并加载css文件。
我个人喜欢移动第一哲学,在进行响应式设计时,有一个示例教程:http://gomakethings.com/mobile-first-and-internet-explorer/
这称为渐进式增强。首先为最简单的平台执行css,然后为新浏览器添加内容。
如果你想要选项,还有另一种做法叫做优雅降级,这是相反的,拥有全功能的CSS并忽略/删除旧浏览器的这些功能。
如果您真的想做干净且反应灵敏的设计,您应该稍微了解这两种做法,以便更好地理解它们
答案 2 :(得分:0)
某处肯定存在其他问题,因为IE和其他浏览器在级联样式表方面没有区别。请创建一个JSfiddle。