Php 如何检查webkit在后端呈现的HTML元素高度?
我有一个表单,它接受WYSIWYG输入。这将在前端进行渲染,但渲染时其高度不能超过某个限制。我需要验证,一旦提交到我的PHP脚本,它将在该限制内 当然,我可以通过JS在前端进行检查,但我不能信任客户端验证 我所尝试的:Php 如何检查webkit在后端呈现的HTML元素高度?,php,browser,headless,Php,Browser,Headless,我有一个表单,它接受WYSIWYG输入。这将在前端进行渲染,但渲染时其高度不能超过某个限制。我需要验证,一旦提交到我的PHP脚本,它将在该限制内 当然,我可以通过JS在前端进行检查,但我不能信任客户端验证 我所尝试的: 使用DOMPDF创建PDF 将其导出为PNG 元素周围有一个由DOMPDF呈现的边框。我现在唯一能想到的就是用PHP测量边界框,并验证高度是否在限制范围内 我知道可以从PHP中的标记重新创建DOM,但我仍然无法获得渲染元素的高度 我更喜欢某种类型的无头浏览器,它可以让我做到这
- 使用DOMPDF创建PDF
- 将其导出为PNG
$page = $browser->make($markup);
$height = $page->getElementById('element_id')->height;
有没有一个纯PHP(即非PhantomJS)解决方案可以解决类似的问题?我非常非常好奇您为什么想知道这一点。我只是想不出一个原因(你可以在containing
标签上设置overflow:hidden
)。你能详细说明一下吗?对于某种类型的无头浏览器,我会作为一种可能的选择进行调查。不过,它仍然需要本地安装的浏览器。我理解你的意思,这只是一个非常具体的用例。我会使用overflow:hidden
方法,但它会在一定程度上干扰演示文稿。最后,我解析生成的PDF文档以获得边界框的尺寸。目前效果良好。:)然后再加上这个答案并接受它可能是明智的,这样人们就不会花时间去想其他的方法了