CSS样式中有关Link标签与@import引用的解析[z]

From: http://www.skycx.com/webdesign/CSS/1.html

 

网页设计中使用CSS样式表,一般有三种方式:
1、直接使用:
在<head>与</head>之间,
 <style>
<!--
*        { margin: 0;   padding: 0; }
-->
</style>

 2、使用link引用样式表文件:
<link rel="stylesheet" rev="stylesheet" href="style.css" type="text/css">

 3、用import引用样式表:
<style type="text/css"> 
   @import url(style.css); 
</style>


第一种是直接在html页面上进行css书写,而第二种和第三种是采用外部引用样式单独提取文件。这三种方式都可以达到相同的效果。

那么,到底link和@import有什么区别?
我们先来看看他们的定义和参数。

link元素 
HTML和XHTML都有一个结构,它使网页作者可以增加于HTML文档相关的额外信息。这些额外资源可以是样式化信息(CSS)、导航助手、属于另 外形式的信息(RSS)、联系信息等等。

@import 
指定导入的外部样式表及目标设备类型。

其实link和@import的最根本区别就是:link是一个html的一个标签,而@import是css的一个标签, 
link除了调用css外还可以有其他作用譬如声明页面链接属性,声明目录,rss等等,而@import就只能调用css。如果单独从外部引用css来说,他们的作用是基本一样。

下面说说两个不同用法:

1、我需要用javascript进行样式选择。比如有的网页提供不同的配色方案,浏览者点个按钮就可以改变整个网页的配色;又例如本文右上角的字体大小选择。这个时候就要用link,因为link是html元素,可用javascript去控制dom元素最后达到改变样式的效果。  

看下列代码:
<link rel="stylesheet" href="/css/styles.css" type="text/css" media="screen" /> 
<link rel="stylesheet" href="/css/orange.css" type="text/css" media="screen" title="orange" /> 
<link rel="alternate stylesheet" href="/css/blue.css" type="text/css" media="screen" title="blue" /> 
<link rel="alternate stylesheet" href="/css/pink.css" type="text/css" media="screen" title="pink" /> 
<link rel="alternate stylesheet" href="/css/slate.css" type="text/css" media="screen" title="slate" />

这是一段很经典的改变页面风格的代码,因为我们今天主要讲的是link和@import,所以我这里只列出了引用css部分。  

我们先来了解下link的参数:
rel:声明Link对象的作用或者类型;
href:引用css的文件路径;
tyle:文件类型;
media:应用的设备;比如:"all";"screen",应用在屏幕上;"print",打印的时候应用(注1),等等。
title:是css的名称;
这段代码中一共有5个css,第一个是基本样式,而其他四个是风格样式,利用javascript去控制默认显示的样式title就ok了。

注1:我要在应用打印样式;  打印样式顾名思义就是打印页面时候的样式。 这个样式在普通浏览下是没有效果的,只有在打印的时候生效。 如果要为页面单独引用打印样式的话,link和@import都可以的。

link代码:
<link rel="stylesheet" href="/css/styles.css" type="text/css" media="print" /> 

@import代码:
<style type="text/css"> 
@import url(foo.css) print; 
</style>
 

另外对于css来说还有一种方式@media:
@media print {  
@import "print.css"  

用@media先制定设备为 print,然后再用@impor链接

大型网站,为了以后改版方便,会制作多个样式表,一般使用@import引用。

比如,在web页面里使用
<link rel="stylesheet" rev="stylesheet" href="style-2008.css" type="text/css">

在style-2008.css里使用
@import url(main-2008.css);
@import url(foot-2008.css);


等等,这样,方便以后改版,整理。

你可能感兴趣的:(JavaScript,html,Web,XHTML,css)