DIV CSS 佈局教程網

 DIV+CSS佈局教程網 >> 網頁腳本 >> XML學習教程 >> XML基礎 >> 第12章 級聯樣式單[一]
第12章 級聯樣式單[一]
編輯:XML基礎     

XML教程

 

對於將諸如粗體和Helvetica樣式應用於特定的XML元素來說,CSS是一種非常簡單、易懂的語言。任何常用的字處理軟件都具有CSS支持的大多數樣式。例如,可選擇字體、字體的粗細、字號、背景顏色、各種元素的間距、元素周圍的邊框等等。但是,所有的樣式信息並不在文檔之內存儲,而是放置在一種稱之為樣式單(style sheet)的獨立文檔中。僅僅改變樣式單就可以以多種不同方式格式化一個XML文檔。不同的樣式單可用於不同的目的--打印、Web、展示和其他用途--所需要的只是適用於指定媒體的樣式,並且無需改變文檔中的任何內容。

本章的主要內容如下:

* 什麼是CSS?

* 如何將樣式單與文檔關聯

* 怎樣選擇元素

* 繼承父字體的大小

* 級聯過程

* 在CSS樣式單中使用注釋

* CSS單位

* 塊、內聯和列表項元素

* 字體屬性

* 顏色屬性

* 背景屬性

* 文本屬性

* 框屬性

12.1 什麼是CSS?

級聯樣式單(Cascading Style Sheets,以下簡稱CSS)是1996年作為把有關樣式屬性信息如字體和邊框加到HTML文檔中的標准方法而提出來的。但是,CSS與XML結合的確比與HTML結合得更好,因為HTML承擔著CSS標志和HTML標志之間向後兼容的任務。例如,要正確地支持CSS的nowrap屬性就要求廢除HTML中非標准的但又是經常使用的NOWRAP元素。由於XML元素沒有任何預定義的格式規定,所以不會限制何種CSS樣式只能用於何種元素。

一個CSS樣式單就是一組規則(rule)。每個規則給出此規則所適用的元素的名稱,以及此規則要應用於那些元素的樣式。例如,考察清單12-1,它是一首詩的CSS樣式單。此樣式單有五個規則。每個規則有一個選擇符--規則所應用的元素的名稱--和一組適用於此元素實例的屬性。第一個規則說明POEM元素應以塊的形式(Display:block)顯示其內容。第二個規則說明TITLE元素應以16磅(font-size:16pt)、粗體(font-weight:bold)將其內容顯示在塊中(Display:block)。第三個規則說明POET元素應通過自身顯示在塊中(Display:block),並且與緊隨其後的下一塊相距10個像素(margin-bottom:10px)。第四個規則與第三個相同,所不同的只是前者應用於STANZA元素。最後,第五個規則只簡單地說明VERSE元素也是顯示在自己的塊中。

清單12-1:用於詩作的CSS樣式單

POEM { display: block }

TITLE { display: block; font-size: 16pt; font-weight: bold }

POET { display: block; margin-bottom: 10px }

STANZA { display: block; margin-bottom: 10px }

VERSE { display: block }

在1998年,W3C公布了一個修訂的、詳述的CSS規范,稱之為CSS2(CSS2)。同時,他們又把原來的CSS改名為CSS1(CSS1)。CSS2幾乎是CSS1的超集,只有少部分不同,當遇到這些不同處時,我將給出注解。換句話說,CSS2是在CSS1的基礎上增添了音頻樣式單、媒體類型、特性選擇符和其他新的功能。因此,本章涉及到的幾乎每個例子既適用於CSS1,也適用於CSS2。在下一章中,將把CSS2看作CSS1的擴充來加以介紹。

Netscape Navigator 4.0和Internet Explorer 4.0及5.0支持CSS1的各部分。遺憾的是,對同一部分往往並非同時支持。Mozilla 5.0被認為對CSS1和大多數CSS2提供非完全的支持。Internet Explorer 5.0比Internet Explorer 4.0做得更好,可是它仍失去一些主要部分,特別是有關框模型和偽元素的部分。我將試圖指出某種浏覽器有特別嚴重問題的地方。

12.2 樣式單與文檔的鏈接

要真正地使清單12-1中的樣式單有意義,就得編寫一個使用該樣式單的XML文檔。清單12-2是用XML標記的來自於Walt Whitman的詩集名著Leaves of Grass中的一首詩。第二行是<?xml-stylesheet?>處理

XML學習教程| jQuery入門知識| AJAX入門| Dreamweaver教程| Fireworks入門知識| SEO技巧| SEO優化集錦|
Copyright © DIV+CSS佈局教程網 All Rights Reserved