今天在重读CSS权威指南的时候突然想到的:为什么 HTML 需要划分块级元素和行内元素?
即使没写过代码,做过PPT的人也会懂布局。重点在于,他们在按照心中所想的图案布局,而前端在按照文档流布局。由于所有的元素,哪怕是看起来像是装饰的功能,比如em或者a,都必须是一个标签,这就产生了行内元素。
那么,为什么要使用标签化布局,或者说 HTML 呢?大概是布局使用树形结构划分是非常合理的。我们总是由一个粗粒度的组件划分,分而治之,到更细的粒度。子组件必然受到父组件的约束,比如大小。这种自顶向下的分治思想也可以延伸到前端框架,比如 React。