使用PHP获取实际宽度而不是自动宽度


Get actual width rather than auto using PHP

如何确定具有width auto使用PHP的HTML元素的显式宽度?

JQuery有能力做到这一点,如果使用width:auto;,它可以计算实际宽度。

获取集合中第一个元素的当前计算宽度匹配的元素。

JQuery可能在浏览器的帮助下完成这些,因为它是客户端。

如何使用PHP实现这一点?我有一个HTML字符串。

更新

所有的CSS都是内联的,如果宽度是auto,那么决定元素宽度的唯一因素就是它的直接父元素和/或它的内容。

不可能。PHP不知道如何呈现HTML/CSS(如果要呈现的话)。

在PHP中唯一可能的方法是如果你有 HTML和完整的CSS作为字符串元素的宽度以绝对像素定义或其容器(或父容器等)的宽度以绝对像素定义。如果所有这些条件都成立,要弄清楚它仍然是极其困难的。基本上你必须在PHP中编写一个渲染引擎。

如果你真的很幸运,你需要的元素将有一个内联的style="width:px",你可以解析该属性。

这在Javascript中是可能的,因为浏览器知道它自己的大小。在大多数情况下,字符串中的HTML在浏览器中呈现之前是没有大小的。