【发布时间】:2012-07-24 15:25:35
【问题描述】:
(以下问题:html columns whose width automatically changes according to their content)
从一个 PHP 脚本,我打印了一些 HTML 代码,我想知道结果的高度是多少(用于分页计算)。假设我有以下输入:
- 我要打印的$html代码(字符串);
- $css 代码,包含 HTML 中出现的所有项目的字体和大小的完整详细信息(字符串);
- 所有相关的浏览器设置(字体、大小等);
- 页面 $width,以像素 (int) 为单位。
我创建了一个如下所示的页面:
<html>
<head>
<style>$css</style>
</head>
<body style='width:$width'>
$html
</body>
</html>
我想知道,在 PHP 脚本中,从页面顶部到文本底部的像素数。
编辑:我需要在服务器端执行此操作,在显示内容之前,因为我使用它来计算要放置的内容。例如,如果内容太高,我可能会决定只放前半部分,等等。
另一个可能的用途是计算达到特定高度所需的宽度。比如我可能会尝试把它放在一个宽度为 200px 的 div 中,但结果可能太高了;然后我尝试宽度 400px 等,直到我找到给出我想要的高度的宽度。
【问题讨论】:
-
用jQuery岂不是更简单?
-
我需要在服务器端做这个,因为我用它来计算要放什么内容。例如,如果内容太高,我可能决定只放前半部分,等等。
-
@ErelSegalHalevi 您不需要它是服务器端的。只需在 JavaScript 中获取高度并将 AJAX 请求发送到包含高度信息的 PHP 脚本即可。
-
好的,但是到那时,用户已经看到了内容......我可能需要不止一次迭代 - 将内容放在宽度为 800px 的 div 中并测量高度,然后尝试宽度600px 并测量高度等,直到找到最佳宽度。如果我使用客户端测量,用户将看到每次迭代中闪烁的内容。我需要它是服务器端,以便用户只能看到最终结果。