小编典典

CSS的价值计算

css

作为Web开发人员,您经常会遇到一些问题,如果有类似价值计算之类的问题,很容易解决。

我经常想知道为什么无法在CSS中执行以下操作:

line-height: (height / 2)px;

例如,这将解决您想要垂直对齐元素时遇到的一些问题。现在很难使用CSS垂直对齐元素,并且会产生相当大的开销。

在您知道元素的固定高度的情况下,您不需要这样做。但是,一旦高度发生变化(较长的文字等),您就会迷上了一个元素的总高度。

使用附加的JS可以轻松解决此问题,但这对于普通网站是毫无疑问的。那么,为什么不只在CSS中添加引用当前值并使用它们的功能呢?

如果您调查这样的问题,您就会知道我的意思是


阅读 369

收藏
2020-05-16

共1个答案

小编典典

我说这是因为CSS只是定义了浏览器如何显示内容。没有信息流回样式表,或者换句话说就是:CSS不是动态的。

如果您知道元素的高度并希望在每次显示页面时进行更改,则可以使用PHP或其他语言生成样式表。然后,您还知道高度的一半,也可以进行设置。

如果您不知道高度,那将是一个动态变化。浏览器必须首先呈现页面,然后确定元素的高度并将其发送回CSS。在那里,在显示的页面中计算并更改了行高。但是也许因此元素的整体高度也会发生变化。现在浏览器不得不再次回到CSS,依此类推…

就是行不通。CSS在那里静态地定义页面的外观。

2020-05-16