曝光臺 注意防騙
網曝天貓店富美金盛家居專營店坑蒙拐騙欺詐消費者
創建更為有效的文件格式和編碼方法,但實際上簡單并不是必須的。
XML 實用大全
第 66 頁
4.4 編制樣式單以便顯示文檔
圖4-1 中的XML 文檔的原始視圖對于某些應用來說也是不錯的。例如,此視圖允許折疊和展開單個的元素,因而可以只看文
檔中要看的部分。但大多數時候,人們總希望看到更好的形式,特別是,想要在Web 上顯示數據時。為了提供更好的外觀,
必須為文檔編寫樣式單。
在本章中,我們使用的是CSS 樣式單。CSS 樣式單將特定的格式化信息與文檔中的每個元素聯系起來。我們的XML 文檔中使
用的元素的完全列表如下:
SEASON
YEAR
LEAGUE
LEAGUE_NAME
DIVISION
DIVISION_NAME
TEAM
TEAM_CITY
TEAM_NAME
PLAYER
SURNAME
GIVEN_NAME
POSITION
GAMES
GAMES_STARTED
AT_BATS
RUNS
HITS
DOUBLES
XML 實用大全
第 67 頁
TRIPLES
HOME_RUNS
RBI
STEALS
CAUGHT_STEALING
SACRIFICE_HITS
SACRIFICE_FLIES
ERRORS
WALKS
STRUCK_OUT
HIT_BY_PITCH
一般來說,我們要用重復的過程來為每個元素增加樣式規則,一次一個元素地進行,然后檢查是否達到了要求,再處理下一
個元素。在本例中,這種辦法對于不熟悉樣式單屬性的人來說也有好處。
4.4.1 與樣式單連接
樣式單的名稱可隨便取。如果只是為一個文檔編制樣式單,那么習慣上樣式單的文件與文檔的文件名一樣,但是三字母的擴
展名是.css 而不是.xml。例如,對于XML 文檔1998shortstats.xml 來說,樣式單文件可以叫做1998shortstats.css。另一
方面,如果同樣的樣式單還要用于許多文檔,那么,可能需要更為普通的文件名,如baseballstats.css。
由于CSS 樣式單是級聯的,同一文檔可有不止一個樣式單。因而baseballstats.css 可向文檔施加某些一般的樣式規則,而
1998shortstats.css 可覆蓋其中的幾條規則,以便在同一文檔(1998shortstats.xml)中處理特定的細節。我們將第12 章
“級聯樣式單(級別1)”中討論這一問題。
為了將樣式單與文檔聯系起來,只要像下面所示簡單地在XML 聲明和根元素間增加一個<?xml-stylesheet?>處理指令就可以
了:
<?xml version="1.0" standalone="yes"?>
<?xml-stylesheet type="text/css" href="baseballstats.css"?>
<SEASON>
...
這條指令告訴瀏覽器讀取文檔并施加保存在文件baseballstats.css 中的樣式單。這個文件是假設放在與XML 文件同一服務
器上的同一目錄中的。換句話說,baseballstats.css 是個相對的URL。完全的URL 也是可以使用的。例如:
XML 實用大全
第 68 頁
<?xml version="1.0" standalone="yes"?>
<?xml-stylesheet type="text/css"
href="http://metalab.unc.edu/xml/examples/baseballstats.css"?>
<SEASON>
...
開始時,用戶可以簡單地將一個名為baseballstats.css 的空文件放在與XML 文檔相同的目錄中。然后向
1998shortstats.xml (清單4-1)中增加適當的指令,該文檔現在在瀏覽器中的外觀如圖4-2 所示。只顯示了元素內容。
可折疊的大綱視圖(圖4-1)不見了。元素內容的格式使用的是瀏覽器的缺省格式,在本例中是黑色12 磅的Times Roman 字
體放在白色背景上。
圖4-2 使用了空白樣式之后的1998 年兩大棒球聯賽的統計數字顯示
如果在指定位置找不到樣式單處理指令(xml-stylesheet)中指定的樣式單文件名,也可看到一個很像圖4-2 的視
圖。
4.4.2 為根元素指定樣式規則
用戶不必為每個元素指定樣式規則。許多元素允許將其父元素的樣式串接下來。因而最重要的樣式是根元素的樣式,在本例
中就是SEASON 元素。這個樣式定義了頁面上所有其他元素的缺省樣式。大致為72 dpi 的分辨率的計算機顯示器不如紙上
300dpi 或更大的分辨率那樣高。所以,Web 頁面通常應該使用較大磅數的字號。首先將缺省樣式定義為白色背景上的14 磅
黑色字,定義如下:
XML 實用大全
第 69 頁
SEASON {font-size: 14pt; background-color: white;
color: black; display: block}
將這條語句放在一個文本文件中,將其以文件名baseballstats.css 與清單4-1 中的文件(1998shortstats.xml)保存在同
一目錄中。在瀏覽器中打開1998shortstats.xml。我們就會看到如圖4-3 所示的情況。
在圖4-2 和圖4-3 之間字號發生了變化,但文本顏色和背景顏色沒有變化。其實這沒有必要加以設置,因為黑色文本和白色
背景是缺省的。但明確地加以設置也沒有損失什么。
圖4-3 以14 磅白地黑字顯示的棒球統計數據
4.4.3 為標題指定樣式規則
元素YEAR 或多或少可算是文檔的標題。因而使其顯示得大一些,用32 磅的字號也就足夠大了。同時,它還應該從文檔的其
余部分突出出來,而不是簡單地與其他內容混在一起。利用下面的樣式規則可以達到這些目的:
YEAR {display: block; font-size: 32pt; font-weight: bold;
text-align: center}
圖4-4 顯示的是將此規則增加到樣式單中之后的文檔。請特別注意,在“1998”后面的換行。有這個換行是由于YEAR 是塊
級元素。而在文檔中的其他元素都是內聯元素。我們只能使塊級元素居中(或左對齊、右對齊或兩端對齊)。
XML 實用大全
第 70 頁
圖4-4 將YEAR 元素格式化為標題
在使用了這種樣式單的文檔中,YEAR 元素與HTML 中的H1 標題元素的功能重復了。 由于這個文檔是非常整齊地分支結構,
幾個其他元素的功能與HTML 中的H2、H3 等相似。這些元素都可以用相似的規則加以格式化,只是將字號略微減小一些罷了。
例如,SEASON 由兩個LEAGUE 元素組成。每個LEAGUE 的名稱,即LEAGUE_NAME 元素,起了HTML 中的H2 元素一樣的作用。
中國航空網 www.k6050.com
航空翻譯 www.aviation.cn
本文鏈接地址:
XML實用大全(26)