php - dompdf HTML to PDF - 无法设置页边距

标签 php html css margin dompdf

版本:0.6.0 beta 3

我以各种方式尝试让 dompdf 设置页面的边距。我有一个很长的页面,上面有很多文字,分为几章......

我的 CSS 是这样的:

#wrapper{
    padding:8px;
}

/* other styles... */

@page{margin: 0.2in 0.5in 0.2in 0.5in;}

当 php 是

<?php
ob_start(); // begin collecting output
include 'makemypdf.php'; // this page output the html
$html = ob_get_clean(); // retrieve output from makemypdf.php and stop buffering


require_once("dompdf/dompdf_config.inc.php");

$dompdf = new DOMPDF();
$dompdf->load_html($html);
$dompdf->render();
$dompdf->stream("sample.pdf", array("Attachment" => false));

?>

但我得到的是一个没有边距的页面!!!仅应用#wrapper 的填充...并且仅在整个 PDF 的开头和结尾应用它们...

我做错了什么?

PS - 似乎只应用了底部边距...但我不确定...

PPS - 我也试过这个 css 但没有成功: body { 顶部边距:40px; } HTML { 顶部边距:40px; } @页 { 顶部边距:40px;

最佳答案

我发现 body 或 @page 在这个版本的 dompdf 中都不起作用。

问题出在主 CSS 中,我把每一行都放在这里:

*{margin:0;padding:0}

我发现 PDF 的边距是根据 HTML 的边距决定的,所以我用全局选择器删除了该行并替换为:

th,td,p,div,b ... {margin:0;padding:0}
html{margin:40px 50px}

这“出乎意料”,我在每一页都得到了正确的边距。

关于php - dompdf HTML to PDF - 无法设置页边距,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19779285/

相关文章:

php - iOS Swift 应用程序内存问题 - 运行后从内存中删除函数?

jquery - 如何根据数字前面是 "+"还是 "-"来设置数字的字体颜色?

html - 将两个 div 放在一个 div 容器中?

html - 需要帮助衬一些按钮

php - 表单提交 - 预验证使 IE 失效

php - 将用户指定的日期和时间(使用 mktime 转换)调整为特定时区

php - 动态 laravel 数据库属性会影响应用程序速度吗?

javascript - 将图像调整大小/拉伸(stretch)到只有在页面加载后才知道的尺寸

php - Html5 中的下拉导航无法正常工作

javascript - 防止全屏菜单滚动