在网页中使用css的几种方式

html-css030

在网页中使用css的几种方式,第1张

(1)使用Embed(嵌入样式单)排版样式:

即将CSS代码直接插入每个页面的HTML的<head>区,就象上一节看到的。使用<style>...</style>标签。例如:

<style type="text/css">

<!--

h2 { font-family: "宋体"font-size: 12ptfont-style: italiccolor: #FF0033background-color: #FFCCCC}

h1 { font-family: "Arial"font-size: 12ptcolor: #66FF66}

-->

</style>

(2)使用“link(外部样式单)排版样式”:

即你可以将多个页面的排版风格都用一个样式单文件控制。这个外部的样式单文件(一个扩展名是css的文本文件)将设定你所有网页的规则。如果你改变样式单文件中的某行,所有页面风格用这个css文件定义的页面都会随之改变。如果你的站点文件非常多,则这项功能就非常方便了。

在<HEAD>区内使用<LINK>标签(注意:不再是<style>标签了):

<HTML>

<HEAD>

<LINK REL=stylesheet HREF="http://yoursute.com/my.css"TYPE="text/css">

</HEAD>

<body>

<h2>你好!朋友,欢迎光临Java2000的教学区。</h2>

<h1>Hello,everybody,welcome in java2000 !</h1>

</body>

</html>

★☆★说明:css文件的路径用绝对路径http://...)表示或者用相对路径(例如:../csscode/my.css)表示都可以。

然后再单独生成一个css文件,叫做my.css (随便起名)。文件内容如下:

h2 { font-family: "宋体"font-size: 12ptfont-style: italiccolor: #FF0033background-color: #FFCCCC}

h1 { font-family: "Arial"font-size: 12ptcolor: #66FF66}

只要将这个CSS文件上传到服务器指定的目录即可。

(3)使用"inline(行内样式单)排版样式":

inline样式单采用HTML标签的“style”属性,它的特点是“定义某一个标签的式样单风格”,只对所定义的标签起作用,并非对整个页面起作用。例如:

<p style="font-size: 14pt color: #99ff99 font-family: 宋体">层叠式样单</p>

看到的效果:

层叠式样单

使用行内样式单,你必须为每行指定样式规则,否则下一行时浏览器将使用页面的缺省设置。 但是:有时候这种方式却非常有效。

(4)使用“import(输入的外部式样单)”--适用于IE浏览器。

<html>

<head>

<style type="text/css">

<!--

@import url(my.css)

-->

</style>

</head>

<body>

<h3>输入的外部式样单</h3>

</body>

</html>

本质上,这两种方式都是为了加载CSS文件,但还是存在着细微的差别。差别1:老祖宗的差别。link属于XHTML标签,而@import完全是CSS提供的一种方式。link标签除了可以加载CSS外,还可以做很多其它的事情,比如定义RSS,定义rel连接属性等,@import就只能加载CSS了。差别2:加载顺序的差别。当一个页面被加载的时候(就是被浏览者浏览的时候),link引用的CSS会同时被加载,而@import引用的CSS会等到页面全部被下载完再被加载。所以有时候浏览@import加载CSS的页面时开始会没有样式(就是闪烁),网速慢的时候还挺明显(梦之都加载CSS的方式就是使用@import,我一边下载一边浏览梦之都网页时,就会出现上述问题)。差别3:兼容性的差别。由于@import是CSS2.1提出的所以老的浏览器不支持,@import只有在IE5以上的才能识别,而link标签无此问题。差别4:使用dom控制样式时的差别。当使用javascript控制dom去改变样式的时候,只能使用link标签,因为@import不是dom可以控制的。差别5:@import可以在css中再次引入其他样式表,比如可以创建一个主样式表,在主样式表中再引入其他的样式表,大致就这几种差别了(如果还有什么差别,大家告诉我,我再补充上去),其它的都一样,从上面的分析来看,还是使用link标签比较好。