沒人真正把 HTML 教得像它重要一樣,也許這正是問題所在
每個開發者都會跳過的一課。
你有沒有注意到,沒人真的把 HTML 教得像它很重要?
不論是在編程訓練營,還是大學課程,亦或是各種教程,HTML 總被當成“真正”代碼的包裝紙隨意丟棄。開個 <div>,關個 </div>,然后就進入重點:JavaScript、React、Tailwind,或者當下最火的技術。
我理解,HTML 看起來簡單,對吧?標簽隨手一丟,任務完成,哪有多難?
按理說,這樣沒問題。
但實際上并非如此。
簡單的錯覺
HTML 乍看起來很簡單,就像一串標簽:<p>, <h1>, <section>, <main>,有什么難的?
于是我們學它就像學快捷鍵:只懂得應付。復制一段模板,亂插幾個 div,加個 class,接著往下走。如果哪里出問題了,就再谷歌一遍“如何居中 div”,然后繼續開發。
這招一時管用,直到某天不行了。
你會發現自己埋頭于 React 項目中,卻搞不懂為什么布局對輔助設備不友好,語義結構混亂,SEO 急速下滑,卻找不到原因。
因為 HTML 不只是標簽,它關乎意義。 這正是我們一直跳過的部分。
HTML 不僅是語法,它更像是一種契約。你與瀏覽器之間的契約,與你的輔助技術之間的契約,與你之后維護代碼的同事之間的契約。它不只是“結構”,更是語義,是無障礙,是清晰。
可沒人教這部分。
他們只教我們如何構建組件,而不是如何寫文檔;教我們用 div 和 span 思考,而不是段落和章節;教我們捷徑,卻不講整體地圖。
難怪那么多初級開發者把 <article> 和 <aside> 當成稀有的動物,聽過名字,見過一兩次,但不敢輕易靠近。
我的 HTML 警鐘 我以前也不重視 HTML,直到被它狠狠教訓過。
幾年前,我帶領團隊重建一個老舊網站。原本以為很簡單,把舊的 jQuery 代碼換成全新的組件。沒什么大問題。
結果,用戶開始抱怨了。盲人用戶、鍵盤導航用戶、屏幕閱讀器用戶——那些依賴文檔語義而非僅僅視覺的人。
視覺效果完美無缺,像素級精準對齊,但底層卻是語義的荒漠。
輸入框沒有 <label> 標簽,標題層級混亂,地標元素缺失或用錯,ARIA 屬性像膠帶一樣胡亂貼上。
那一刻我明白了:我們一直把 HTML 當成腳手架,實際上它應該是基石。
為什么我們總能僥幸過關
瀏覽器太寬容了。它不像編譯器那樣嚴厲懲罰糟糕的 JavaScript,爛代碼照樣能渲染出來。
所以,我們就這么干了。
功能實現了,按鈕還能點,頁面看起來還漂亮,直到有屏幕閱讀器用戶試用,或者谷歌爬蟲索引,或者你半年后回頭調試時發現,這全是堆積如山的 div 搞出來的爛攤子。
當然,你也可以用庫、插件和 ARIA 角色來修補,但那其實是你沒好好學 HTML 造成的問題。
這就像靠死記 GPS 路線學開車,雖然能到目的地,但真要看地圖時就麻煩了。
如果我們把 HTML 當回事來教呢? 如果我們不把 HTML 當成入門時的必過關卡,而是像對待組件模式、異步狀態管理那樣認真對待?
如果每個“Hello World”不只是簡單寫個 <h1>Hello</h1>,還講清楚這個標簽為什么重要?
如果我們不再把語義化 HTML 當成“額外加分”,而是看作工作的一部分?
因為它確實是。
優秀的 HTML 不炫耀,不刷社交媒體點贊,也不一定讓你 GitHub 上滿星,但它是區分隨便拼湊界面和真正懂 Web 的人之間的關鍵技能。
而現在,我們的前者太多,后者太少。
總結
HTML 學起來簡單,精通起來卻難,這讓它被嚴重低估。
我們無需把 HTML 當成信仰,但至少應該尊重它。不僅是為了無障礙和 SEO,更因為網絡本身值得被尊重。構建網絡意味著理解網絡,而這一切都始于 HTML。
或許,是時候停止把它當成“真正課程前的預習”了。
也許,我們該真正認真教 HTML。
因為它,確實重要。


























