萬盛學電腦網

 萬盛學電腦網 >> 網頁制作 >> DivCSS教程 >> CSS教程:1.2 (X)HTML與CSS

CSS教程:1.2 (X)HTML與CSS

class="area">

(X)HTML與CSS的關系就是“內容”與“形式”的關系,由(X)HTML確定網頁的內容,而通過CSS來決定頁面的表現形式。

一、CSS標准簡介

和HTML類似,CSS也是由W3C組織負責制定和發布的。1996年12月,發布了CSS 1.O規范;1998年5月,發布了CSS 2.0規范。目前有兩個新版本正在處於工作狀態。即CSS 2.1版和CSS 3.0版。

圖1所示的是2011年3月24日CSS 3.0發布的待批准的推薦版,讀者可以到http://www.w3.org/TR/下載

圖1 W3C組織發布的CSS 3.0規范工作稿
圖1 W3C組織發布的CSS 3.0規范工作稿

然而W3C並沒有任何強制力要求軟件廠商的產品必須符合規范,因此目前流行的浏覽器都沒有完全符合CSS的規范,這也就給設計師設計網頁帶來了一些難題。

但是隨著技術的發展,各種浏覽囂都會逐漸在這方面做更多的努力,相信情況會越來越好。目前,最主流的3種浏覽器是IE 7.0,IE 8.0和Firefox.它們在中國的使用率總和越過了99%,.而以這3種浏覽器為目標.已經完全可以做出顯示非常一致的CSS布局頁面。

在了解了XHTML與HTML之間的關系以後,為了便於講解,本教程在後面的講解中都不再使用XHTML這個名詞,而統一使用HTML,其含義為(X)HTML。

二、在HTML中引入CSS的方法

HTML與CSS是兩個作用不同的語言,它們同時對一個網頁產生作用,因此必須通過一些方法,將CSS與HTML掛接在一起,才能正常工作。

在HTMI中,引入CSS的方法主要有行內式、內嵌式,導入式和鏈接式4種。

1.行內式

行內式即在標記的style屬性中設定CSS樣式,這種方式本質上沒有體現出CSS的優勢,因此不推薦使用。

2.嵌入式

嵌入式則將對頁面中各種元素的設置集中寫在<head>和</head>之阃。對於單一的兩頁。

這種方式很方便。但是對於一個包含很多頁面的網站,如果每個頁面都以內嵌方式設置各自的樣式,就失去了CSS帶來的巨大優點,因此一個網站通常都是編寫一個獨立的CSS樣式表文件,使用以下兩種方式中的一種,引入HTML文檔中。

3.導入式與鏈接式

導入式和鏈接式的目的都是將一個獨立的CSS文件引入HTML文件,二者的區別不大。這裡給出一個比較深入的介紹,因為很多讀者對此都有疑問。

事實上.二者最大的區別在於鏈接式使用HTML的標記引入外部CSS文件,而使用導入式則是使用CSS的規則引入外部CSS文件。因此它們的語法也不同。

如果使用鏈接式,需要使用如下語句引入外部CSS文件。

  1. <link href="wangyexx.css" rel="stylesheet" type="text/css" />

如果使用導人式,則需要使用如下語句。

  1. <style type="text/css">
  2. @import "wangyexx.css";
  3. </style>

此外,采用這兩種方式後的顯示效果也略有區別。使用鏈接方式時,會在裝載貞面主體部分之前裝載CSS文件,這樣顯示出來的網頁從一開始就是帶有樣式效果的,而使用導入式時,會在整個頁面裝載完成後再裝載CSS文件,對於有的浏覽器來說,在一些情況下,如果網頁文件的體積比較大,則會出現先顯示無樣式的頁麗,閃爍一下之後再出現設置樣式後的效果。從浏覽者的感受來說,這是使用導入式的一個缺陷。

對於一些比較大的網站,為了便於維護,可能會希望把所有的CSS樣式分類別放到幾個CSS文件中,這樣如果使用鏈接式引入,就需要幾個語句分別導入CSS文件。如果要調整CSS文件的分類,就需要同時調整HTML文件。這對於維護工作來說,是一個缺陷。如果使用導入式,則可以只引進一個總的CSS文件,在這個文件中再導人其他獨立的CSS文件;而鏈接則不具備這個特性。

因此這裡給大家的建議是,如果僅需要引入一個CSS文件,則使用鏈接方式;如果需要引入多個CSS文件,則首先用鏈接方式引入一個“目錄”CSS文件,這個“目錄”CSS文件中再使用導人式引入其他CSS文件。

但是如果希望通過JavaScript來動態決定引入哪個css文件,則必須使用鏈接方式才能實現。

這裡給出一個完整的例子,演示各種導入方式的具體寫法。為了在本教程後面的章節中便於講解,大多數情況使用內嵌式來完成,因為所舉的例子通常就是一個獨立的頁面。

假設有如下頁面代碼。

  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  2. "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  3. <html xmlns="http://www.w3.org/1999/xhtml">
  4. <head>
  5. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  6. <title>網頁示例1</title>
  7. </head>
  8. <body>
  9. <h1 style="color:white; background-color:blue">
  10. 這裡是一行文本WANGYEXX.COM
  11. </h1>
  12. </body>
  13. </html>

代碼中使用的是行內式,也就是直接在h1標記的style屬性中設置CSS樣式。這裡將文字顏色設置為白色,背景顏色設置為藍色,浏覽器中的效果如圖2所示。

圖2 使用行內樣式設置CSS
圖2 使用行內樣式設置CSS

這種方式僅對這一個h1標題產生效果,因此如果希望頁面中的所有h1標記都使用這種樣式,就可以將代碼改造為內嵌式。方法是把樣式從行內移動到head部分,具體的代碼如下。

  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  2. "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  3. <html xmlns="http://www.w3.org/1999/xhtml">
  4. <head>
  5. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  6. <title>網頁示例2</title>
  7. <style type="text/css">
  8. h1{
  9. background-color:blue;
  10. color:white
  11. }
  12. </style>
  13. </head>
  14. <body>
  15. <h1>這裡是一行文本WANGYEXX.COM</h1>
  16. <h1>這裡是另一行文本WANGYEXX.COM</h1>
  17. </body>
  18. </html>

在head部分,這裡的h1就稱為“選擇器”,即選中了阿頁中的某些特定的元素,後面的樣式規則和前面的行內規則的寫法相同。

注意:每—條規則都要以分號結束.最後一條則不必以分號結束。

這樣,頁面中所有的h1標題都會按照這種效果顯示,如圖3所示。

圖3 使用內嵌方式設置CSS
圖3 使用內嵌方式設置CSS

如果希望把CSS的規則都寫到一個外部獨立的文件中,然後引入HTML.應再單獨寫一個文件,文件名的後綴為.css.內容如下:

  1. h1{
  2. background-color:blue;
  3. color:white;
  4. }

然後將HTML文檔中的<style></style>部分改為:

  1. <style type="text/css">
  2. @import "wangyexx.css";
  3. </style>

注意:這裡需要指定正確的css文件路徑。

這樣顯示效果與上面的例子完全相同。如果要使用鏈接式引入這個CSS文件,可將上面的<style></style>部分刪除,然後在head部分加入如下語句:

  1. <link href="wangyexx.css" rel="stylesheet" type="text/css" />

顯示效果也是完全相同的。本節代碼讀者請參考本教程提供下載案例中“第1章”中的示例1.htm至示例4.htm。

copyright © 萬盛學電腦網 all rights reserved