1、CSS厲害之處是層疊樣式表,層疊指樣式層疊,選擇器層疊,檔案層疊,這些特性使CSS極度靈活。
2、border調試法,懷疑某個元素有問題,就給這個元素加上border。
3、資料網站推薦:Google搜尋關鍵詞加mdn, CSS tricks , 張鑫旭部落格。
4、文檔流:流動方向,inline元素從左到右,到達最右邊才會換行,block元素從上到下,每一個都另起一行,inline-block元素也是從左到右。
寬度,inline寬度為内部inline元素的和,不能用width指定,block自動計算寬度,可用width指定,inline-block結合兩者特點可用width指定。
高度,inline高度由line-height間接決定,和height無關,block高度由内部文檔流元素決定的,可以設定height,inline-block和block類似,可以設定height。
5、overflow:當内容的寬度或高度大于容器時會溢出,可用他來設定是否顯示滾動條,有auto,scroll,hidden,visible屬性。
6、布局分為float,grid,flex三種布局,當需要相容IE9時,用float布局,父元素添加clearfix屬性,隻需要相容最新浏覽器時用grid布局,其他的用flex布局。在寫布局時,永遠不要把width和height寫死,除非特殊說明,用min-width/max-width/min-height/max-height.
7、CSS定位:背景的範圍是border外邊沿圍成的區域,一個div的分層,從上到下分别為内聯子元素(相當于文字),浮動元素,塊級子元素,border,background。
8、浮動元素脫離文檔流,position屬性,static(預設值,呆在文檔流中),relative(相對定位,升起來但不脫離文檔流),absolute(絕對定位),fixed(固定定位),sticky(粘滞定位),如果寫了一個absolute,一般都得補一個relative,如果寫了absolute或fixed,一般都得補top和left.
9、浏覽器渲染原理:下面簡要概述了浏覽器完成的步驟:
- 處理 HTML 标記并建構 DOM 樹。
- 處理 CSS 标記并建構 CSSOM 樹。
- 将 DOM 與 CSSOM 合并成一個渲染樹。
- 根據渲染樹來布局,以計算每個節點的幾何資訊。
- 将各個節點繪制到螢幕上。
三種樣式更新方式:
10、transform:四個常用功能translate(位移),scale(縮放),rotate(旋轉),skew(傾斜),這四個功能一般都需要配合transition過渡,inline元素不支援transform,需要先變成block元素。
11、transition:作用,補充中間幀,文法,transition:屬性名 時長 過渡方式 延遲,可以用all代表所有屬性,過渡除了起始還有中間點,有兩種辦法代替中間點,使用兩次transform或者使用animation(聲明關鍵幀,添加動畫)。
12、animation:時長/過渡方式/延遲/次數/方向/填充模式/是否暫停/動畫名。
13、如何讓動畫停止在最後一幀,在屬性中加forwards。
14、@keyframes文法: