HTML與CSS學習記錄(3)————CSS樣式基本知識
認識CSS樣式
CSS全稱為“層疊樣式表 (Cascading Style Sheets)”,它主要是用於定義HTML內容在瀏覽器內的顯示樣式,如文字大小、顏色、字型加粗等。如下列程式碼:
p{
font-size:12px;/*設定文字字號*/
color:red;/*設定文字顏色*/
font-weight:bold;/*設定字型加粗*/
使用CSS樣式的一個好處是通過定義某個樣式,可以讓不同網頁位置的文字有著統一的字型、字號或者顏色等。
CSS樣式的優勢
為什麼使用css樣式來設定網頁的外觀樣式呢?我們想把“超酷的網際網路
”、“服務及時貼心
”、“有趣易學
”這三個短語的文字顏色設定為紅色,這時就 可以通過設定樣式來設定,而且只需要編寫一條css樣式語句。
第一步:把這三個短語用<span></span>括起來。
第二步:寫入下列程式碼:
<head> <style type="txxt/css"> span{ color:red; } </style> </head> <body> <p> 慕課網,<span>超酷的網際網路</span>、 IT技術免費學習平臺,創新的網路一站式學習、實踐體驗; <span>服務及時貼心</span> ,內容專業、 <span>有趣易學</span>。 專注服務網際網路工程師快速成為技術高手! </p> </body>
CSS程式碼語法
css 樣式由選擇符和宣告組成,而宣告又由屬性和值組成,如下圖所示:
選擇符:又稱選擇器,指明網頁中要應用樣式規則的元素,如本例中是網頁中所有的段(p)的文字將變成藍色,而其他的元素(如ol)不會受到影響。
宣告:在英文大括號“{}”中的的就是宣告,屬性和值之間用英文冒號“:”分隔。當有多條宣告時,中間可以英文分號“;”分隔,如下所示:
p(選擇符){font-size(屬性):(宣告)12px(值);
color(屬性):(宣告)red(值);}
注意:
1、最後一條宣告可以沒有分號,但是為了以後修改方便,一般也加上分號。
2、為了使用樣式更加容易閱讀,可以將每條程式碼寫在一個新行內,如下所示:
p{
font-size:12px;
color:red;
}
CSS註釋程式碼
就像在Html的註釋一樣,在CSS中也有註釋語句:用/*註釋語句*/
來標明(Html中使用<!--註釋語句-->
)。就像下面程式碼:
/*設定註釋*/
<!--p{
font-size:12px;
color:red;
}-->
內聯式css樣式,直接寫在現有的HTML標籤中
CSS樣式可以寫在哪些地方呢?從CSS 樣式程式碼插入的形式來看基本可以分為以下3種:內聯式、嵌入式和外部式三種。。
內聯式
css樣式表就是把css程式碼直接寫在現有的HTML標籤中,如下面程式碼:
<p style="color:red">這裡文字是紅色。</p>
注意要寫在元素的開始標籤裡,下面這種寫法是錯誤的:
<p>這裡文字是紅色。</p style="color:red">
並且css樣式程式碼要寫在style=""雙引號中,如果有多條css樣式程式碼設定可以寫在一起,中間用分號隔開。如下程式碼:
<p style="color:red;font-size:12px">這裡文字是紅色。</p>
如下所示:
<style type="text/css">
span{
color:red;
}
</style>
</head>
<body>
<p>中國農業銀行<span style="color:blue">超酷的網際網路</span>、前額,創新的網路一站式學習、實踐體驗;<span>服務及時貼心</span>,內容專業、<span>有趣易學</span>。專斯蒂芬</p>
嵌入式css樣式,寫在當前的檔案中
現在有一任務,把“超酷的網際網路”、“服務及時貼心”、“有趣易學”這三個短詞文字字號修改為18px。如果用內聯式css樣式的方法進行設定將是一件很頭疼的事情(為每一個<span>標籤加入sytle="font-size:18px"語句),現在使用一種新的方法嵌入式css樣式來實現這個任務
嵌入式css樣式,就是可以把css樣式程式碼寫在<style type="text/css"></style>標籤之間。如下面程式碼實現把三個<span>標籤中的文字設定為紅色字號修改為18px:
<style type="text/css">
span{
color:red;
font-size:18px;
}
</style>
</head>
<body>
p>慕課網,<span>超酷的網際網路</span>、IT技術免費學習平臺,創新的網路一站式學習、實踐體驗;
<span>服務及時貼心</span>,
內容專業、
<span>有趣易學</span>。
專注服務網際網路工程師快速成為技術高手!</p>
</body>
嵌入式css樣式必須寫在<style></style>之間,並且一般情況下嵌入式css樣式寫在<head></head>之間。
外部式css樣式,寫在單獨的一個檔案中
外部式css樣式(也可稱為外聯式)就是把css程式碼寫一個單獨的外部檔案中,這個css樣式檔案以“.css
”為副檔名,在<head>內(不是在<style>標籤內)使用<link>標籤將css樣式檔案連結到HTML檔案內,如下面程式碼:
<link href="base.css" rel="stylesheet" type="text/css" />
注意:
1、css樣式檔名稱以有意義的英文字母命名,如 main.css。
2、rel="stylesheet" type="text/css" 是固定寫法不可修改。
3、<link>標籤位置一般寫在<head>標籤之內。
<head>
<link href="style.css" rel="stylesheet" type="text/css" />
</head>
<body>
<p>慕課網,<span>超酷的網際網路</span>、IT技術免費學習平臺,創新的網路一站式學習、實踐體驗;
<span>服務及時貼心</span>,內容專業、<span>有趣易學</span>。
專注服務網際網路工程師快速成為技術高手!</p>
</body>
三種方法的優先順序
如果有一種情況:對於同一個元素我們同時用了三種方法設定css樣式,那麼哪種方法真正有效呢?
1、使用內聯式
CSS設定“超酷的網際網路”文字為粉色
。
<span style="color:pink">
2、然後使用嵌入式
CSS來設定文字為紅色
。
span{
color:red;
}
3、最後又使用外部式
設定文字為藍色
(style.css檔案中設定)。
span{
color:blue;
}
但最終你可以觀察到“超酷的網際網路”這個短詞的文字被設定為了粉色
。因為這三種樣式是有優先順序的,記住他們的優先順序:內聯式 > 嵌入式 > 外部式
但是嵌入式>外部式有一個前提:嵌入式css樣式的位置一定在外部式的後面。如右程式碼編輯器就是這樣,<link href="style.css" ...>程式碼在<style type="text/css">...</style>程式碼的前面(實際開發中也是這麼寫的)。感興趣的小夥伴可以試一下,把它們調換順序,再看他們的優先順序是否變化。
其實總結來說,就是--就近原則(離被設定元素越近優先級別越高)
。
但注意上面所總結的優先順序是有一個前提:內聯式、嵌入式、外部式樣式表中css樣式是在的相同權值的情況下,什麼是權值呢?
1、標籤的權值為1,類選擇符的權值為10,ID選擇符的權值最高為100。
p{color:red;} /*權值為1*/
p span{color:green;} /*權值為1+1=2*/
p span.warning{color:purple;} /*權值為1+1+10=12*/
#footer .note p{color:yellow;} /*權值為100+10+1=111*/</span>
注意:還有一個權值比較特殊--繼承也有權值但很低,有的文獻提出它只有0.1,所以可以理解為繼承的權值最低。
2、層疊就是在html檔案中對於同一個元素可以有多個css樣式存在,當有相同權重的樣式存在時,會根據這些css樣式的前後順序來決定,處於最後面的css樣式會被應用。
3、使用!important為某些樣式設定最高權值
p{color:red!important;}
注意:當網頁製作者不設定css樣式時,瀏覽器會按照自己的一套樣式來顯示網頁。並且使用者也可以在瀏覽器中設定自己習慣的樣式,比如有的使用者習慣把字號設定為大一些,使其檢視網頁的文字更加清楚。這時注意樣式優先順序為:瀏覽器預設的樣式 < 網頁製作者樣式 < 使用者自己設定的樣式,但記住!important優先順序樣式是個例外,權值高於使用者自己設定的樣式