CSS第3期
四、如何在網(wǎng)頁(yè)中插入CSS
前兩章我們了解了CSS的語(yǔ)法,但要想在瀏覽器中顯示出效果,就要讓瀏覽器識(shí)別并調(diào)用。當(dāng)瀏覽器讀取樣式表時(shí),要依照文本格式來(lái)讀,這里介紹四種在頁(yè)面中插入樣式表的方法:鏈入外部樣式表、內(nèi)部樣式表、導(dǎo)入外表樣式表和內(nèi)嵌樣式。
1. 鏈入外部樣式表
鏈入外部樣式表是把樣式表保存為一個(gè)樣式表文件,然后在頁(yè)面中用<link>標(biāo)記鏈接到這個(gè)樣式表文件,這個(gè)<link>標(biāo)記必須放到頁(yè)面的<head>區(qū)內(nèi),如下:
<head>
……
<link rel="stylesheet" type="text/css" href="mystyle.css">
……
</head>
上面這個(gè)例子表示瀏覽器從mystyle.css文件中以文檔格式讀出定義的樣式表。rel=”stylesheet”是指在頁(yè)面中使用這個(gè)外部的樣式表。type=”text/css”是指文件的類型是樣式表文本。href=”mystyle.css”是文件所在的位置。
一個(gè)外部樣式表文件可以應(yīng)用于多個(gè)頁(yè)面。當(dāng)你改變這個(gè)樣式表文件時(shí),所有頁(yè)面的樣式都隨之而改變。在制作大量相同樣式頁(yè)面的網(wǎng)站時(shí),非常有用,不僅減少了重復(fù)的工作量,而且有利于以后的修改、編輯,瀏覽時(shí)也減少了重復(fù)下載代碼。
樣式表文件可以用任何文本編輯器(例如:記事本)打開(kāi)并編輯,一般樣式表文件擴(kuò)展名為.css。內(nèi)容是定義的樣式表,不包含HTML標(biāo)記,mystyle.css這個(gè)文件的內(nèi)容如下:
hr {color: sienna}
p {margin-left: 20px}
body {background-image: url("images/back40.gif")}
(定義水平線的顏色為土黃;段落左邊的空白邊距為20象素;頁(yè)面的背景圖片為images目錄下的back40.gif文件)
2. 內(nèi)部樣式表
內(nèi)部樣式表是把樣式表放到頁(yè)面的<head>區(qū)里,這些定義的樣式就應(yīng)用到頁(yè)面中了,樣式表是用<style>標(biāo)記插入的,從下例中可以看出<style>標(biāo)記的用法:
<head>
……
<style type="text/css">
hr {color: sienna}
p {margin-left: 20px}
body {background-image: url("images/back40.gif")}
</style>
……
</head>
注意:有些低版本的瀏覽器不能識(shí)別style標(biāo)記,這意味著低版本的瀏覽器會(huì)忽略style標(biāo)記里的內(nèi)容,并把style標(biāo)記里的內(nèi)容以文本直接顯示到頁(yè)面上。為了避免這樣的情況發(fā)生,我們用加HTML注釋的方式(<!-- 注釋 -->)隱藏內(nèi)容而不讓它顯示:
<head>
……
<style type="text/css">
<!--
hr {color: sienna}
p {margin-left: 20px}
body {background-image: url("images/back40.gif")}
-->
</style>
……
</head>
3. 導(dǎo)入外部樣式表
導(dǎo)入外部樣式表是指在內(nèi)部樣式表的<style>里導(dǎo)入一個(gè)外部樣式表,導(dǎo)入時(shí)用@import,看下面這個(gè)實(shí)例:
<head>
……
<style type=”text/css”>
<!--
@import “mystyle.css”
其他樣式表的聲明
-->
</style>
……
</head>
例中@import “mystyle.css”表示導(dǎo)入mystyle.css樣式表,注意使用時(shí)外部樣式表的路徑。方法和鏈入樣式表的方法很相似,但導(dǎo)入外部樣式表輸入方式更有優(yōu)勢(shì)。實(shí)質(zhì)上它相當(dāng)于存在內(nèi)部樣式表中的。
注意:導(dǎo)入外部樣式表必須在樣式表的開(kāi)始部分,在其他內(nèi)部樣式表上面。
4. 內(nèi)嵌樣式
內(nèi)嵌樣式是混合在HTML標(biāo)記里使用的,用這種方法,可以很簡(jiǎn)單的對(duì)某個(gè)元素單獨(dú)定義樣式。內(nèi)嵌樣式的使用是直接將在HTML標(biāo)記里加入style參數(shù)。而style參數(shù)的內(nèi)容就是CSS的屬性和值,如下例:
<p style="color: sienna; margin-left: 20px">
這是一個(gè)段落
</p>
(這個(gè)段落顏色為土黃,左邊距為20象素)
在style參數(shù)后面的引號(hào)里的內(nèi)容相當(dāng)于在樣式表大括號(hào)里的內(nèi)容。
注意:style參數(shù)可以應(yīng)用于任意BODY內(nèi)的元素(包括BODY本事),除了BASEFONT、PARAM和SCRIPT。
5. 多重樣式表的疊加
上一章里我們已經(jīng)提到樣式表的層疊順序,這里我們討論插入樣式表的這幾種方法的疊加,如果在同一個(gè)選擇器上使用幾個(gè)不同的樣式表時(shí),這個(gè)屬性值將會(huì)疊加幾個(gè)樣式表,遇到?jīng)_突的地方會(huì)以最后定義的為準(zhǔn)。例如,我們首先鏈入一個(gè)外部樣式表,其中定義了h3選擇符的color 、text-alig和font-size屬性:
h3
{
color: red;
text-align: left;
font-size: 8pt
}
(標(biāo)題3的文字顏色為紅色;向左對(duì)齊;文字尺寸為8號(hào)字)
然后在內(nèi)部樣式表里也定義了h3選擇符的text-align和font-size屬性:
h3
{
text-align: right;
font-size: 20pt
}
(標(biāo)題3文字向右對(duì)齊;尺寸為20號(hào)字)
那么這個(gè)頁(yè)面疊加后的樣式就是:
color: red;
text-align: right;
font-size: 20pt
(文字顏色為紅色;向右對(duì)齊;尺寸為20號(hào)字)
字體顏色從外部樣式表里保留下來(lái),而對(duì)齊方式和字體尺寸都有定義時(shí),按照后定義的優(yōu)先而依照內(nèi)部樣式表。
注意:依照后定義的優(yōu)先,所以優(yōu)先級(jí)最高的是內(nèi)嵌樣式,內(nèi)部樣式表高于導(dǎo)入外部樣式表,鏈入的外部樣式表和內(nèi)部樣式表之間是最后定義的優(yōu)先級(jí)高。