<acronym id="s8ci2"><small id="s8ci2"></small></acronym>
<rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
<acronym id="s8ci2"></acronym>
<acronym id="s8ci2"><center id="s8ci2"></center></acronym>
0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

你們知道前端大神是怎么學CSS的嘛

算法與數據結構 ? 來源:算法與數據結構 ? 2023-05-30 11:26 ? 次閱讀

有人說,要成為前端高手很容易:先學好 HTML/CSS/JavaScript 三劍客,再學會三大前端框架——Vue/React/Angular,快則三個月,慢則半年,前端的工作就沒有搞不定的了。

但實際上,會語言、會用框架就算是一名優秀的前端程序員嗎?

其實這是一個認知誤區,框架的能力不代表前端程序員的能力。遺憾的是,不少前端程序員在工作中遇到瓶頸之后,就將自己的困境歸咎于公司管理或者行業大環境,卻不從自身找問題。

雖然前端技術門檻低,但也極具深度,要成為真正的高手并不容易。要突破只會使用框架的水平,還要深入學習語言。

CSS是 HTML/CSS/JavaScript 三劍客中相對簡單的,但把它用好了能使效率倍增。有一位前端大神對CSS進行深入研究,挖掘出許多有用的特性,刷新了前端程序員的認知:原來CSS也可以這么玩!

現在,我們就跟著大神一起學CSS,走向高手之路吧。

01

大神是怎么學CSS的

張鑫旭,目前在閱文集團用戶體驗設計部(YUX) 擔任前端技術專家 ,他主導開發的LuLu UI是一款面向桌面端和移動端網頁開發的開源組件庫,支持多個千萬級PV的大型項目。他的前端功力甚是了得,是國內公認的大神級程序員。

張鑫旭從 2009 年開始寫原創技術文章,至今已創作了 800 多篇文章,年訪問量接近千萬次。在他的個人博客上,就有對 CSS 技術長達十多年探索的記錄,影響了許多前端程序員的技術發展之路。

提到對CSS的學習,張鑫旭認為首先要理解這門語言的特殊性。CSS是一門建立在規則上的語言,和注重邏輯性的編程語言是不同的。習慣使用C/C++/Java的程序員,在初次接觸CSS時可能會將其看作一張大號的配置表,認為它的作用就是把網頁屬性單獨保存出來而已。

這樣就限制了對CSS的進一步認識,忽視了它在特性間建立聯系的能力。如何體系化地看待CSS語言?張鑫旭將多年的學習心得和工作經驗總結出來,以魔法世界來類比,從宏觀上說明CSS的結構與特征。

在CSS世界中,HTML是魔法石,選擇器是選擇法器,CSS屬性是魔法師,屬性值是魔法技能。不同的瀏覽器就是獨立的王國,它可以決定是否允許使用魔法石(HTML 標簽屬性)、是否允許新魔法師“入籍”(CSS3新屬性)、是否允許魔法師使用某些新技能(CSS新屬性值)。

操作系統是王國所在的世界,不同的操作系統就像平行的世界。例如在Windows上,edge瀏覽器最強大;在OS X與iOS上,統治者是Safari;在 Android上,WebKit就是王。

這樣一看,CSS的世界立即鮮活起來,不再是靜態割裂的配置,而是與HTML一同構成的整體。在這個世界里,CSS選擇器是支柱,接下來讓我們跟著張大神深入CSS 選擇器的世界吧。

02

CSS選擇器:CSS世界的支柱

我們先來了解一些基本概念。CSS選擇器可以分為4種,下面逐一說明:

  1. 選擇器:CSS聲明塊前的標簽、類名等。例如body { font: menu; }

  2. 選擇符:有5種,分別是表示后代關系的空格( )、表示父子關系的箭頭(>)、表示相鄰兄弟關系的加號(+)、表示兄弟關系的波浪線(~),以及表示列關系的雙管道(||);

  3. 偽類:名稱前以冒號(:)分隔,通常與瀏覽器行為和用戶行為相關聯,偽類和選擇符相互配合可以實現非常多的純CSS交互效果;

  4. 偽元素:名稱前以兩雙冒號(::)分隔,可用于設置元素指定部分樣式。常用選項有 ::before、::after、::first-letter 和::first-line 等。

CSS世界的支柱由上述4種選擇器構成,它們與HTML結構、瀏覽器行為、用戶行為相互依存和作用。在不斷的碰撞下,將CSS選擇器強大的功能發揮出來。

對一些前端程序員來說,CSS選擇器不過“就那么點東西”。如果他們聽說有人專門為 CSS選擇器技術寫了一本書,估計會瞪大眼睛問:“這有什么好寫的?”

張鑫旭一定會很有禮貌地遞過去一本《CSS 選擇器世界(第2版)》,然后謙虛地說:“看看我寫的這本書,里面的知識有沒有你不知道的?”

點擊,即可購書

如果只掌握常用的幾個基礎選擇器,也可以把頁面做出來。但這樣做事,就好像手里拿把錘子,看什么都是釘子一樣。而前端技術是一個快速發展的領域,指望一年經驗重復用十年是不現實的。

比方說,有時為了實現一個復雜的交互行為,辛辛苦苦寫了幾百行JavaScript代碼,結果CSS只用一行代碼就能搞定,這就是知道和不知道的差距。

《CSS選擇器世界(第2版)》并不是窮舉所有CSS選擇器的說明書,而是以一種體系化的方式梳理CSS選擇器知識。同時張大神結合自己多年工作中踩過的坑,給出了許多含金量超高的最佳實踐建議。

所以這不是一本簡單的入門書,一些前端老人都未必全都知道里面的知識。對追求進步,想要突破技術瓶頸的前端程序員來說,本書是非常好的進階之路。

03

飛速發展的CSS

CSS規范由W3C組織維護更新,伴隨著互聯網從桌面端到移動端的發展,CSS規范也在快速地推陳出新。為了適應Web技術發展的要求,CSS工作組決定從CSS2.1開始將CSS按特性劃分為獨立的模塊,這些模塊按自己的進度去實現標準化。

這使得從形式上來說,CSS3并沒有一個具體的標準,而是由不斷擴充的模塊構成的標準集合。CSS工作組會定期發布成熟模塊組的快照表,對前端程序員來說,要保持對CSS標準的敏感度,追蹤最新的技術進展。

張鑫旭在十多年的研究過程中,對CSS標準密切關注,時時更新自己的知識體系。他在創作《CSS選擇器世界》的過程中,不僅要盡可能地囊括有潛力的新特性,還要保持技術前瞻性,確信所選特性在未來會有廣泛的影響。

所以,在《CSS 選擇器世界》第1版于 2019 年出版之后不到3年時間,張鑫旭又對原有內容進行了大幅修改,推出了《CSS選擇器世界(第2版)》。在第1版的基礎上,第2版對選擇器的特性、兼容性進行了更新,介紹了標準中新增的多個選擇器。

其中新增的:has()偽類讓張大神翹首以盼了十幾年,因為它可以實現真正意義上的父選擇器效果。本書還介紹了支持音視頻開發的選擇器,使得富媒體開發更加便捷。另外,張鑫旭將這幾年積累的最新的經驗也一并寫到了第2版中。

張鑫旭自己也在《CSS選擇器世界(第2版)》的前言中感嘆:

“CSS的發展太快了。不過這也是前端技術的特點,如果感覺自己有點找不著北,那就不妨跟隨大神的腳步一起前進吧?!?/span>

04

CSS三部曲的世界

除了《CSS選擇器世界(第2版)》,張鑫旭另外還創作了《CSS世界》和《CSS 新世界》,合稱為“CSS 世界三部曲”。

這是張鑫旭給前端程序員貢獻的一套CSS 寶藏,可以說啃下三部曲,CSS就能達到最佳實踐、信手拈來的水平。

《CSS世界》以“流”為線索,全面深入地講解從結構、內容到美化等方面的大量知識點,是CSS世界的基礎?!禖SS新世界》則對CSS3之后的上百個新特性進行了介紹,分享了張大神諸多獨門心法。

《CSS世界》和《CSS新世界》相互補充,《CSS世界》中講解的都是CSS2.1的知識,《CSS新世界》講解的都是CSS2.1之后的知識,再加上《CSS選擇器世界(第2版)》,這3本書中的內容一起構成CSS這門語言的完整面貌。

前端技術領域發展快,各種框架層出不窮,這也是讓前端程序員產生職業倦怠的原因之一。但這不能成為前端程序員原地停留的借口,我們應該一面深挖技術根本,一面積極擁抱變化。

跟著張鑫旭大神練好CSS,成為前端高手吧!


聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 前端
    +關注

    關注

    1

    文章

    179

    瀏覽量

    17638
  • HTML
    +關注

    關注

    0

    文章

    273

    瀏覽量

    29451
  • javascript
    +關注

    關注

    0

    文章

    513

    瀏覽量

    53473
  • CSS
    CSS
    +關注

    關注

    0

    文章

    106

    瀏覽量

    14219

原文標題:前端大神是怎么學CSS的?

文章出處:【微信號:TheAlgorithm,微信公眾號:算法與數據結構】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    78 前端CSS實現翻轉卡片效果

    前端CSS
    小凡
    發布于 :2022年08月28日 18:00:41

    158 初學css,你了解過BFC?

    前端CSS
    小凡
    發布于 :2022年08月29日 09:17:08

    請教高手:單片機大蝦你們都在哪個公司工作???

    請教高手:單片機大蝦你們都在哪個公司工作???大家都曬一曬大家的公司名字和薪資好嗎?我們都是新手,不知道現在的市場行情!謝謝!
    發表于 07-24 16:25

    各位大神,你們是怎么學會單片機的?

    由于工作3天2頭看看,真的好杯具;我不知道是我的C的很惡心還是天生就不適合單片機;我現在寫程序很難下手也沒有死路,也不知道從哪開始;說說你們
    發表于 08-24 18:38

    小程序來臨,前端工程師的春天

    小程序來臨,前端工程師的春天● ● ●?一夜之間,關于小程序(應用號)的文檔、截圖鋪天蓋地襲來。拿到內測權限的公眾號,祝你們可以享受到這其他人觸不可及的紅利。?為了防止還有人沒看過,再放一次它的簡介
    發表于 09-28 23:32

    成都WEB技術培訓及WEB前端開發培訓

    使用PS切圖,使用Axure與Mockups設計原型圖和交互設計圖4 Web前端技術基礎 掌握HTML與CSS基礎技術5 網站后臺技術 掌握基礎的網站后臺搭建技術以及前后臺交互技術6 使用CMS創建
    發表于 10-26 15:05

    css的性能優化重點

    網站前端性能優化之javascript和css
    發表于 10-21 09:12

    前端開發需要學習什么?學習路線規劃

    前端開發需要學習什么?相信這個問題是在web前端學習路上的小伙伴們都想知道的。想入行IT,對于沒有基礎的人來說,先學習前端是最好的,前端的趣
    發表于 06-30 11:05

    關于CSS的小技巧你都知道哪些

    關于CSS的小技巧你都知道哪些?
    發表于 10-22 08:55

    css3按鈕特效

    css3按鈕特效css3按鈕特效css3按鈕特效css3按鈕特效css3按鈕特效css3按鈕特效
    發表于 05-24 14:14 ?0次下載

    CSS工程化實踐成果分析

    作為Web開發的重要組成部分,CSS技術演進也在推動著前端工程化不斷進步。本文將從CSS模塊化、namespace約束、CSS in JS方案三個方面逐步深入解讀
    發表于 09-27 15:10 ?0次下載

    盤點5大主流CSS框架,你知道哪些

    作為開發工具,CSS框架一直處于不斷進化和改進的狀態,因此我們強烈建議您關注眼下的趨勢。這篇文章會帶您了解2017年最流行的5種CSS框架。
    發表于 10-29 11:21 ?1.1w次閱讀

    非計算機專業前端工程師的真實經歷

    2010年5月4號,大三,在浙大紫金港的圖書館,第一次知道了HTML的含義,慢慢的開始接觸CSS,jQuery,由一開始的不了解,到漸漸喜歡上前端。記下這篇文字,希望可以跟大家分享一下自己走過
    的頭像 發表于 11-26 15:44 ?4032次閱讀

    CSS框架:UIKit的優缺點

    UIKit是一個模塊化的輕量級前端CSS框架。它非常適合于快速開發那些功能強大的Web界面。憑借著CSS、HTML和JS組件的全面集合,它能夠讓前端框架既容易擴展,又方便被定制使用。U
    的頭像 發表于 07-01 16:30 ?3326次閱讀

    如何優雅的寫css代碼

    CSS(全稱 Cascading Style Sheets,層疊樣式表)為開發人員提供聲明式的樣式語言,是前端必備的技能之一,基于互聯網上全面的資料和簡單易懂的語法,CSS 非常易于學習,但其知識點
    的頭像 發表于 01-03 15:00 ?543次閱讀
    亚洲欧美日韩精品久久_久久精品AⅤ无码中文_日本中文字幕有码在线播放_亚洲视频高清不卡在线观看
    <acronym id="s8ci2"><small id="s8ci2"></small></acronym>
    <rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
    <acronym id="s8ci2"></acronym>
    <acronym id="s8ci2"><center id="s8ci2"></center></acronym>