1. 程式人生 > 其它 >CSS教程 01 基礎部分

CSS教程 01 基礎部分

根據W3school CSS教程的部分總結

根據W3school CSS教程的部分總結

優先順序

  1. 行內樣式(在 HTML 元素中<h1 style="color:red;">CSS</h1>
  2. 外部和內部樣式表(在 head 部分)
  3. 瀏覽器預設樣式

如果在不同樣式表中為同一選擇器(元素)定義了一些屬性,則將使用最後讀取的樣式表中的值。

註釋

位於style元素內的 CSS 註釋,以 /* 開始,以 */ 結束

<!--...--> 語法在 HTML 原始碼中添加註釋

CSS背景

background屬性簡寫:

background: #ffffff url("tree.png") no-repeat right top;
}
屬性 作用
background-color 指定顏色、透明度
background-image 指定背景影象
background-repeat 背景影象重複方式:水平、垂直、不重複(repeat-x, repeat-y, no-repeat)
background-attachment 指定背景影象是應該滾動(scroll)還是固定的(fixed)
background-position 指定背景影象的位置(如 right top)

CSS邊框

border 屬性指定元素邊框的樣式、寬度和顏色。

border-radius 屬性設定圓角邊框。

border屬性簡寫:

border: 5px solid red;

/*可以指定上下左右*/
border-left: 6px solid red;

border-top-style: dotted;
屬性 作用
border-width 指定四個邊框的寬度
border-style(必需) 指定要顯示的邊框型別
border-color 設定四個邊框的顏色

border-style 屬性允許以下值:

屬性值 樣式
dotted 定義點線邊框
dashed 定義虛線邊框
solid 定義實線邊框
double 定義雙邊框
groove 定義 3D 坡口邊框。效果取決於 border color 值
ridge 定義 3D 脊線邊框。效果取決於 border color 值
inset 定義 3D inset 邊框。效果取決於 border color 值
outset 定義 3D outset 邊框。效果取決於 border color 值
none 定義無邊框
hidden 定義隱藏邊框

border-radius 屬性用於向元素新增圓角邊框:

border-radius: 5px;

CSS框模型

元素總寬度 = 寬度 + 左內邊距 + 右內邊距 + 左邊框 + 右邊框 + 左外邊距 + 右外邊距

元素總高度 = 高度 + 上內邊距 + 下內邊距 + 上邊框 + 下邊框 + 上外邊距 + 下外邊距

css外邊距

CSS margin 屬性用於在任何定義的邊框之外,為元素周圍建立空間。

margin可指定上右下左(順時針)外邊距。

margin-top / margin-right / margin-bottom / margin-left

屬性值 說明(允許負值)
auto 瀏覽器來計算外邊距,使元素在其容器中水平居中
length 以 px、pt、cm 等單位指定外邊距
% 指定以包含元素寬度的百分比計的外邊距
inherit 指定應從父元素繼承外邊距
外邊距合併

外邊距合併指的是,當兩個垂直外邊距相遇時,它們將形成一個外邊距。

合併後的外邊距的高度等於兩個發生合併的外邊距的高度中的較大者。

CSS內邊距

CSS padding 屬性用於在任何定義的邊界內的元素內容周圍生成空間。

屬性值 說明(不允許負值)
length 以 px、pt、cm 等單位指定外邊距
% 指定以包含元素寬度的百分比計的外邊距
inherit 指定應從父元素繼承外邊距
內邊距和元素寬度

CSS width 屬性指定元素內容區域的寬度。內容區域是元素(盒模型)的內邊距、邊框和外邊距內的部分。

在指定元素寬度的情況下,設定內邊距會使元素實際寬度增加。

要保持元素寬度,可設定box-sizing屬性border-box,但元素的可用內容空間會減少。

Box Sizing屬性

定義元素寬度和高度的計算方式:它們是否應包含內邊距(padding)和邊框。

* {
  box-sizing: border-box;
}
CSS設定高度和寬度

height 和 width 屬性用於設定元素的高度和寬度,不包括內邊距、邊框或外邊距。它設定的是元素內邊距、邊框以及外邊距內的區域的高度或寬度。

屬性值 說明
auto 預設。瀏覽器計算高度和寬度。
length 以 px、cm 等定義高度/寬度。
% 以包含塊的百分比定義高度/寬度。
initial 將高度/寬度設定為預設值。
inherit 從其父值繼承高度/寬度。

max-width可設定元素的最大寬度。

CSS輪廓

輪廓是在元素周圍繪製的一條線,在邊框之外,以凸顯元素。

簡寫outline屬性:

outline: 5px solid yellow;

注意:輪廓與邊框不同!不同之處在於:輪廓是在元素邊框之外繪製的,並且可能與其他內容重疊。同樣,輪廓也不是元素尺寸的一部分;元素的總寬度和高度不受輪廓線寬度的影響。

屬性 作用
outline-style(必需) 指定輪廓的樣式,可設定的值同border-style
outline-color 設定輪廓的顏色,可設定name、HEX、RGB、HSL、invert(反轉顏色,確保輪廓可見)
outline-width 指定輪廓的寬度,可設定為thin、medium、thick或特定尺寸
outline-offset 指定輪廓與元素的邊緣或邊框之間的空間
outline 輪廓屬性簡寫

CSS文字

屬性 描述 屬性值
color 設定文字顏色。
direction 指定文字的方向 / 書寫方向。 ltr(預設)從左到右,rtl從右到左,inherit繼承
letter-spacing 設定字元間距。
line-height 設定行高。
text-align 指定文字的水平對齊方式。 justify 會拉伸線條,使每條線都有相等的寬度
text-decoration 指定新增到文字的裝飾效果。 none 通常用於從連結上刪除下劃線
text-indent 指定文字塊中首行的縮排。
text-shadow 指定新增到文字的陰影效果。 text-shadow: 2px 2px 5px red;水平、垂直、模糊、顏色
text-transform 控制文字的大小寫。 uppercase|lowercase|capitalize
text-overflow 指定應如何向用戶示意未顯示的溢位內容。 clip|ellipsis|string 裁剪、省略、替換
unicode-bidi 與 direction 屬性一起使用,設定或返回是否應重寫文字來支援同一文件中的多種語言。 normal|embed|bidi-override|initial|inherit
vertical-align 指定文字的垂直對齊方式。 top|middle|bottom
white-space 指定如何處理元素內的空白。 nowrap 禁用元素內的文字換行
word-spacing 設定單詞間距。

字型

通用字型族
字型族 描述
襯線字型(Serif) 在每個字母的邊緣都有一個小的筆觸。它們營造出一種形式感和優雅感。
無襯線字型(Sans-serif) 字型線條簡潔(沒有小筆畫)。它們營造出現代而簡約的外觀。
等寬字型(Monospace) 這裡所有字母都有相同的固定寬度。它們創造出機械式的外觀。
草書字型(Cursive) 模仿了人類的筆跡。
幻想字型(Fantasy) 是裝飾性/俏皮的字型。
字型屬性

簡寫font屬性:

p.a {
  font: 20px Arial, sans-serif;
}

p.b {
  font: italic small-caps bold 12px/30px Georgia, serif;
}
屬性 描述
font-style 規定文字的字型樣式。(normal italic oblique)
font-variant 規定是否以小型大寫字母的字型顯示文字。
font-weight 規定字型的粗細。
font-size(必需)/line-height 規定文字的字型大小/行高。
font-family(必需) 規定文字的字體系列(字型族)。

圖示

使用圖示庫將指定的圖示類的名稱新增到任何行內 HTML 元素(如 i 或 span),以下為bootstrap圖示和Google圖示

<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">

<i class="glyphicon glyphicon-cloud"></i>


<link rel="stylesheet" href="https://fonts.googleapis.com/icon?family=Material+Icons">

<i class="material-icons">cloud</i>

連結

連結有四種狀態,可根據連結狀態設定不同的連結樣式。

狀態 描述
a:link 正常的,未訪問的連結
a:visited 使用者訪問過的連結
a:hover 使用者將滑鼠懸停在連結上時
a:active 連結被點選時

列表 list-style

簡寫屬性:

ul {
  list-style: square inside url("sqpurple.gif");
}
屬性 說明
list-style-type 規定列表項標記的型別
list-style-position 規定列表項標記(專案符號)的位置
list-style-image 指定影象作為列表項標記

表格

屬性 描述
border 簡寫屬性。在一條宣告中設定所有邊框屬性。
border-collapse 規定是否應摺疊表格邊框。
border-spacing 規定相鄰單元格之間的邊框的距離。
caption-side 規定表格標題的位置。
empty-cells 規定是否在表格中的空白單元格上顯示邊框和背景。
table-layout 設定用於表格的佈局演算法。