網頁設計中常用的CSS屬性
文字或元素的顏色 color
背景顏色 background-color
背景映像 background-image
字型 font-family
文字大小 font-size
列表樣式 list
滑鼠樣式 cursor
邊框樣式 border
內補白 padding
外邊距 margin
等...
[編輯本段]
CSS的文法:
CSS的定義是由三個部分構成:
選擇符(selector),屬性(properties)和屬性的取值(value)。
文法: selector {property: value} (選擇符 {屬性:值})
說明:
·選擇符是可以是多種形式,一般是你要定義樣式的HTML標記,例如BODY、P、TABLE……,你可以通過此方法定義它的屬性和值,屬性和值要用冒號隔開:
例子:body {color: black},此例的效果是使頁面中的文字為黑色。
·如果屬性的值是多個單片語成,必須在值上加引號,比如字型的名稱經常是幾個單詞的組合:
例子:p {font-family: "sans serif"} (定義段落字型為sans serif)
· 如果需要對一個選擇符指定多個屬性時,我們使用分號將所有的屬性和值分開:
例子:p {text-align: center; color: red} (段落置中排列;並且段落中的文字為紅色)
2. 選擇符組
你可以把相同屬性和值的選擇符組合起來書寫,用逗號將選擇符分開,這樣可以減少樣式重複定義:
h1, h2, h3, h4, h5, h6 { color: green } (這個組裡包括所有的標題元素,每個標題元素的文字都為綠色)
p, table{ font-size: 9pt } (段落和表格裡的文字尺寸為9號字)
效果完全等效於:
p { font-size: 9pt }
table { font-size: 9pt }
3. 類選擇符
用類選擇符你能夠把相同的元素分類定義不同的樣式,定義類選擇符時,在自定類的名稱前面加一個點號。假如你想要兩個不同的段落,一個段落向靠右對齊,一個段落置中,你可以先定義兩個類:
p.right {text-align: right}
p.center {text-align: center}
然後用不在不同的段落裡,只要在HTML標記裡加入你定義的class參數:
這個段落向靠右對齊的
這個段落是置中排列的
類選擇符還有一種用法,在選擇符中省略HTML標記名,這樣可以把幾個不同的元素定義成相同的樣式:
.center {text-align: center} (定義.center的類選擇符為文字置中排列)
這樣的類可以被應用到任何元素上。下面我們使h1元素(標題1)和p元素(段落)都歸為“center”類,這使兩個元素的樣式都跟隨“.center”這個類選擇符:
<h1 class="center">這個標題是置中排列的</h1>
這個段落也是置中排列的
注意:這種省略HTML標記的類選擇符是我們經後最常用的CSS方法,使用這種方法,我們可以很方便的在任意元素上套用預先定義好的類樣式。
4. ID選擇符
在HTML頁面中ID參數指定了某個單一元素,ID選擇符是用來對這個單一元素定義單獨的樣式。
ID選擇符的應用和類選擇符類似,只要把CLASS換成ID即可。將上例中類用ID替代:
這個段落向靠右對齊
定義ID選擇符要在ID名稱前加上一個“#”號。和類選擇符相同,定義ID選擇符的屬性也有兩種方法。下面這個例子,ID屬性將匹配所有id="intro"的元素:
#intro
{
font-size:110%;
font-weight:bold;
color:#0000ff;
background-color:transparent
} (字型尺寸為預設尺寸的110%;粗體;藍色;背景顏色透明)
下面這個例子,ID屬性只匹配id="intro"的段落元素:
p#intro
{
font-size:110%;
font-weight:bold;
color:#0000ff;
background-color:transparent
}
注意:ID選擇符局限性很大,只能單獨定義某個元素的樣式,一般只在特殊情況下使用。
5. 包含選擇符
可以單獨對某種元素內含項目關聯性定義的樣式表,元素1裡包含元素2,這種方式只對在元素1裡的元素2定義,對單獨的元素1或元素2無定義,例如:
table a
{
font-size: 12px
}
在表格內的連結改變了樣式,文字大小為12像素,而表格外的連結的文字仍為預設大小。
6. 樣式表的層疊性
層疊性就是繼承性,樣式表的繼承規則是外部的元素樣式會保留下來繼承給這個元素所包含的其他元素。事實上,所有在元素中嵌套的元素都會繼承外層元素指定的屬性值,有時會把很多層嵌套的樣式疊加在一起,除非另外更改。例如在DIV標記中嵌套P標記:
div { color: red; font-size:9pt}
……
這個段落的文字為紅色9號字
(P元素裡的內容會繼承DIV定義的屬性)
注意:有些情況下內部選擇符不繼承周圍選擇符的值,但理論上這些都是特殊的。例如,上邊界屬性值是不會繼承的,直覺上,一個段落不會同文檔BODY一樣的上邊界值。
另外,當樣式表繼承遇到衝突時,總是以最後定義的樣式為準。如果上例中定義了P的顏色:
div { color: red; font-size:9pt}
p {color: blue}
……
這個段落的文字為藍色9號字
我們可以看到段落裡的文字大小為9號字是繼承div屬性的,而color屬性則依照最後定義的。
不同的選擇符定義相同的元素時,要考慮到不同的選擇符之間的優先順序。ID選擇符,類選擇符和HTML標記選擇符,因為ID選擇符是最後加上元素上的,所以優先順序最高,其次是類選擇符。如果想超越這三者之間的關係,可以用!important提升樣式表的優先權,例如:
p { color: #FF0000!important }
.blue { color: #0000FF}
#id1 { color: #FFFF00}
我們同時對頁面中的一個段落加上這三種樣式,它最後會依照被!important申明的HTML標記選擇符樣式為紅色文字。如果去掉!important,則依照優先權最高的ID選擇符為黃色文字。
7. 注釋:/* ... */
你可以在CSS中插入注釋來說明你代碼的意思,注釋有利於你或別人以後編輯和更改代碼時理解代碼的含義。在瀏覽器中,注釋是不顯示的。CSS注釋以"/*" 開頭,以"*/" 結尾,如下:
/* 定義段落樣式表 */
p
{
text-align: center; /* 文本置中排列 */
color: black; /* 文字為黑色 */
font-family: arial /* 字型為arial */
}
css可以用任何寫文本的工具進行開發,如文本工具,dreamweaver開發
css也是一種語言,這種語言要和html或者xhtml語言相結合才起作用,
css簡單來說就是用來美化網頁用的,用css語言來控制網頁的外觀
舉個例子
xhtml部分:
<ul>
<li>首頁</li>
<li>留言</li>
<li>論壇</li>
</ul>
此時在頁面上的表達形式是一個豎向列表,這樣不夠美觀,
可以css來改善這個列表為一個橫嚮導航條和超連結
css部分:
ul{list-style:none;margin:0px;padding:0px}
ul li{margin:0px;padding:0px;float:left;}
ul li a{display:block;width:100px;height:30px;background:#efefef;color:#333;text-decoration:none;text-align:center}
ul li a:hover{background:#333;color:#fff;}
添加上css後,這個列表變成橫向的導航條了,超級連結是淡色背景,灰色字型,沒有底線,高度是30像素,寬度是100像素
當我們滑鼠經過這個超級連結時候,變成灰色背景,白色字型
在首頁製作時採用CSS技術,可以有效地對頁面的布局、字型、顏色、背景和其它效果實現更加精確的控制。
只要對相應的代碼做一些簡單的修改,就可以改變同一頁面的不同部分,或者頁數不同的網頁的外觀和格式。
它的作用可以達到:
(1)在幾乎所有的瀏覽器上都可以使用。
(2)以前一些非得通過圖片轉換實現的功能,現在只要用CSS就可以輕鬆實現,從而更快地下載頁面。
(3)使頁面的字型變得更漂亮,更容易編排,使頁面真正賞心悅目。
(4)你可以輕鬆地控制頁面的布局 。
(5)你可以將許多網頁的風格格式同時更新,不用再一頁一頁地更新了。你可以將網站上所有的網頁風格都使用一個CSS檔案進行控制,只要修改這個CSS檔案中相應的行,那麼整個網站的所有頁面都會隨之發生變動。
想一想,沒有使用CSS前我們是如何控制字型的顏色和大小以及所使用的字型的?我們一般使用HTML標籤來實現,代碼非常煩瑣。
很難想象,如果在一個頁面裡需要頻繁地更替字型的顏色大小,最終產生的HTML代碼的長度一定臃腫不堪。
說實話,CSS就是為了簡化這樣的工作誕生的,當然其功能決非這麼簡單。
CSS是通過對頁面結構的風格控制的思想,控制整個頁面的風格的。
式樣單放在頁面中,通過瀏覽器的解釋執行,是完全的文本,任何懂得HTML的人都可以掌握,非常的容易。甚至對一些非常老的瀏覽器,也不會產生頁面混亂的現象。
CSS的一大優點是它的圖片傳輸速度比較完全的HTML網頁要快一點。
關於CSS的參考資料,網上有很多討論CSS的社區,但是要系統學習CSS,選擇一本好書還是非常有必要的,推薦閱讀CSS三劍客之一《CSS實戰手冊》
CSS:
Chinese,Surface-to-Surface
中國面對面飛彈 簡稱CSS-N
CSS具有兩面性。就像它在格式化文本、導覽列、圖片以及其他小小的網頁方面很棒一樣,當你準備好布局完整的網頁時,它真正可怕的一面也展現出來了。
CSS布局有兩種風格——絕對位置和浮動。絕對位置讓你把一個元素以像素級的精確性定位在網頁的任何位置——或者理論上是這樣。這種整體控制令人興奮,就如你將在下一章中所看到的,但是實際上很難實現。這就是大量網頁使用基於浮動的布局的原因,也是本章的主題。
詳細講解CSS正常化命名的三種通用命名規則
駱駝式命名法:
正如它的名稱所表示的那樣,是指混合使用大小寫字母來構成變數和函數的名字。例如,下面是分別用駱駝式命名法和底線法命名的同一個函數:
printEmployeePaychecks();
print_employee_paychecks();
第一個函數名使用了駱駝式命名法,函數名中的每一個邏輯斷點都有一個大寫字母來標記;第二個函數名使用了底線法,函數名中的每一個邏輯斷點都有一個底線來標記。
駱駝式命名法近年來越來越流行了,在許多新的函數庫和Microsoft Windows這樣的環境中,它使用得相當多。另一方面,底線法是c出現後開始流行起來的,在許多舊的程式和UNIX這樣的環境中,它的使用非常普遍。
匈牙利命名法:
廣泛應用於象Microsoft Windows這樣的環境中。Windows 編程中用到的變數(還包括宏)的命名規則匈牙利命名法,這種命名技術是由一位能乾的 Microsoft 程式員查爾斯- 西蒙尼(Charles Simonyi) 提出的。
匈牙利命名法通過在變數名前面加上相應的小寫字母的符號標識作為首碼,標識出變數的範圍,類型等。這些符號可以多個同時使用,順序是先m_(成員變數), 再指標,再單一資料型別,再其它。
例如:m_lpszStr, 表示指向一個以0字元結尾的字串的長指標成員變數。
匈牙利命名法關鍵是:標識符的名字以一個或者多個小寫字母開頭作為首碼;首碼之後的是首字母大寫的一個單詞或多個單片語合,該單詞要指明變數的用途。
帕斯卡(pascal)命名法:
與駱駝命名法類似。只不過駱駝命名法是首字母小寫,而帕斯卡命名法是首字母大寫,如:
DisplayInfo();
string UserName;
二者都是採用了帕斯卡命名法。在C#中,以帕斯卡命名法和駱駝命名法居多。
三種命名規則的小結:
MyData 就是一個帕斯卡命名的樣本
而myData是一個駱駝命名法,它第一個單詞的第一個字母小寫,後面的單字首大寫,看起來像一個駱駝
而iMyData是一個匈牙利命名法,它的小寫i說明了它的型態,後面的和帕斯卡命名相同,指示了該變數的用途.
CSS樣式解決了一個普遍的問題
HTML 標籤原本被設計為用於定義文檔內容。通過使用 <h1>、、 [table]這樣的標籤,HTML 的初衷是表達“這是標題”、“這是段落”、“這是表格”之類的資訊。而文檔布局希望通過瀏覽器來完成,而不使用任何的格式化標籤。
由於兩種主要的瀏覽器(Netscape 和 Internet Explorer)不斷地將新的 HTML 標籤和屬性(比如字型標籤和顏色屬性)添加到 HTML 規範中,建立文檔內容清晰地獨立於文檔表現層的網站變得越來越困難。
為瞭解決這個問題,全球資訊網聯盟(W3C),這個非營利的標準化聯盟,肩負起了 HTML 標準化的使命,並在 HTML 4.0 之外創造出樣式(Style)。
所有的主流瀏覽器均支援層疊樣式表。 [tbody][/tbody][/table]