CSS 基本知識

2021-08-27 22:35:07 字數 3037 閱讀 2588

html示例:

塊級元素:(display:block)

每個塊級元素佔一行,多個塊級元素上下堆疊顯示,它的寬度預設為父元素的寬度,高度由它的內容高度決定(內容撐開)

塊級元素有:

--6級標籤 

:段落:有序列表

:列表項

等等行內元素:(display:inline)

多個行內元素在一行內顯示,當同一行寬度不夠時,才到下一行顯示,它的寬度一般為內容寬度,高度為內容的高度。

行內元素有:

鏈結,:斜體等等

html 中多個連續空格,瀏覽器會解析成為乙個空格,即多餘的不顯示。

1.css引用方式:

頁面引用css的方式: 

1.行內樣式

hello my friends!

2.嵌入樣式

3.鏈結樣式

2.css 寫法

選擇器1[,選擇器2][,選擇器3][.....] 

表示可選項

選擇器:用某種規則來選擇想要應用css的dom元素。 (找到元素)

花括號:對dom元素(找到的)應用於何種css樣式來改變其顯示外觀,因此花括號裡是css宣告。

{}花括號內是用分號分隔的多個css屬性宣告(由屬性名:屬性值組成)

舉例:p /*乙個元素應用css樣式*/

p ,h1 ,h3 /*一組(多個)元素應用css樣式。

3.選擇器分類

基本選擇器:

格式:元素名

如 p    p元素的背景為紅名

格式: .類名  由點+類名表示,需要在dom元素的 class屬性中引用才生效

.red-bg 。

hello my friends!

可以在n個dom元素中引用。

#descid ,由井號+id名稱表示,需要在dom元素的 id屬性中引用才生效。

hello my friends!

只能在乙個dom元素中引用。

格式:元素名[屬性名 [關係符 屬性值]][屬性名 [關係符 屬性值]] ...

關係符可以是:

=等於屬性值,

~= 屬性有多個值,其中乙個值等於屬性值

^= 以屬性值開頭

$=以屬性值結尾

*= 包含屬性值

格式:元素名:偽類名

示例:a:link a:visited a:hover a:active,input:focus,e:first-child,e:last-child,e:nth-child(n|odd|even)  等

格式:元素名::偽元素名

示例:e::first-letter,e::first-line,e::before,e::after,

復合選擇器:

設第乙個基本選擇器選擇的dom元素為 e,第二個基本選擇器選擇的dom元素為 f,

css屬性繼承:

css 層疊規則:

當乙個元素的乙個css屬性,有多個css定義,且定義值都不相同時,哪個css定義生效呢?

1.屬性宣告中有 !important 時,該屬性宣告有效。

如 p

2.其它情況,需根據i-c-e 規則判斷

i:指id選擇器,有乙個id選擇器,則在i上加1

c:指類選擇器,有乙個類選擇器,則在c上加1

e:指元素選擇器,有乙個e選擇器,則在e上加1.

最終生成類似 0-1-3 之類的兩個數值串,相互比校:i值大的生效,相同則對c值,c值相同則對比e值。

如果兩個數值串完全相同,則後宣告生效。

簡單說:選擇器最明確的那個生效。

css盒模型:

左右相鄰元素,相鄰的外邊距距離:第乙個元素的右外邊距+第二個元素的左外邊距

上下相鄰元素,相鄰的外邊距距離:上面元素的下外邊距 和 下面元素的上外邊距,哪個最大取哪個

未指定寬度情況下:總寬度不變==父元素的寬度,增加margin、border、padding寬度時,內容寬度會縮小。

指定寬度的情況下:width == 內容寬度,增加margin、border、padding寬度時,總寬度會增加。

通過 box-size

css浮動:

浮動的框可以向左或向右移動,直到它的外邊緣碰到包含框或另乙個浮動框的邊框為止。

由於浮動框不在文件的普通流中,所以文件的普通流中的塊框表現得就像浮動框不存在一樣。

格式: float:left|right

浮動框旁邊是文字或之後是p元素,則形成環繞效果。

當浮動框的不在文件的普通流中,也就撐不開父元素。 解決辦法是為父元素新增clear屬性的css:

.clearfix:after  

clear 屬性的值可以是 left、right、both 或 none,它表示框的哪些邊不應該挨著浮動框即下一行顯示。

上面的css表示內容為.的塊元素,不緊挨著浮動框,即在浮動框下方,由於該塊元素是正常文件流的一部分,被包含在父元素中,所以它之上的浮動框自然也顯示在父元素中。

css定位:

position 有4個值:static(靜態定位),relative(相對定位),absolute(絕對定位),fixed(固定定位)

static(靜態定位):頁面預設的定位形式,塊級元素從上到下排列,每個塊級元素占用一行,寬度為父元素寬度。

relative(相對定位):塊元素會發生位置偏移,偏移是相對於原來位置,偏移多少由 top left right bottom 決定,元素原位置保留,即其它元素不可占用該位置。

absolute(絕對定位):塊元素會發生位置偏移,偏移是相對postion為(relative,absolute,fixed)的最近的祖先元素(如果沒有,則相對於body),偏移多少由 top left right bottom 決定,元素原位置刪除,其它塊元素會占用該位置。

fixed(固定定位): 類似於將 position 設定為 absolute,但偏移是相對於視窗本身。它不會隨頁面滾動而移動。

CSS基本知識

選擇符表示要定義樣式的物件,可以是元素本身,也可是一類元素或制定名稱的元素 在css選擇符中,大致可有10種 類選擇符 id選擇符 class選擇符 萬用字元 群組選擇符 包含選擇符 偽類選擇符 偽物件選擇符 關於選擇符的權重問題,css中用四位數來表示權重,權重的表示式如0000 在這裡特別要注意...

CSS基本知識

css又名層疊樣式表 英文全稱 cascading style sheets 是一種用來表現html 標準通用標記語言的乙個應用 或xml 標準通用標記語言的乙個子集 等檔案樣式的計算機語言。css不僅可以靜態地修飾網頁,還可以配合各種指令碼語言動態地對網頁各元素進行格式化 css 能夠對網頁中元素...

CSS樣式基本知識

外部式 css樣式表就是把css 直接寫在現有的html標籤中,如下面 style color red 這裡文字是紅色。p 注意要寫在元素的開始標籤裡,下面這種寫法是錯誤的 這裡文字是紅色。p style color red 並且css樣式 要寫在style 雙引號中,如果有多條css樣式 設定可以...