打印

[教程] CSS入门3:如何插入CSS样式

复制内容到剪贴板
代码:
这些教程是我整理的,参考小雨css 2.0手册,hve && Star Ocean得css手册,还有网上的一些资源,关于版权,你就别找我麻烦了。
如何在网页中插入CSS

前面我们了解了CSS的语法,但要想在浏览器中显示出效果,就要让浏览器识别并调用。当浏览器读取样式表时,要依照文本格式来读,这里介绍四种在页面中插入样式表的方法:链入外部样式表内部样式表导入外表样式表内嵌样式

1. 链入外部样式表

链入外部样式表是把样式表保存为一个样式表文件,然后在页面中用<link>标记链接到这个样式表文件,这个<link>标记必须放到页面的<head>区内,如下:
复制内容到剪贴板
代码:
<head>
……
<link href="mystyle.css" rel="stylesheet" type="text/css" media="all">
……
</head>
上面这个例子表示浏览器从mystyle.css文件中以文档格式读出定义的样式表。rel=”stylesheet”是指在页面中使用这个外部的样式表。type=”text/css”是指文件的类型是样式表文本。href=”mystyle.css”是文件所在的位置。media是选择媒体类型,这些媒体包括:屏幕,纸张,语音合成设备,盲文阅读设备等。

一个外部样式表文件可以应用于多个页面。当你改变这个样式表文件时,所有页面的样式都随之而改变。在制作大量相同样式页面的网站时,非常有用,不仅减少了重复的工作量,而且有利于以后的修改、编辑,浏览时也减少了重复下载代码。

样式表文件可以用任何文本编辑器(例如:记事本)打开并编辑,一般样式表文件扩展名为.css。内容是定义的样式表,不包含HTML标记,mystyle.css这个文件的内容如下:
复制内容到剪贴板
代码:
hr {color: sienna}
p {margin-left: 20px}
body {background-image: url("images/back40.gif")}
/*定义水平线的颜色为土黄;段落左边的空白边距为20象素;页面的背景图片为images目录下的back40.gif文件*/
2. 内部样式表

内部样式表是把样式表放到页面的<head>区里,这些定义的样式就应用到页面中了,样式表是用<style>标记插入的,从下例中可以看出<style>标记的用法:
复制内容到剪贴板
代码:
<head>
……
<style type="text/css">
hr {color: sienna}
p {margin-left: 20px}
body {background-image: url("images/back40.gif")}
</style>
……
</head>
注意:有些低版本的浏览器不能识别style标记,这意味着低版本的浏览器会忽略style标记里的内容,并把style标记里的内容以文本直接显示到页面上。为了避免这样的情况发生,我们用加HTML注释的方式(<!-- 注释 -->)隐藏内容而不让它显示:
复制内容到剪贴板
代码:
<head>
……
<style type="text/css">
<!--
hr {color: sienna}
p {margin-left: 20px}
body {background-image: url("images/back40.gif")}
-->
</style>
……
</head>
3. 导入外部样式表

导入外部样式表是指在内部样式表的<style>里导入一个外部样式表,导入时用@import,看下面这个实例:
复制内容到剪贴板
代码:
<head>
……
<style type=”text/css”>
<!--
@import “mystyle.css”
其他样式表的声明
-->
</style>
……
</head>
例中@import “mystyle.css”表示导入mystyle.css样式表,注意使用时外部样式表的路径。方法和链入样式表的方法很相似,但导入外部样式表输入方式更有优势。实质上它相当于存在内部样式表中的。
注意:导入外部样式表必须在样式表的开始部分,在其他内部样式表上面。

4. 内嵌样式

内嵌样式是混合在HTML标记里使用的,用这种方法,可以很简单的对某个元素单独定义样式。内嵌样式的使用是直接将在HTML标记里加入style参数。而style参数的内容就是CSS的属性和值,如下例:
复制内容到剪贴板
代码:
<p style="color: sienna;margin-left: 20px;">
这是一个段落
</p>
<!--这个段落颜色为土黄,左边距为20象素-->
在style参数后面的引号里的内容相当于在样式表大括号里的内容。
注意:style参数可以应用于任意BODY内的元素(包括BODY本身),除了BASEFONT、PARAM和SCRIPT。

5. 多重样式表的叠加

上一章里我们已经提到样式表的层叠顺序,这里我们讨论插入样式表的这几种方法的叠加,如果在同一个选择器上使用几个不同的样式表时,这个属性值将会叠加几个样式表,遇到冲突的地方会以最后定义的为准。例如,我们首先链入一个外部样式表,其中定义了h3选择符的color 、text-alig和font-size属性:
复制内容到剪贴板
代码:
h3
{
color: red;
text-align: left;
font-size: 8pt;
}
/*标题3的文字颜色为红色;向左对齐;文字尺寸为8号字*/
然后在内部样式表里也定义了h3选择符的text-align和font-size属性:
复制内容到剪贴板
代码:
h3
{
text-align: right;
font-size: 20pt;
}
/*标题3文字向右对齐;尺寸为20号字*/
那么这个页面叠加后的样式就是:
复制内容到剪贴板
代码:
color: red;
text-align: right;
font-size: 20pt;
/*文字颜色为红色;向右对齐;尺寸为20号字*/
字体颜色从外部样式表里保留下来,而对齐方式和字体尺寸都有定义时,按照后定义的优先而依照内部样式表。

注意:依照后定义的优先,所以优先级最高的是[s]内嵌样式[/s],[s]内部样式表[/s]高于[s]导入外部样式表[/s],[s]链入的外部样式表[/s]和[s]内部样式表[/s]之间是最后定义的优先级高。
blog Web标准化交流会 WEB标准群:46077068
补充一个:如何在xml中插入CSS

A brief CSS2 tutorial for XML——翻译自Cascading Style Sheets, level 2

CSS可以被应用于任何形式的结构化文档,比如可扩展性标记语言XML,因为制作者可以自定义没有任何表现的标记,比起HTML,XML的表现依赖于更多的样式。

下面是一个XML的片段。
复制内容到剪贴板
代码:
<ARTICLE>
<HEADLINE>Fredrick the Great meets Bach</HEADLINE>
<AUTHOR>Johann Nikolaus Forkel</AUTHOR>
<PARA>
One evening, just as he was getting his
<INSTRUMENT>flute</INSTRUMENT> ready and his
musicians were assembled, an officer brought him a list of
the strangers who had arrived.
</PARA>
</ARTICLE>
查看效果

为了让XML文档拥有普通的视觉效果,我们首先必须定义标签元素的样式是内嵌(inline-level)的还是块级(block-level)的。

例子:
复制内容到剪贴板
代码:
INSTRUMENT { display: inline }/*定义标签样式为内嵌元素*/
ARTICLE, HEADLINE, AUTHOR, PARA { display: block }/*定义标签样式为块级元素*/
如何将定义好的CSS应用到XML文档中呢?使用下面这段代码。
复制内容到剪贴板
代码:
<?XML-stylesheet type="text/css" href="style.css"?>
为了让这个XML片段有更好的视觉表现,下面是一个完整的CSS文件。
复制内容到剪贴板
代码:
INSTRUMENT { display: inline;}
ARTICLE, HEADLINE, AUTHOR, PARA { display: block ;}
HEADLINE { font-size: 1.3em; }
AUTHOR { font-style: italic; }
ARTICLE, HEADLINE, AUTHOR, PARA { margin: 0.5em; }
ARTICLE{background:#f5f5f5;border:1px #eee solid;}
INSTRUMENT{font-weight:bold;}
查看最终效果
blog Web标准化交流会 WEB标准群:46077068
1..........CSS定議節點的方法:g-carton.xml
----------------------------------------------------------------
<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="1.css"?>這裏如果你連接不同的樣式表請修改.
<books>
<book>
<author>lisongtao</author>
<name>the application of ASP</name>
</book>
</books>
---------------------------------------------------------
1.css 顯示結果:BOOK節點的字的樣式,背景浅蓝色
-----------------------------------------------------------
books
{
display:block;
}
book
{
display:block;
background-color:#aabbcc
}

---------------------------------------------
心得:以上的定义方法和重定义HTML的标签样式一样,如对CSS不熟者,推荐用DW生成后再对应一下效果.很易就可以学会的.
学习中
这是小弟的网页看看行不http://www.meiuu.com
关于第五点 5. 多重样式表的叠加

链入的外部样式,和内部样式,之间,谁后定义谁优先级高。

试验了一下,是这样的。原来链入外部样式的那一句代码和本身内部样式代码挪个位置,定义顺序就改变了,优先级也改变了。果然。很受用。以前一直不明白。

[ 本帖最后由 loveface 于 2006-7-26 19:06 编辑 ]
不要浮躁

TOP

来了就顶一下吗

来了就顶一下吗
这是小弟的网页看看行不http://www.meiuu.com

TOP

顶!

好东西大家一起顶!!



TOP

好教材`新手的福音~~谢谢了~

希望有更多类似的教材.
新人学习中

TOP

css 定义xml还连一点也不知道。。
需要照顾

TOP

不错 不错   虽然往下看还有点晕忽忽的感觉   但确实是新手最好的教材

TOP

如果多个HMTL文件,使用@import 导入同一个CCS文件时会不会要重复下载呢?

有谁知道吗?link 的方式是不用重复下载的了。

TOP

谢谢搂住
学习中

TOP

好贴

多谢楼主!帮助很大!很系统!

TOP

补充xml的那部分看不太明白

补充xml的那部分看不太明白,xml不会~~

TOP

xml中使用内嵌和块的区别?

TOP

学习了    xml不太明白

TOP

.....效果的连接失效

TOP

学习~~~
褪粉试花~

TOP

值得学习

TOP

好好,真的是太好了,以后就把这里当作是一个活动的教程了

好好,真的是太好了,以后就把这里当作是一个活动的教程了 :) :) :) :) :) :) :D :D

TOP

引用:
<link rel="syslesheet" rev="styselsheet" href="css/index.css" type="text/css" media="all" />
请问rev是什么意思啊....

TOP

xml标签一个都看不懂,可不可以不学那个东西哦
WEB标准化讨论QQ群23864490电脑医院分群84140968

TOP

很受用 谢谢 顶上去

TOP

TOP

请问怎么插入别人做好的CSS导航条呢?
有IMAGES 和 XX.CSS的那种??

TOP

谢谢楼主~~ 才入门中~

TOP

呵可。学习中。。

TOP

呵呵...学习中...........

TOP

补充xml的那部分看不太明白,xml不会~~

TOP