css使用方法及比较

前言

最常看见的CSS的使用方式有三种

1. 在span, div 等标签上直接使用 style 属性定义CSS

[html]  view plain copy
  1. <span style="color:blue">This is Blue.</span>  

2. 在当前的html 文件中定义class, 在html 标签中用class 的属性设置。

[html]  view plain copy
  1. <!--Add by oscar999-->  
  2. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">  
  3. <HTML>  
  4. <HEAD>  
  5. <TITLE> New Document </TITLE>  
  6. <META NAME="Author" CONTENT="oscar999">  
  7. <style type="text/css">  
  8. .blue{  
  9.    color:blue  
  10. }  
  11. </style>  
  12. </HEAD>  
  13.   
  14. <BODY>  
  15. <span class="blue">This is Blue.</span>  
  16. </BODY>  
  17. </HTML>  

3. 第三种方式就是把CSS 的定义单独到一个文件中, html  文件中使用link 引入css文件

[html]  view plain copy
  1. <!--Add by oscar999-->  
  2. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">  
  3. <HTML>  
  4. <HEAD>  
  5. <TITLE> New Document </TITLE>  
  6. <META NAME="Author" CONTENT="oscar999">  
  7. <link href="blue.css" rel="stylesheet" type="text/css" />  
  8. </HEAD>  
  9.   
  10. <BODY>  
  11. <span class="blue">This is Blue.</span>  
  12. </BODY>  
  13. </HTML>  

4. 除了以上方式之外, 还有一种方式就是使用 @import

[html]  view plain copy
  1. <!--Add by oscar999-->  
  2. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">  
  3. <HTML>  
  4. <HEAD>  
  5. <TITLE> New Document </TITLE>  
  6. <META NAME="Author" CONTENT="oscar999">  
  7. <style type="text/css">  
  8. @import url(blue.css);  
  9. </style>  
  10. </HEAD>  
  11.   
  12. <BODY>  
  13. <span class="blue">This is Blue.</span>  
  14. </BODY>  
  15. </HTML>  

前两种方式自不必多说, 这里比较一下 link 和 @import 的方式?


Link 与 @import 差异

1. 来源与作用。 link 属于 XHTML 标签, 除了可以加载CSS外, 还可以定义RSS, 定义rel 连接属性等其他作用;

                          而@import 完全是CSS提供的一种方式, 只能加载CSS。

2. 加载顺序不同。 link 引用的CSS会在页面被加载的时候同时加载;

                          而@import 引用的CSS会等到页面全部被下载完再被加载, 所以有时候会出现开始没有样式,之后页面闪烁一下出现样式(在网速慢的时候会更明显)。

3. 兼容性的差别。 @import 是CSS2.1 提出的,老的浏览器不支持,IE5 以上的才能识别(不过现在来说,已经不是问题了,应该很少有使用IE5及以下的浏览器了)。

                           link 浏览器都支持。

4. 使用javascript 可以控制到 link, 但@import 却无法控制。

[html]  view plain copy
  1. <!--Add by oscar999-->  
  2. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">  
  3. <HTML>  
  4. <HEAD>  
  5. <TITLE> New Document </TITLE>  
  6. <META NAME="Author" CONTENT="oscar999">  
  7. <link id="linkId" href="" rel="stylesheet" type="text/css" />  
  8. </HEAD>  
  9.   
  10. <BODY>  
  11. <span class="blue">This is Blue.</span>  
  12.   
  13. <script>  
  14. document.getElementById("linkId").href = "blue.css";  
  15. </script>  
  16.   
  17. </BODY>  
  18. </HTML>  

5. @import 可以在CSS 中再此引入其他样式表。可以创建一个主样式表, 在主样式表中引入其他的样式表。

这样的好处是便于修改和扩展。


CSS拆分成文件, 虽然对于开发和维护来说比较方便和清晰, 但是有一个缺点是会对网站服务器产生较多的HTTP请求。浏览量大的网站还是谨慎使用,像一些大型访问量大的网站的首页,会直接把CSS或js 直接写在html 中。


如果你想样式表并行载入,以使页面更快,请使用LINK 替代@import。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值