HTML、CSS 和 JavaScript
在浏览器里,frontend 恰好由三种语言搭起来。你不需要亲手去写它们,但你需要知道每一种各自管什么。
HTML 是结构——内容以及它的骨架。它说 "这里是一个标题,这里是一个段落,这里是一个按钮"。它是页面的名词;HTML 单独存在时,是一份朴素、没有样式的文档,就像一个带标签的文本文件。浏览器会把你的 HTML 变成一棵存在内存里、活的对象树,叫做 DOM(Document Object Model,文档对象模型);当代码 "改变页面" 时,它其实是在改变 DOM,然后浏览器重新绘制以保持一致。
CSS 是样式——一切看起来是什么样。颜色、字体、间距、布局、靠左还是居中、小屏幕还是大屏幕。CSS 不会改变页面上有什么,只改变它怎么呈现。如果说 HTML 是名词,那 CSS 就是形容词。
JavaScript(JS)是行为——你交互时发生了什么。它监听点击、把数据发给 backend、显示一个加载转圈、在答复回来时更新 DOM。HTML 和 CSS 是静态的;JavaScript 让一个页面做事情。它是动词。(同一种语言通常也用来跑 backend,这就是为什么你到处都会看到它。)