CSS:具有延迟宽度的元素

时间:2015-04-02 17:23:57

标签: css

假设我想制作一个<p>元素,它具有固定的高度和宽度,只有在高度不足以显示所有文本时才会增长。默认情况下,<p>是块级元素。这意味着它具有贪婪的宽度和懒惰的高度。我想要相反的,懒惰的动态宽度和固定/贪婪的高度。如果可能,内联块元素会尝试在一行中显示文本,这不是我想要的。我想要一个纯CSS解决方案只是因为。有可能吗?

1 个答案:

答案 0 :(得分:1)

这是不可能的。

  

9.4.2 Inline formatting contexts

     

在内联格式化上下文中,框水平排列   [...]。包含形成一条线的框的矩形区域   被称为行框

     

线框的宽度由containing block确定   浮子的存在。 [...]

     

通常,线框的左边缘接触其左边缘   包含块,右边缘触及其右边缘   包含块。但是,浮箱可能介于两者之间   包含块边和线框边。因此,虽然线盒   在相同的内联格式化上下文中通常具有相同的宽度   (包含块的宽度),如果可用,它们的宽度可能不同   由于floats,水平空间减少了。 [...]

     

根据需要创建行框以保存其中的内嵌级内容   内联格式化上下文。 [...]

因此,线框的宽度仅受包含块的宽度和浮动的存在的影响。然后,必要时会有尽可能多的线框。