机械网站建设中心,网站建设要钞钱,莒南县网站建设,微信公众号和小程序开发需要涉及昨天碰到同事问了一个问题#xff0c;impor导入外部样式与link链入外部样式的优先级是怎样的#xff0c;为什么实验的结果是按照样式表导入后的位置来决定优先级。今天就这个问题具体总结如下#xff1a; 先解释一下网页添加css样式的方法#xff0c;一共有四种#xff0c…昨天碰到同事问了一个问题impor导入外部样式与link链入外部样式的优先级是怎样的为什么实验的结果是按照样式表导入后的位置来决定优先级。今天就这个问题具体总结如下 先解释一下网页添加css样式的方法一共有四种分别是一、内嵌样式——直接在页面的标签里加div styleborder:1px red solid;测试信息/div二、内部样式表——在head部分加入 style typetext/cssdiv{margin: 0;padding: 0;border:1px red solid;}/style三、链入外部样式表——在head部分加入link relstylesheet typetext/css hrefmy.css mediaall /引入外部的CSS文件四、导入外部样式表——在head部分加入style typetext/cssimport url(my.css);/style样式表的优先级顺序从高到低依次为内嵌样式 内部样式表 导入外部样式表其实是属于内部样式表 链入外部样式表与内部样式表之间的优先级取决于所处位置的先后最后定义的优先级最高。 本文主要是做import导入样式表与link链入样式表的区别探讨所以其他的不做详谈。 1. 链入外部样式表 链入外部样式表是把样式表保存为一个样式表文件然后在页面中用link标记链接到这个样式表文件这个link标记必须放到页面的head区内如下 head …… link hrefmystyle.css relstylesheet typetext/css mediaall …… /head 上面这个例子表示浏览器从mystyle.css文件中以文档格式读出定义的样式表。rel”stylesheet”是指在页面中使用这个外部的样式表。type”text/css”是指文件的类型是样式表文本。href”mystyle.css”是文件所在的位置。media是选择媒体类型这些媒体包括屏幕纸张语音合成设备盲文阅读设备等。 2.导入外部样式表 导入外部样式表是指在内部样式表的style里导入一个外部样式表导入时用import看下面这个实例 head …… style type”text/css” !-- import “mystyle.css” 其他样式表的声明 -- /style …… /head 例中import “mystyle.css”表示导入mystyle.css样式表注意使用时外部样式表的路径。方法和链入样式表的方法很相似实质上它相当于存在内部样式表中的。 注意导入外部样式表必须在样式表的开始部分在其他内部样式表上面。 综合度娘的多篇文章和个人理解两者的区别总结如下 1老祖宗的差别。link属于XHTML标签而import完全是CSS提供的一种方式。 link标签除了可以加载CSS外还可以做很多其它的事情比如定义RSS定义rel连接属性等import就只能加载CSS了。 2加载时间及顺序不同。使用link链接的css是客户端浏览你的网页时先将外部的CSS文件加载到网页当中然后再进行编译显示所以这种情况下显示出来的网页跟我们预期的效果一样即使一个页面link多个css文件网速再慢也是一样的效果而使用import导入的CSS就不同了客户端在浏览网页时是先将html的结构呈现出来再把外部的CSS文件加载到网页当中当然最终的效果也是跟前者是一样的只是当网速较慢时会出现先显示没有CSS统一布局时的html网页这样就会给阅读者很不好的感觉。这也是现在大部分网站的CSS都采用链接方式的最主要原因。 3兼容性不同。由于import是CSS2.1提出的所以老的浏览器不支持import只有在IE5以上的才能识别而link标签无此问题。 4使用dom控制样式时出现问题。当使用javascript控制dom去改变样式的时候只能使用link标签因为import不是dom可以控制的。 5导入样式可以避免过多页面指向一个css文件。当网站中使用同一个CSS文件的页面不是非常多时这两种方式在效果方面几乎是没有不同的但网站的页面数达到一定程度时比如新浪等门户如果采用链接的方式可能就会使得由于多个页面调用同一个CSS文件而造成速度下降但是一般页面能达到这种程度的网站也会有资本用最好的硬盘所以这方面的因素也不用怎么担心。 综上所述一般普通的站点在调用外部样式表的时候还是尽量选择link链入外部样式表比较好。关于区别中第二点的加载顺序的差别中找到一个国外的参考文章作为补充资料http://www.stevesouders.com/blog/2009/04/09/dont-use-import/ 更多专业前端知识请上
【猿2048】www.mk2048.com