当前位置: 代码迷 >> Web前端 >> 对@import url()做一上总结
  详细解决方案

对@import url()做一上总结

热度:622   发布时间:2012-09-22 21:54:54.0
对@import url()做一下总结

今天群里无意谈到了@import url(),不太常用,争论很大。一开始是由于一个兼容问题: @import url(/css/a.css) 很简单但出现了兼容问题,在ff下无法调用样式,大家都以为是@import搞的怪,但用link后问题依然出现。经过一番讨论原来是绝对路径在ff下是不认的。?

对@import url()做一下总结: ?
1,@import url()机制是不同于link的,link是在加载页面前把css加载完毕,而@import url()则是读取完文件后在加载,所以会出现一开始没有css样式,闪烁一下出现样式后的页面(网速慢的情况下)。?
2,@import 是css2里面的,所以古老的ie5不支持。?
3,当使用javascript控制dom去改变样式的时候,只能使用link标签,因为@import不是dom可以控制的。4,link除了能加载css外还能定义RSS,定义rel连接属性,@import只能加载css?


@import url(xxx.css); 有最大次数的限制,经测试IE6的最大次数是31次,第32个import及以后的都不能生效,如下:?

@import url(1.css);?
@import url(2.css);?
@import url(3.css);?
@import url(4.css);?
@import url(5.css);?
@import url(6.css);?
@import url(7.css);?
@import url(8.css);?
@import url(9.css);?
@import url(10.css);?
@import url(11.css);?
@import url(12.css);?
@import url(13.css);?
@import url(14.css);?
@import url(15.css);?
@import url(16.css);?
@import url(17.css);?
@import url(18.css);?
@import url(19.css);?
@import url(20.css);?
@import url(21.css);?
@import url(22.css);?
@import url(23.css);?
@import url(24.css);?
@import url(25.css);?
@import url(26.css);?
@import url(27.css);?
@import url(28.css);?
@import url(29.css);?
@import url(30.css);?
@import url(31.css);?
@import url(32.css);?
◎import url(xx.css);?

body{color:#333}?


虽然最多只能import 31次,但不会影响css里面的其他规则,如body{}的定义还能正常显示。?
Firefox 没有发现有import的最大值。?

另外,既然横向import有最大次数限制,却可以通过垂直import来继续扩展。

  相关解决方案