CSS 学习指南

75 阅读3分钟

前言:内容很多主观的看法,未经论证。只能说,这些看法帮我把CSS的知识系统联系起来,节省了学习时间,在工具的意义上,对我特别具有实用性。

我觉得学习效果跟时间精力注意力目标策略等诸多因素有关,本文只谈一下CSS的学习策略。

首先,我们得承认这世间的差异性:不同的学习对象有不同的学习方法,不同的人也有不同的适合自己的学习方式

关于学习对象

我把学习对象分成两类:一种叫自然主义对象,一种叫结构主义对象

前者的核心在于模仿,遇到什么就学什么,学习过程可以是碎片化的,积少成多,注重量的积累,比如像学习语言、乐器、书法这些东西。后者更注重结构,需要透过文本寻求底层联系体系化的去学,为的是一种质变,比如像学习编程、艺术、经济学这些东西。

举个例子,大家应该会有共鸣,如果是学英语,语法掌握的再好,单词记得不多,英语水平也无法提高; 但是如果学编程,掌握的API再多,不理解底层原理,不把知识点之间的联系弄清楚,编程水平也提不上来。 这就是学习对象不同导致的学习方法差异。

针对CSS,我认为采用结构主义的方式去学效果更好。

记住那些css属性并使用它们,也许足以让我们入门,但想真正弄懂css,还得理解css中一些底层核心思想,比如属性计算过程、盒模型、视觉格式化模型等。

关于学习方式

我觉得,学习如捕鱼,先用渔网大批的捞,再用鱼竿钓漏掉的,这个渔网就是知识体系

比如,我对CSS构建的的知识体系:

css.png

每个人构建起来的知识体系可能都不太一样,我觉得没必要争论谁的更好,关键是要能全面的囊括这一领域的知识,并适合自己理解、记忆、使用

谈了这么多,回到我们的主题:如何学好CSS呢?

都说CSS入门容易精通难,学习个把星期,谁都能码上一段css,但若是遇到问题,调试起来就没那么容易了。

我想原因可能是,我们都更注重学习css语法,而不关注css的语义,并且在css语用层面实践的也不够(相比于css中贼多的使用情况而言)

所以,我总结一下,我认为的,想学好CSS,可以分为以下三步:

  1. 掌握语义,深刻理解属性计算过程、盒模型、视觉格式化模型等概念。
  2. 掌握语法,对规则、选择器、属性与值、css函数这些API,掌握其中的20%,熟悉另外80%我想足够了(二八法则)。
  3. 掌握语用,那些最佳实践是我们解决问题的利器,当然要学。而且,最好的是,我们还能输出自己的"最佳实践"。