前端指南-CSS

引言

當下,正面臨著近幾年來的最嚴重的互聯(lián)網(wǎng)寒冬,聽得最多的一句話便是:相見于江湖~??。縮減 HC、裁員不絕于耳,大家都是人心惶惶,年前如此,年后想必肯定又是一場更為慘烈的江湖廝殺。但博主始終相信,寒冬之中,人才更是尤為珍貴。只要有過硬的操作和裝備,在逆風(fēng)局下,同樣也能來一波收割翻盤。

博主也是年前經(jīng)歷了一番廝殺,最終拿到多家大廠的 offer。在閉關(guān)修煉的過程中,自己整理出了一套面試秘籍供自己反復(fù)研究,后來給了多位有需要的兄臺,均表示相當靠譜,理應(yīng)在這寒冬之中回報于社會。于是決定花點精力整理成文,讓大家能比較系統(tǒng)的反復(fù)學(xué)習(xí),快速提升自己。

面試固然有技巧,但絕不是偽造與吹流弊,通過一段短時間沉下心來閉關(guān)修煉,出山收割,步入大廠,薪資翻番,豈不爽哉???

修煉原則

想必大家很厭煩筆試和考察知識點。因為其實在平時實戰(zhàn)中,講究的是開發(fā)效率,很少會去刻意記下一些細節(jié)和深挖知識點,腦海中都是一些分散的知識點,無法系統(tǒng)性地關(guān)聯(lián)成網(wǎng),一直處于時曾相識的狀態(tài)。不知道多少人和博主一樣,至今每次寫阻止冒泡都需要谷歌一番如何拼寫。??。

以如此的狀態(tài),定然是無法在面試的戰(zhàn)場上縱橫的。其實面試就猶如考試,大家回想下高考之前所做的事,無非就是?理解?和?系統(tǒng)性關(guān)聯(lián)記憶。本秘籍的知識點較多,花點時間一個個理解并記憶后,自然也就融會貫通,無所畏懼。

由于本秘籍為了便于記憶,快速達到應(yīng)試狀態(tài),類似于復(fù)習(xí)知識大綱。知識點會盡量的精簡與提煉知識脈絡(luò),并不去展開深入細節(jié),面面俱到。有興趣或者有疑問的童鞋可以自行谷歌下對應(yīng)知識點的詳細內(nèi)容。??

CSS

1. 盒模型

頁面渲染時,dom 元素所采用的?布局模型??赏ㄟ^box-sizing進行設(shè)置。根據(jù)計算寬高的區(qū)域可分為:

content-box?(W3C 標準盒模型)

border-box?(IE 盒模型)

padding-box

margin-box

2. BFC

格式化上下文,是一個獨立的渲染區(qū)域,讓處于 BFC 內(nèi)部的元素與外部的元素相互隔離,使內(nèi)外元素的定位不會相互影響。

IE 下為 Layout,可通過 zoom:1 觸發(fā)

觸發(fā)條件: - 根元素 -?positon: absolute/fixed?-?display: inline-block / table?-?float?元素 -?ovevflow?!==?visible

規(guī)則: - 屬于同一個 BFC 的兩個相鄰 Box 垂直排列 - 屬于同一個 BFC 的兩個相鄰 Box 的 margin 會發(fā)生重疊 - BFC 中子元素不會超出他的包含塊 - BFC 的區(qū)域不會與 float 的元素區(qū)域重疊 - 計算 BFC 的高度時,浮動子元素也參與計算 - 文字層不會被浮動層覆蓋,環(huán)繞于周圍

應(yīng)用: - 阻止margin重疊 - 可以包含浮動元素 —— 清除內(nèi)部浮動(清除浮動的原理是兩個div都位于同一個 BFC 區(qū)域之中) - 自適應(yīng)兩欄布局 - 可以阻止元素被浮動元素覆蓋

3.層疊上下文

元素提升為一個比較特殊的圖層,在三維空間中?(z 軸)?高出普通元素一等。

觸發(fā)條件 - 根層疊上下文(html) -?position?- css3 屬性 -?flex?-?transform?-?opacticy?-?filter?-?will-change?-?-webkit-overflow-scrolling

層疊等級:層疊上下文在 z 軸上的排序 - 在同一層疊上下文中,層疊等級才有意義 -?z-index的優(yōu)先級最高




4. 居中布局

水平居中 - 行內(nèi)元素:?text-align: center?- 塊級元素:?margin: 0 auto?-?absolute + transform?-?flex + justify-content: center

垂直居中 -?line-height: height?-?absolute + transform?-?flex + align-items: center?-?table

水平垂直居中 -?absolute + transform?-?flex + justify-content + align-items

5. 選擇器優(yōu)先級

!important?> 行內(nèi)樣式 >?#id?>?.class?>?tag?> * > 繼承 > 默認

選擇器?從右往左?解析

6.去除浮動影響,防止父級高度塌陷

通過增加尾元素清除浮動 -?:after /?

: clear: both

創(chuàng)建父級 BFC

父級設(shè)置高度

7.link 與 @import 的區(qū)別

link功能較多,可以定義 RSS,定義 Rel 等作用,而@import只能用于加載 css

當解析到link時,頁面會同步加載所引的 css,而@import所引用的 css 會等到頁面加載完才被加載

@import需要 IE5 以上才能使用

link可以使用 js 動態(tài)引入,@import不行

8. CSS 預(yù)處理器(Sass/Less/Postcss)

CSS 預(yù)處理器的原理: 是將類 CSS 語言通過?Webpack 編譯?轉(zhuǎn)成瀏覽器可讀的真正 CSS。在這層編譯之上,便可以賦予 CSS 更多更強大的功能,常用功能:

嵌套

變量

循環(huán)語句

條件語句

自動前綴

單位轉(zhuǎn)換

mixin 復(fù)用

面試中一般不會重點考察該點,一般介紹下自己在實戰(zhàn)項目中的經(jīng)驗即可~

9.CSS 動畫

transition: 過渡動畫 -?transition-property: 屬性 -?transition-duration: 間隔 -?transition-timing-function: 曲線 -?transition-delay: 延遲 - 常用鉤子:?transitionend

animation / keyframes?-?animation-name: 動畫名稱,對應(yīng)@keyframes?-?animation-duration: 間隔 -?animation-timing-function: 曲線 -?animation-delay: 延遲 -?animation-iteration-count: 次數(shù) -?infinite: 循環(huán)動畫 -?animation-direction: 方向 -?alternate: 反向播放 -?animation-fill-mode: 靜止模式 -?forwards: 停止時,保留最后一幀 -?backwards: 停止時,回到第一幀 -?both: 同時運用?forwards / backwards?- 常用鉤子:?animationend

動畫屬性: 盡量使用動畫屬性進行動畫,能擁有較好的性能表現(xiàn) -?translate?-?scale?-?rotate?-?skew?-?opacity?-?color

經(jīng)驗

通常,CSS 并不是重點的考察領(lǐng)域,但這其實是由于現(xiàn)在國內(nèi)業(yè)界對 CSS 的專注不夠?qū)е碌?,真正精通并專注?CSS 的團隊和人才并不多。因此如果能在 CSS 領(lǐng)域有自己的見解和經(jīng)驗,反而會為相當?shù)募臃趾兔摲f而出。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 問答題47 /72 常見瀏覽器兼容性問題與解決方案? 參考答案 (1)瀏覽器兼容問題一:不同瀏覽器的標簽?zāi)J的外補...
    _Yfling閱讀 14,189評論 1 92
  • 選擇qi:是表達式 標簽選擇器 類選擇器 屬性選擇器 繼承屬性: color,font,text-align,li...
    love2013閱讀 2,458評論 0 11
  • 選擇qi:是表達式 標簽選擇器 類選擇器 屬性選擇器 繼承屬性: color,font,text-align,li...
    wzhiq896閱讀 2,134評論 0 2
  • 一、CSS入門 1、css選擇器 選擇器的作用是“用于確定(選定)要進行樣式設(shè)定的標簽(元素)”。 有若干種形式的...
    寵辱不驚丶歲月靜好閱讀 1,739評論 0 6
  • 想哭,就痛快地哭 淚水止不住,就讓它盡情地流 別再傻傻...
    云栗閱讀 408評論 0 1

友情鏈接更多精彩內(nèi)容