CSS:Cascading Style Sheets 層疊樣式表
在html裏面使CSS生效有三種方式:內嵌(embedded)、外部鏈接(link標籤)、內聯(inline),內嵌和創建外部鏈接都必須寫在HTML的頭部(head)裏面,內聯樣式(incline style)是利用HTML中標籤的style屬性來達成。
1 內嵌
在HTML的 <head></head>之間,創建一個<style></style>標籤對,然後將CSS寫入其中,如:
<head>
<title>CSS</title>
<meta charset="utf-8">
<style type="text/css">
p{color: red;}
</style>
</head>
2 外部鏈接
2.1 <link>
在HTML的 <head></head>標籤對中使用HTML的<link>標籤鏈接到一個外部的css文件
語法爲:
<link rel="stylesheet" type="text/css" herf="http://your url.com/sheet.css"/>
2.2 @import
在<style></style>標籤對中使用@import
鏈接到一個外部的css文件
語法:
@import url();
而@import
必須寫在<style>的最前面,後面再跟其他的樣式屬性,如:
<style type="text/css">
@import url(www.url.com/temp.css);
p{color:red;}
h1{font:150%;}
</style>
如果沒有在最前面,則@import
鏈接的樣式表不能生效。
與<link>標籤的區別是,@import
可以寫在css文件中,因爲css文件不能包含其他任何文檔標記,但是可以在任何css外部文件裏面使用@import
來鏈接到另外一個css外部文件,舉例如下:
<head>
<title>temp</title>
<link rel="stylesheet" type="text/css" href="temp2.css">
</head>
temp2.css爲
@import url("temp3.css");/*或可以寫成@import url(temp3.css)即不帶引號,不會影響結果*/
p{color: red;}
temp3.css爲
h1{color: green;}
經過驗證,等同於如下的效果:
<style type="text/css">
p{color: red;}
h1{color: green;}
</style>
和<link>一樣,一個HTML文檔裏可以有多個@import
,此外,@import
無法指定候選樣式表
網上有帖子談到了@import
會在一定程度上造成頁面加載上的延遲,見(http://www.kuqin.com/webpagedesign/20090429/48868.html)因此不推薦用此方法加載樣式表
3 內聯(inline)
利用HTML的style
屬性,爲除了<body>之外出現的任意標籤來設置樣式,這樣子只能爲單一元素指定一些樣式,舉例:
<p style="color:red;">Temp</p>/*用雙引號而不是大括號*/
HTML的style
屬性一定程度上會削弱css組織管理文檔的樹形結構,所以也不推薦。
參考: 《CSS: The Definitive Guide》 第三版