代码之家  ›  专栏  ›  技术社区  ›  Steve

CSS和乳胶盒模型有什么区别?

  •  16
  • Steve  · 技术社区  · 16 年前

    CSS和Latex组织方框的方式有什么区别(段落或图形元素。)

    3 回复  |  直到 16 年前
        1
  •  16
  •   Charles Stewart    15 年前

    两个模型的总体方案基本相似,即对输入语言处理后生成的页面布局进行分层装箱表示,然后将其转换为呈现页面。给我印象最深的四个区别是:

    1. CSS盒子模型是一个健壮的抽象,而Tex模型中盒子的布局是由操作决定的:当盒子在Tex模型中布局时,代码可以分解并重新布局先前的盒子。
    2. 虽然Tex的布局模型是面向文本的,就像CSS框模型一样,与Adobe的InDesign面向页面的布局模型相反,InDesign面向页面的布局模型非常注重将块装配在一起以覆盖每个页面,但它仍然有许多面向页面的抽象,就像为了放置脚注而确定垂直空间的“坏处”——在CSS框模型中我看不到这样的东西。Context有一个更复杂的页面布局模型,它允许同时使用面向文本和面向网格的布局。
    3. section 9.2.1 of the CSS2 standard 它的语义是将外部内联框转换为块级框,因此cssbox模型基本上禁止块级框出现在内联框中。相比之下,Tex则乐于将vboxes放在hboxes中,它提供了将文本片段放在段落文本中的文本之上的功能。
        2
  •  1
  •   Community Mohan Dere    6 年前

    CSS的规范并不难找到,当然它们包含 a chapter on the box model .

    关于乳胶的信息有些难找,但你可以看看 here

    米尔。

        3
  •  1
  •   Gunther Schadow    7 年前

    TeX其实并不需要使用这个特性,因为TeX的用途总是在固定页面上布局内容。但在网络浏览器上最自然的事情(自从屏幕尺寸超过640x480像素以来)是调整它的大小,尤其是宽度。

    在CSS中,很难像幻灯片那样进行布局,中间的一个框架占据了大部分空间,两条细条纹的向前和向后按钮(分别是右键和左键)然后优雅地调整大小,特别是当我们到达光谱的窄端时。而且,在宽幅方面,不会像许多现代CSS布局那样浪费所有的边距空间。

    在德克萨斯州这很容易。你有一个hbox,有一个可伸缩的中心框架,向前和向后按钮的大小是固定的。

    这是一个关键的方面,我觉得是严重缺失的CSS。这是如此的自然,令人惊讶的是,克努斯发明它的时候,动态屏幕布局是几十年来才成为现实。令人遗憾的是,这个天才被遗忘了。

    • 对微软程序员来说太“难”了

    同样的问题也出现在Java/Swing布局方案中。我记得大约15年前,我用Java实现了一个真正的Box和Glue布局,以便在一个项目中与SWT一起使用。一旦你拥有了它,它就太棒了。