对@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来继续扩展。