[總結] CSS(一)

CSS總結

從High-level看待CSS結構

  • CSS(Cascading Stylesheet)中,樣式從CSS文檔頂部級聯到底部。{}內部屬性(property)也存在級聯特性。
  • 優先級(Specificity)
  • 選擇器(Selectors)
  • 複合選擇器(Combining Selectors)
  • 樣式分層,當兩個元素共有一些屬性的時候,將這些屬性單獨提出來。
  • 常用的屬性值(Color | Length)

圖1 CSS知識架構圖

一、語言

CSS文檔由一系列限定規則構成的,主要有兩種規則。一種爲qualified rule,用於描述應用於元素樣式的CSS屬性;一種爲at-rule,用於CSS文檔的特殊處理。(參考CSS官方文檔

@rule  

圖2 幾種@rule

qualified rule

選擇器 { 屬性:值;}

1)優先級

主要有三類基本的選擇器,每個選擇器都有其優先級權重。

  • 類型選擇器   0-0-1
  • class選擇器  0-1-0
  • id選擇器       1-0-0

權重越大的選擇器具有越高的優先級,而無視級聯特性。複合選擇器的權重即簡單相加。

2)選擇器

僞類選擇器\僞元素選擇器

複合選擇器: prequalifier+key selector(最右)  |   combinator(空格 > + ~ ||)  |   eg: p.mustard

樣式分層:爲了使得選擇器的權重較低,應整合元素中的共有屬性,對選擇器進行分層。常用方法是使用多個class選擇器。

3)常見屬性(property)值

  • Color: keyword | hexadecimal notation | RGB | HSL values
  • Length: 絕對單位(px) | 相對單位(% em rem)

 

二、功能

盒模型 width height padding margin border display

佈局

佈局正常流指的是瀏覽器默認的HTML佈局方式。而是用相關CSS佈局技術,能夠覆蓋默認佈局。

  • position: static(默認)| relative | absolute | fixed
  • float: left | right | none | inherit
  • display: block | inline | inline-block | none
  • CSS表格  (設置display: table | table-row | table-cell | table-caption)
  • 彈性盒子(設置display: flex)
  • 網格(grid)

繪製

1)形狀

  • 基礎圖形:圓、三角形、梯形。基礎圖形指的是調整盒子border就能繪製的圖形。
  • 複雜圖形:將複雜圖形拆分成兩個或三個基礎圖形,通過:after和:before,使用定位(position)和旋轉(transform)等方式進行組合。

2)顏色

  • 顏色模式  rgba(R,G,B,A)  hsla(H,S,L,A)
  • 透明度  opacity: value | inherit
  • 漸變  linear-gradient()  radial-gradient()
  • 陰影  box-shadow

3)文字相關

  • 字體(font)           
  • 文本效果(text)  text-shadow
  • 排版  text-overflow

圖3  Font-based properties

圖4  Text-based properties

交互

1)動畫  animation  @keyframes

2)變換  transition



三、注意

瀏覽器兼容性(CSS層面)  caniuse屬性前綴

跨終端   響應式設計

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章