CSS(Cascading Stylesheets,層疊樣式表)是一種製作網頁的新技術,現在已經為大多數的瀏覽器所支持,成為網頁設計必不可少的工具之一。使用CSS能夠簡化網頁的格式程式碼,加快下載顯示的速度,也減少了需要上傳的程式碼數量,大大減少了重複勞動的工作量。尤其是當你面對的是有數百個網頁的網站時,CSS簡直像是神對我們的恩賜! ^_^
前言
CSS(Cascading Stylesheets,層疊樣式表)是一種製作網頁的新技術,現在已經為大多數的瀏覽器所支持,成為網頁設計必不可少的工具之一。
W3C(The World Wide Web Consortium)把動態HTML(Dynamic HTML)分成三個部分來實作:腳本語言(包括JavaScript、Vbscript等)、支援動態效果的瀏覽器(包括Internet Explorer、Netscape Navigator等)和CSS樣式表。
一.層疊樣式表的特色
且不說過去的網頁缺少動感,就是在網頁內容的排版佈局上也有很多困難,如果不是專業人員或特別有耐心的人,很難讓網頁按自己的構思和創意來顯示訊息。即便是掌握了HTML語言精髓的人也要通過多次地測試,才能駕馭好這些資訊的排版,過程十分漫長和痛苦。為了Internet的發展,讓更多人早日踏足這個多采多姿的世界,新的HTML輔助工具呼之欲出。
樣式表就是在這種需求下誕生的,它首先要做的是為網頁上的元素精確地定位,可以讓網頁設計者象導演一樣,輕易地控制由文字、圖片組成的演員們,在網頁這個舞台上依劇本要求好好表演。
其次,它把網頁上的內容結構和格式控制分開。瀏覽者想要看的是網頁上的內容結構,而為了讓瀏覽者更能看到這些訊息,就要透過格式控制來幫忙了。以前兩者在網頁上的分佈是交錯結合的,查看修改很不方便,而現在把兩者分開就會大大方便網頁的設計者。內容結構和格式控制相分離,使得網頁可以光由內容構成,而將所有網頁的格式控制指向某個CSS樣式表檔。這樣一來的好出表現在兩個方面:
第一,簡化了網頁的格式代碼,外部的樣式表還會被瀏覽器保存在快取裡,加快了下載顯示的速度,也減少了需要上傳的程式碼數量(因為重複設定的格式將只儲存一次)。
第二,只要修改保存著網站格式的CSS樣式表檔案就可以改變整個網站的風格特色,在修改頁面數量龐大的網站時,顯得格外有用。避免了一個網頁的修改,大大減少了重複勞動的工作量,當你面對的是有數百個網頁的站點時,CSS簡直像是神對我們的恩賜! ^_^
二.新增層疊樣式表的方法
我們為網頁新增樣式表的方法有四種。
1.最簡單的方法是直接加入在HTML的識別碼(tag)裡:
網頁內容
舉個例子:
CSS實例
程式碼說明:
用藍色顯示字體大小為10pt的「CSS實例」。儘管使用簡單、顯示直觀,但是這種方法不怎麼常用,因為這樣添加無法完全發揮樣式表的優勢「內容結構和格式控制分別保存」。
2.加入在HTML的頭訊息標識符裡:
style>
type=”text/css」表示樣式表採用MIME類型,幫助不支援CSS的瀏覽器過濾掉CSS程式碼,避免在瀏覽器面前直接以原始程式碼的方式顯示我們設定的樣式表。但為了確保上述情況一定不要發生,還是有必要在樣式表裡加上註解識別碼「」。
3.連結樣式表
同樣是添加在HTML的頭訊息標識符裡:
*.css是單獨保存的樣式表文件,其中不能包含標識符,並且只能以css為後綴。
Media是可選的屬性,表示使用樣式表的網頁會用什麼媒體輸出。取值範圍:
·Screen(預設):輸出到電腦螢幕
·Print:輸出到印表機
·TV:輸出到電視
·Projection:輸出到投影機
·Aural:輸出到揚聲器
·Braille:輸出到凸字觸覺感知設備
·Tty:輸出到電傳打字機
·All:輸出到以上所有設備
如果要輸出到多種媒體,可以用逗號分隔取值表。
Rel屬性表示樣式表將以何種方式與HTML文件結合。值範圍:
·Stylesheet:指定一個外部的樣式表
·Alternate stylesheet:指定使用一個互動樣式表
4.聯合使用樣式表
同樣是添加在HTML的頭資訊標識符裡:
@imports”>
@imports .css”
其他樣式表的聲明
-->
[email protected]��方法很相似,但聯合樣式表輸入方式更有優勢。因為聯合法可以在連結外部樣式表的同時,針對該網頁的具體情況,做出別的網頁不需要的樣式規則。
要注意的是:
·聯合法輸入樣式表必須以@import開頭。
·如果同時輸入多個樣式表有衝突的時候,將按照第一個輸入的樣式表對網頁排版。
·如果輸入的樣式表和網頁裡的樣式規則衝突時,請使用外部的樣式表。
三.層疊樣式表的格式
一般來說,樣式表的宣告分為選擇符(selector)和區塊{}(block),區塊包含屬性(properties)和屬性的值(value),基本格式如下:
選擇符{屬性:值}
其它格式1:
選擇符1,選擇符2,選擇符3 {屬性1:值1;屬性2:值2;屬性3:值3}
有時候多個選擇符將使用相同的設置,為了簡化代碼,我們可以一次為它們設置樣式,並在多個選擇符之間加上“,”來分隔它們。
當有多個屬性的時候,必須在兩個屬性之間用「;」來分隔。
其它格式2:
選擇符1 選擇符2 {屬性1:值1;屬性2:值2;屬性3:值3}
和格式1非常相似,只是在選擇符之間少加了“,”,但作用卻大不相同。表示如果選擇符2包含的內容同時包含在選擇符1裡的時候,所設定的樣式規則才會運作。
四.層疊樣式表的分類
為了使網頁的格式不過分的單調,必需讓相同的選擇符也能分類,並能按照不同的類別來進行不同的樣式設計。基本格式如下:
選擇符.類別名稱 {屬性:值}
類別名稱將可以在HTML的識別碼裡引用:
網頁內容
五.層疊樣式表的偽類
除了上述的分類方式外,為了使分類的使用更靈活多樣,又產生了偽類的概念。類和偽類有什麼樣的差別呢?
一般地說,選擇符可以和多個類別採用捆綁的形式來設定,這樣雖然能夠為同一個選擇符創建多種不同的樣式,但捆綁的形式同時也限制了設定的類為其它的選擇符所使用。偽類的產生就是為了解決這個問題,每個預先宣告的偽類別都可以被所有的HTML標識符引用,當然有些區塊級內容的設定除外。基本格式如下:
.偽類名 {屬性:值}
偽類可以被任何識別符在HTML裡引用。
網頁內容
六.控製字體的樣式
控製字體的樣式包括控製字體類型、字體大小、字體風格、字體粗細四個部分。
1.字體類型
平常在使用WORD之類的字處理軟體的時候,經常需要調整字體的顯示,比如說「Arial」、「Impact」、「Verdana」等字體都是筆者使用的較多的。
基本格式如下:
font-family: 字體名稱
如果在font-family後加上多種字體的名稱,瀏覽器回按字體名稱的順序逐一在用戶的計算機裡尋找已經安裝的字體,一旦遇到與要求的相符的字體,就按這種字體顯示網頁內容,並停止搜索;如果不匹配就繼續搜索,直到找到為止,萬一樣式表裡的所有字體都沒有安裝的話,瀏覽器就會用自己預設的字體來取代顯示網頁的內容。
注意:
·當指定多種字體時,用“,”分隔每個字體名稱。
·當字體名稱包含兩個以上分開的單字時,用「」把該字體名稱括起來。
·當樣式規則外已經有“”時,用‘’代替“”。
2.字體大小
基本格式如下:
font-size: 字號參數
字號的值範圍:
·以Point為單位:點單位在所有的瀏覽器和操作平台上都適用
·以Point為單位:點單位在所有的瀏覽器和操作平台上都適用
·以Em為單位:指字母要素的尺寸,和Point相同距離
·以Pixes為單位:像素可以使用於所有的操作平台,但可能會因為瀏覽者的螢幕解析度不同,而造成顯示上的效果差異
·以in(英吋)為單位
·以cm(公分)為單位
·以mm(毫米)為單位
🎜·以pc(印表機的字體大小)為單位🎜🎜·以ex(x- height)為單位🎜🎜·smaller:比當前文字的預設大小更小一號🎜·larger:比目前文字的預設大小更小大號
·使用比例關係
·xx-small
·x-small
·使用比例關係·small
·medium
·姆拉
·xx-large3.字體風格字體風格只能控制各種斜體字的顯示。 基本格式如下:font-style: 斜體字的名稱4.字體粗細字體粗細控制粗體字的顯示,取值範圍從數字100~900,瀏覽器預設的字體粗細為400。另外可以透過參數lighter和bolder使得字體在原有基礎上顯得更細或更粗。 基本格式如下:font-weight: 字體粗細