HTML與CSS是兩個作用不同的語言,它們同時對一個網頁產生作用,因此必須將CSS與HTML鏈接在一起使用。在HTML中,引入CSS的方法主要有4種:行內式、內嵌式、導入式和鏈接式。
1. 行內式
行內式即在標記的style屬性中設定CSS樣式,這種方式本質上沒有體現CSS的優勢,因此不推薦使用。
行內式示例:
<div style="font-size:12px; text-align:center;">HTML中引用CSS的行內式方法</div>
2. 嵌入式
嵌入式將頁面中各種元素的設置集中寫在<head></head>之間,對於單一的網頁使用方便。但對於包含很多頁面的網站,如果每個頁面都以嵌入式方式設置各自的樣式,也將失去CSS帶來的優點,因此一個網站通常都是編寫一個獨立的CSS文件,然后將其引入HTML文檔中。
嵌入式示例:
<!DOCTYPE html> <html> <head> <meta name="viewport" content="width=device-width" /> <title></title> <style type="text/css"> div { font-size: 12px; text-align: center; } </style> </head> <body> <div>HTML中引用CSS的嵌入式方法</div> </body> </html>
3. 導入式與鏈接式
導入式和鏈接式的目的都是將一個獨立的CSS文件引入HTML文件中,二者的區別在於鏈接式使用HTML的標記引入外部CSS文件,而使用導入式則是使用CSS的規則引入外部CSS文件。
使用鏈接式引入外部CSS文件示例:
<link href="~/Content/Base.css" rel="stylesheet" type="text/css" />
使用導入式引入CSS文件示例:
<style type="text/css"> @import "/Content/Base.css" </style>
采用這兩種方式的顯示效果區別:使用鏈接方式時,會在加載頁面主體部分之前加載CSS文件,這樣顯示出來的網頁從一開始就是帶有樣式效果的。而使用導入式時,會在整個頁面加載完成后再加載CSS文件,對於有的瀏覽器來說,在一些情況下,如果網頁文件比較大,則會出現顯示無樣式的頁面,閃爍一下之后再出現設置樣式后的效果。從用戶體驗來說,這是使用導入式的一個缺陷。
對於一些比較大的網站,為了便於維護,可能會希望把所有的CSS樣式分別寫在幾個CSS文件中,這樣如果使用鏈接式引入,就需要幾個語句分別導入CSS文件。如果要調整CSS文件的分類,就需要同時調整HTML文件。這對於維護工作來說是一個缺陷。如果使用導入式,則可以只引入一個總的CSS文件,在這個文件中再導入其他獨立的CSS文件。
如果僅需要引入一個CSS文件,則使用鏈接方式;如果需要引入多個CSS文件,則首先用鏈接方式引入一個“目錄”CSS文件,這個“目錄”CSS文件中再使用導入式引入其他CSS文件。
但是如果希望通過JavaScript來動態決定引入哪個CSS文件,則必須使用鏈接方式才能實現。
4. 瀏覽器的私有屬性
Webkit類型的瀏覽器(如Safari、Chrome)的私有屬性是以-webkit-為前綴的,Gecko類型的瀏覽器(如Firefox)的私有屬性是以-moz-為前綴的,Opera瀏覽器的私有屬性是以-o-為前綴的,IE瀏覽器的私有屬性是以-ms-為前綴的(只IE8+支持-ms-前綴)。