如何使用PHP确定宽度为auto的HTML元素的显式宽度?
如果使用width:auto;
,JQuery可以执行此操作,它可以计算实际的width。
获取集合中第一个元素的当前计算宽度 匹配的元素。
JQuery可能在浏览器的帮助下完成此操作,因为它是客户端。
如何使用PHP实现这一目标?我把HTML作为字符串。
所有CSS都是内联的,如果宽度为auto,则唯一要确定元素宽度的是它的直接父级和/或其内容。
答案 0 :(得分:3)
这是不可能的。 PHP不知道如何呈现HTML / CSS(如果完全呈现)。
答案 1 :(得分:2)
在PHP中唯一可行的方法是,如果你有两者 HTML和完整的CSS作为字符串 AND ,元素的宽度以绝对像素定义或其容器(或父容器等)的宽度以绝对像素定义。如果所有这些条件都成立,那么要弄清楚仍然非常困难。基本上你必须用PHP编写渲染引擎。
如果您真的很幸运,您需要的元素将具有内联style="width:px"
,您可以解析该属性。
这在Javascript中是可行的,因为浏览器知道它自己的大小。在大多数情况下,字符串中的HTML在浏览器中呈现之前不会有大小。