層疊樣式表,主要由屬性和屬性值(value)組成。(雖然HTML、CSS對代碼大小寫不敏感,可是屬性和屬性值對代碼大小寫是敏感的)css
由瀏覽器將CSS和html分別轉化爲文檔對象,組合爲DOM文檔對象模型,標記語言中的每一個元素、屬性、文字片斷都是DOM樹中的一個節點,再由瀏覽器轉換顯示。html
優先級最高,但因爲會形成代碼冗餘及代碼更新任務龐大,通常不採用。瀏覽器
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>My CSS experiment</title> </head> <body> <h1 style="color: blue;background-color: yellow;border: 1px solid black;">Hello World!</h1> <p style="color:red;">This is my first CSS example</p> </body> </html>
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>My CSS experiment</title> <style> h1 { color: blue; background-color: yellow; border: 1px solid black; } p { color: red; } </style> </head> <body> <h1>Hello World!</h1> <p>This is my first CSS example</p> </body> </html>
單獨創建一個.css文檔
易於代碼更新,減小代碼冗餘。做爲新手,這一點也是必需要作到的。佈局
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>My CSS experiment</title> <link rel="stylesheet" href="style.css"> </head> <body> <h1>Hello World!</h1> <p>This is my first CSS example</p> </body> </html>
格式:「property : value」
屬性(property)與屬性值(value)單詞拼寫採用美式標準。flex
格式:「{property : value; property : value;}」
「;」的丟失最易致使錯誤。spa
格式:「selector {property : value; property : value;}」code
元素選擇器 p
類選擇器 .class
ID選擇器 #id
通用選擇器 *
而且選擇器 p.class#id
並列選擇器 p,.class,#idorm
後代選擇器 parent son,使用空格分割兩個選擇器
子代選擇器 parent>son,使用>分割兩個選擇器
下一個兄弟選擇器 selector+selector,使用+分割兩個選擇器
以後全部兄弟選擇器 selector~selector,使用~分割兩個選擇器htm
selector[property]
selector[property=value]
selector[property*=value]
selector[property^=value]
selector[property$=value]
selector[property~=value]對象
子元素
:first-child
:nth-child()
:first-of-type
狀態
:hover
:active
(順序LVHA:link visited hover active)
:focus
::after 經常使用於清除浮動
::before
::first-letter
::first-line
!important(改變了CSS方式,儘可能繞開!)
放在一段style中(1000)
id(100)
.class或僞類或屬性選擇器(10)
元素選擇器或僞元素選擇器(1)
後者覆蓋前者(按照順序)
這裏很少敘述…………
1)div行及元素
2)span塊級元素
float:left;
float:right;
clear:both;(清除左右浮動,該元素會換行)
*塊級元素一旦浮動以後:
1)脫離了當前文檔流,對父級元素失去了支撐的做用,後面的非浮動元素會插入到浮動元素的下面。
2)浮動元素的寬高默認由其內容所決定,可是咱們能夠爲其指定寬高。
3)當浮動元素沒法承載子元素的時候,子元素會在下一行顯示。
4)浮動元素的margin沒法合併。
*浮動引起的問題:
1)子元素浮動會失去對父元素的支撐
解決方案:在全部子元素的末尾添加一個空元素,該空元素須clear:both;
2)若是爲子元素的寬度指定絕對值,而且子元素具備邊框,在縮放瀏覽器的時候會錯位
解決方案:
1.box-sizing:border-box; 2..right {margin-left:100px;}
1)靜態定位
2)相對定位
相對於該元素原先位置進行移動
relative: top right bottom left
3)絕對定位
相對於該元素最近的定位父元素位置進行移動
absolute: top right bottom left
4)固定定位
fixed
display:flex;