總 論
自W3C(The World Wide Web Consortium)制定了代號為Cougar的HTML的4.0版本以來,存在在Web頁面中的動態效果首次被正式的承認了,W3C把動態超文本(Dynamic HTML)的實現分為了三個部分:腳本、支持動態效果的瀏覽器和CSS。前兩者也許你經常用到,但CSS是什么或許你并不清楚,假如有過制作Web頁面的經歷,你可能聽說過樣式單或風格單,假如對此你亦無耳聞,不要緊,只要你想制作出具有更多新特性的Web頁,本文將同樣適合于你。(請使用IE4或IE5對CSS手冊中的屬性實例進行驗證)
一、什么是CSS?
CSS是Cascading Style Sheet的縮寫,有些書上把它譯為"層疊樣式單"或"級聯樣式單"(下文簡稱"樣式單"),在1997年W3C頒布HTML4標準的同時也公布了有關樣式單的第一個標準CSS1。樣式單是對以前的HTML(3.2以前的HTML版本)語法的一次重大革新,以前的HTML版本中,各種功能的實現是通過標記元素實現的,這也造成了各個瀏覽器廠商為了標新立意創建各種只有自家支持的標記,各種標記互相嵌套,就可以達到不同的效果,比如要在一段文字中把一部分文字變成紅色,HTML3.2中應該是這樣的:
<p><font color=red>這里顯示紅色字</font></p>
而在樣式單中,把某些標記(如上例中的"font"標記)屬性化,利用樣式單,上例可以變成:
<p style="color:red">這里顯示紅色字</p>
這就是樣式單的全部功能嗎?遠遠不是!前面說過樣式單是DHTML的一部分,建立樣式單的真正意義在于把對象真正引入了HTML,使得可以使用腳本程序(如javascript、VBScript)調用對象屬性,并且可以改變對象屬性,達到動態的目的,這在以前的HTML中是無法實現的,假如你使用過如VB等面向對象的編程工具,你會更快的發現,用樣式單做DHTML是多么輕易。樣式單的另一項貢獻是簡化了HTML中各種繁瑣的標記,使得各個標記的屬性更具有一般性和通用性,并且樣式單擴展了原先的標記功能,能夠實現更多的效果,樣式單甚至超越了Web頁面的本身顯示功能,而把樣式擴展到多種媒體上,顯示了難以抗拒的魅力。
樣式單自從CSS1的版本之后,又在1998年5月發布了CSS2版本,樣式單得到了更多的充實。Internet Explorer4和Netscape Navigator4都宣傳支持樣式單,但從各方面來看IE4的效果都要超過NE4,這是因為IE4和NE4的javascript文檔模型(DOM)不同而造成的,從表面看,二者的模型區別不大,但實質上卻是大相徑庭,IE4的模型能夠更加輕易的把動態效果引入Web頁面,雖然現在IE4的模型只有微軟自己支持,但它卻已被清楚的寫入了W3C的DHTML標準;而NE4的樣式單并不能通過腳本調用對象的屬性,說的不好聽一點,它的樣式單只是徒有其表罷了。(Netscape公司自己開發了一種樣式單稱作JSSS,它利用javascript來定義樣式,但是并沒有得到W3C的承認。)
二、進一步了解樣式單
Cascading Style Sheet中的Cascading是"層疊"的意思,也就是說在同一個Web文檔中可以有多個樣式單存在,這些樣式單根據所在的位置,擁有不同的優先級,優先級越高,就會被最后在顯示時采用。從樣式單插入的形式來看可以分為三種:
? 內聯式樣式單:它利于現有的HTML標記,把非凡的樣式加入到那些由標記控制的信息中,比如剛才的例子。
? 嵌入式樣式單:它和javascript一樣可以嵌入到HTML文件的頭部中去(<html>和<body>標記之間),使用<Style>和</Style>容器裝載,例如:"<style> p {color : red ; font-weight : bold} </style>",這樣會對頁面中所有<p>標記都起作用。
新聞熱點
疑難解答