- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我遇到了一个我正在努力使用 MPDF6 解决的问题
我有一个使用 codeigniter 创建的 Web 应用程序,它显示问卷调查的结果。
我在 html 中生成了简单的堆叠条形图,并使用 jquery 将条形动画化为最终大小。工作正常,没有问题。
我希望能够在 MPDF 中复制结果,因此使用相同的 div 理论并相应地调整它们的大小,但是这次我使用 php 将宽度设置为内联样式,并且在大多数情况下我都可以正常工作,但是,如果 value = 1,那么由于某种原因 mpdf 变得很时髦,请参见下面的示例图片;
这是我的 mpdf 报告的 php 标记示例
<div class='survey'>
<?php $nw = 390; $w = 400; $tot=0; $totpos=0; $score=0; $cat=0; foreach ($categories as $c) : ?>
<p class='left question'><?php echo $c->category_name; ?></p>
<p class='left perc'><?php echo number_format($summaryAnswers[$cat][6],1); ?>%</p>
<p class='left perc'><?php echo number_format($summaryAnswers[$cat][7],2); ?></p>
<div style='width: <?php echo $w; ?>px;' class='left chart'>
<?php if ($summaryAnswers[$cat][0] > 0) : ?>
<div class='left barchart sagree' style='width: <?php $width = $nw * $summaryAnswers[$cat][0]/$summaryAnswers[$cat][5]; echo $width; ?>px;' tot='<?php echo $summaryAnswers[$cat][5]; ?>' val='<?php echo $summaryAnswers[$cat][0]; ?>' ><span class='label'><?php echo $summaryAnswers[$cat][0]; ?></span></div>
<?php endif; ?>
<?php if ($summaryAnswers[$cat][1] > 0) : ?>
<div class='left barchart agree' style='width: <?php $width = $nw * $summaryAnswers[$cat][1]/$summaryAnswers[$cat][5]; echo $width; ?>px;' tot='<?php echo $summaryAnswers[$cat][5]; ?>' val='<?php echo $summaryAnswers[$cat][1]; ?>' ><span class='label'><?php echo $summaryAnswers[$cat][1]; ?></span></div>
<?php endif; ?>
<?php if ($summaryAnswers[$cat][2] > 0) : ?>
<div class='left barchart neither' style='width: <?php $width = $nw * $summaryAnswers[$cat][2]/$summaryAnswers[$cat][5]; echo $width; ?>px;' tot='<?php echo $summaryAnswers[$cat][5]; ?>' val='<?php echo $summaryAnswers[$cat][2]; ?>' ><span class='label'><?php echo $summaryAnswers[$cat][2]; ?></span></div>
<?php endif; ?>
<?php if ($summaryAnswers[$cat][3] > 0) : ?>
<div class='left barchart disagree' style='width: <?php $width = $nw * $summaryAnswers[$cat][3]/$summaryAnswers[$cat][5]; echo $width; ?>px;' tot='<?php echo $summaryAnswers[$cat][5]; ?>' val='<?php echo $summaryAnswers[$cat][3]; ?>' ><span class='label'><?php echo $summaryAnswers[$cat][3]; ?></span></div>
<?php endif; ?>
<?php if ($summaryAnswers[$cat][4] > 0) : ?>
<div class='left barchart sdisagree' style='width: <?php $width = $nw * $summaryAnswers[$cat][4]/$summaryAnswers[$cat][5]; echo $width; ?>px;' tot='<?php echo $summaryAnswers[$cat][5]; ?>' val='<?php echo $summaryAnswers[$cat][4]; ?>' ><span class='label'><?php echo $summaryAnswers[$cat][4]; ?></span></div>
<?php endif; ?>
</div>
我已经尝试了 px width 和 %width 这两个选项都给了我相同的结果...
这是脚本生成的html,你可以看到每个宽度的值看起来是正确的
<div class='survey'>
<p class='left question'>Organisation and Culture</p>
<p class='left perc'>66.7%</p>
<p class='left perc'>2.92</p>
<div style='width: 400px;' class='left chart'>
<div class='left barchart sagree' style='width: 97.5px;' tot='24' val='6' ><span class='label'>6</span></div>
<div class='left barchart agree' style='width: 162.5px;' tot='24' val='10' ><span class='label'>10</span></div>
<div class='left barchart neither' style='width: 32.5px;' tot='24' val='2' ><span class='label'>2</span></div>
<div class='left barchart disagree' style='width: 81.25px;' tot='24' val='5' ><span class='label'>5</span></div>
<div class='left barchart sdisagree' style='width: 16.25px;' tot='24' val='1' ><span class='label'>1</span></div>
</div>
<br class='clear' />
css..
.survey { font-size: 10pt; }
.survey .question { width: 47%; padding: 5px 0; }
.survey .perc { width: 5%; margin: 0; padding: 5px 0; }
.survey .no { width: 2%; margin: 0; padding: 5px 0; }
.survey .chart { width: 40%; }
.survey .barchart { padding: 5px 0; }
.barchart .label { margin: 0 0 0 5px; }
div.sagree { background: #2DCC00; }
div.agree { background: #F2E930; }
div.neither { background: #888; }
div.disagree{ background: #FFA519; }
div.sdisagree { background: #FF1919; }
.right { float: right; }
.left { float: left; }
.clear { clear: both; }
有人知道为什么会这样吗?
干杯
最佳答案
经过多次反复试验,我找到了适合我的解决方案...
我创建了一个容器 div 并使用内联 css 将 div 的宽度设置为 %,然后容器内的每个 float div 的宽度都设置为 % 有点像这样:
<div style='width: 80%'>
<div style='float: left; width: 20%'>Content</div>
<div style='float: left; width: 30%'>Content</div>
<div style='float: left; width: 40%'>Content</div>
<div style='float: left; width: 10%'>Content</div>
<div style='float: left; width: 5%'>Content</div>
<div style='float: left; width: 15%'>Content</div>
<div style='float: left; width: 40%'>Content</div>
<div style='float: left; width: 40%'>Content</div>
</div>
关于html - float div 宽度的 MPDF 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39011242/
Mpdf 中的以下两个函数在所有页面中添加页眉和页脚。 设置HTMLHeader()SetHTMLFooter() 但是,有人可以帮我从 pdf 的第一页删除页眉和页脚吗? 最佳答案 mPDF 有一个
我有这个问题/想拥有这个功能 我有一个类似于 #375 的问题而是,我的表的功能主要与文档中预期的一样。唯一不能理解的是,我的表头会从一页开始,然后对于一个长表,或者如果它只是延伸到页尾,表数据将移动
我使用的是带有 yii2 的 mpdf 8.1,用于 pdf 报告下载的 php 版本是 5.6.40。它在本地环境中运行良好。但是在具有相同 php 版本的实时服务器中找不到类 mpdf。 mpdf
我正在尝试通过按 eventView.php 中的打印按钮将 html View eventView.php 导出并下载到 pdf,使用 mPDF。即使加载速度很慢,我现在也可以转换为 pdf,但现在
不幸的是,我无法自己简单地测试它。我在这里查看了文档: https://mpdf.github.io/css-stylesheets/supported-css.html 它没有列出任何关于伪类的信息
我目前使用的是 mpdf 6.1,我想切换到 7。但是我找不到没有 Composer 的方法来安装它。是否有完整的软件包可以在我的本地主机上下载、解压缩和测试? 最佳答案 好吧,我花了几天的时间寻找方
4 月份在工作服务器上开始时,我们受到了这个问题的困扰。在客户报告 PDF 不再显示图像之前,我们的应用程序一切正常。 我们的 PDF 是首先通过 HTML 渲染生成的。当显示 HTML 渲染时,图像
使用 PHP 5.6 在 WAMP 堆栈上开发,然后转移到 LAMP 7.1.5一切正常,除了 mPDF 6.1.0 提供以下内容: Warning: A non-numeric value enco
对于我通过 Composer 安装了 mpdf 6 的项目 composer require mpdf/mpdf 它工作得很好,但库本身是我整个项目的十倍。有没有我可以删除的文件?例如,我什么时候需要
$style='@page *{ margin-top: 0cm; margin-bottom: 0cm; margin-left: 0cm; margin-right: 0cm; }'; $html
我想将 mPDF 包含到我的 WordPress 插件中以启用某些导出为 PDF 的功能。然而,mPDF 文件非常大,约为 98mb。 是否只有我可以包含的特定文件才能保留导出为 HTML 并保持格式
它不会在 pdf 中显示 ite1 值。为什么?您能纠正我的错误吗? WriteHTML('Hello World'); $html1 = ' Module De
我想将 mPDF 包含到我的 WordPress 插件中以启用某些导出为 PDF 的功能。然而,mPDF 文件非常大,约为 98mb。 是否只有我可以包含的特定文件才能保留导出为 HTML 并保持格式
我正在使用 mPDF 7.x 版并尝试遵循此文档: https://mpdf.github.io/fonts-languages/fonts-in-mpdf-7-x.html 我只是无法让它工作。没有
您好,我正在使用 mpdf 生成 pdf。现在我面临 html 中表格边框的问题。我在 html 中有以下表格样式 Test header Test he
@page :last { background: rgb(167,0,51); } 我需要为 PDF 的最后一页添加背景,但它不起作用。只有第一页得到 bg 但不是最后一页。有什么解决办法吗? 引
我正在使用 mpdf在 Laravel 和 this package 版本 4.0 问题是我有一个不同高度的问题列表,其中有 4 个选项,我不知道每个 div 标签的确切和大致高度,其中有哪些问题和答
我需要使用 mPDF 生成发票,它们都有页眉、页脚和必须覆盖整个页面的相同背景图像。 我在网上看到了其他解决方案,但没有一个对我有用。 这是几次尝试,都导致失败(图像不显示、50* 错误或使用图像时图
我正在使用 mpdf 库,但是我认为在下载文件时更改下载文件的名称会相当简单,文档说明如下: WriteHTML('Hallo World'); $mpdf->Output('filename.pdf
注:mpdf 6.0 你好, 我正在尝试使用 mpdf 生成 pdf,它需要元素的精确定位以便以后打印。元素将从给定页面的最左上角开始绘制,即不应有隐式填充、边距或其他可能影响元素在正文中位置的内容。
我是一名优秀的程序员,十分优秀!