CSS總結筆記(一)

總結現在的互聯網前端三層:

HTML???? 超文本標記語言??? 從語義的角度描述頁面結構

CSS??????? 層疊式樣式表?????? 從審美的角度負責頁面樣式

JS?????????? JavaScript???????????? 從交互的角度描述頁面行為

一、CSS基本語法

CSS: cascading style sheet:層疊式樣式表

css可以寫在單獨的文件里,也可以寫在style標簽里(head中)。

<style type=”text/css”>

? ? ? xx{

? ? ? ? ? color:red;

? ? ? ? ? font-size:14px;

? ? ? }

</style>

二、CSS常見屬性

字符顏色:color? 可以是red\blue等自帶屬性,也可以是rgb,16進制等。? sublime快捷生成:c

字號大小:font-size 單位:像素? ?sublime快捷生成:fos

背景顏色:background-color? sublime快捷生成:bgc

加粗/不加粗: font-weight:bold/normal? ?sublime快捷生成:fwb/fwn

斜體/不斜體;font-style:italic/normla??sublime快捷生成:fsi/fsn

下劃線/無下劃線:text-decoration:underline/none? sublime快捷生成:tdu/tdn

三、基礎選擇器

3.1 標簽選擇器

所有的標簽都可以是選擇器,例如ul\li\label\dt\dl\input,并且全局通用,即選擇的是頁面上所有這種類型的標簽,用于描述該類標簽的共性。

3.2 id選擇器

任何的html標簽都可以有id屬性,表示這個標簽的唯一標識。命名遵循命名法,一個html頁面不能出現相同的id

一個標簽可以被多個css選擇器選擇,這就是“層疊式“的第一層含義

3.3 類名選擇器

class 屬性與id屬性非常相似,區別就是class屬性可以重復,即多個標簽可以屬于一個類。代表對一整類的標簽進行統一修改,css中用 “.”來表示類

一個標簽 可能同時屬于多個類,用空格隔開。

要用公共類的思想設計類。盡可能的用class極特殊情況用id(id會與后臺交互時產生溝通成本,因為類關聯樣式,id關聯行為)

四、高級選擇器

4.1 后代選擇器

表示一個父標簽內 所有子標簽的共性。

? <styletype="text/css">

? ? ? ? ?.div1 p{? ? ? ? ? ? ? ? ? ? ? ? ??

? ? ? ? ? ? ? ? ? color:red;

? ? ? ? ? }??????

</style>

<divclass="div1">

<ul>

? ? ?<li>

? ? ? ? ?<p>段落</p>

? ? ? ? <p>段落</p>

? ? ? ? <p>段落</p>

? ? ?</li>

</ul>??????

</div>

其中 空格可以多次出現。例如:

.div1 .li2 p{

? ? ? ? color:red;?????? ?????

}

后代選擇器,描述的是一種祖先結構。就是一種平衡:共性、特性的平衡。當要把某一個部分的所有的什么,進行樣式改變,就要想到后代選擇器。

4.2 交集選擇器

交集選擇器,意思就是一個選擇器可以設置在兩個標簽的交集標簽中。這個寫法是IE7開始兼容的

?h3.special{

? ? ? ? ? ?color:red;

}

交集選擇器可以取連續交集(一般不要這么寫)

h3.special.zhongyao{

? ? ? ? color:red;

}

交集選擇器,我們一般都是以標簽名開頭,比如div.haha? 比如p.special。

4.3 并集選擇器?

用逗號表示

h3,li{

? ? ? ? color:red;

}

4.4 通配符

* 表示所有元素,效率不高,標簽多的情況下基本上沒什么效率了,所以基本不可能這么用

*{

? ? ?color:red;

}

五、其他選擇器(CSS3選擇器)

5.1 兒子選擇器

父標簽的直屬標簽可用。IE7開始兼容,IE6不兼容。

div>p{

? ? ? ? ?color:red;

}

5.2 序選擇器

選擇某一組標簽中的某個標簽。IE8開始兼容

例子:選擇ul下的li中第一個

?<styletype="text/css">

? ? ? ? ?ul li:first-child{

? ? ? ? ? ? ? ? ? color:red;

? ? ? ? ?}??????

</style>

5.3 下一個兄弟選擇器

+,表示下一個兄弟。IE7開始兼容

<styletype="text/css">??

? ? ? ? ?h3+p{

? ? ? ? ? ? ? ? ?color:red;

? ? ? ? ? ? ? ? }??????

</style>

六、CSS的繼承性和層疊性

6.1 繼承性

當給父標簽設置某些屬性后,后代所有標簽都繼承了這些屬性,這就是繼承性。

可繼承屬性:

color、text開頭、line開頭的、font開頭 等關于文字樣式的

6.2 層疊性

層疊性:CSS處理沖突的一種能力。

CSS中是有先后順序的,先表明的屬性值會被后表明的屬性層疊掉,也就是說被覆蓋了。

當不同選擇器作用在同一個標簽上時(選中到標簽時),優先權重為:id選擇器數量 > 類選擇器數量 > 標簽選擇器數量,若權重相同,則按先后順序表明,當使用并集選擇器時需要拆開計算 不能合起來計算權重。

通過繼承來的時候(不直接選中某個元素),權重是0,當大家都是0時 遵循就近原則:誰描述的近聽誰的、

特例:當兩個權重都是0,且根據就近原則一樣近時,則繼續比較權重,若權重一樣則繼續按先后順序。

當使用!important標記時,來給一個屬性提高權重:k:v !important

一般來說不允許使用,因為會讓CSS寫的很亂。

注意:

1.!important提升的是一個屬性 而不是一個選擇器。

2.!important無法提升繼承的權重,原本是0則還是0

3.!important當權重都是0時,無法影響就近原則。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • 問答題47 /72 常見瀏覽器兼容性問題與解決方案? 參考答案 (1)瀏覽器兼容問題一:不同瀏覽器的標簽默認的外補...
    _Yfling閱讀 13,815評論 1 92
  • 第一部分 HTML&CSS整理答案 1. 什么是HTML5? 答:HTML5是最新的HTML標準。 注意:講述HT...
    kismetajun閱讀 27,758評論 1 45
  • CSS基礎 本文包括CSS基礎知識選擇器(重要!!!)繼承、特殊性、層疊、重要性CSS格式化排版單位和值盒模型浮動...
    廖少少閱讀 3,209評論 0 40
  • 概述 在網易云課堂學習李南江老師的《從零玩轉HTML5前端+跨平臺開發》時,所整理的筆記。筆記內容為根據個人需求所...
    墨荀閱讀 2,377評論 0 7
  • 2018-05-10 周四 晴 仍然堅持早起,堅持跑步,堅持為家人做了一頓早餐。早餐還是比較豐富,打了營養豆漿,...
    周舟閱讀與寫作閱讀 311評論 0 0