CSS 和 Latex 组织盒子的方式有何不同? (段落或图形元素。)
最佳答案
两种模型的总体方案基本相似,即通过处理输入语言生成页面布局的分层盒装表示,然后将其转换为呈现的页面。给我印象最深的四个不同是:
- CSS 盒子模型是一个强大的抽象,而 Tex 模型中盒子的布局是操作确定的:当盒子在 Tex 模型中布置时,代码可以分解并重新布置早期的盒子。<
- 虽然 Tex 的布局模型是面向文本的,就像 CSS 框模型一样——与 Adobe InDesign 面向页面的布局模型相反,后者主要是将 block 组合在一起以覆盖每个页面——它仍然有很多面向页面的抽象,比如确定垂直空间的“坏处”以便放置脚注——在我所见的 CSS 框模型中没有类似的东西。 Context 有一个更复杂的页面布局模型,允许同时面向文本和面向网格的布局。
- CSS 模型和 Tex 模型都有 block 级框 (vboxes) 和内联框 (hboxes) 的概念。然而,虽然您可以使用 CSS 指定 block 级框出现在行内框内,section 9.2.1 of the CSS2 standard说这个的语义是把外层行内盒变成 block 级盒,所以CSS盒模型基本上禁止行内盒内出现 block 级盒。相比之下,Tex 很高兴在 hbox 中包含 vbox,它提供了一些功能,例如将文本片段放置在段落文本中的文本之上。
- 最重要的是,CSS 盒模型没有柔性胶水的概念,这使得可缩放的页面布局更加棘手,我想这也是固定宽度网页设计占主导地位的原因。
关于css - CSS 和 Latex 盒子模型有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3089125/