php
function print(){
$data=$this->session->userdata('print_data');
$this->load->view('printer',$data);
}
HTML(打印机视图)
<div id='printerwrapper'>
......
</div>
<style>.....</style>
<script>windows.print();</script>
[当我查看并打印出来时,它会打印整个页面,并且div会重新调整为页面的一小部分,因此我检查了页面的html,发现ci不仅渲染了视图,而且还添加了所有meta标签和基本的html页面结构。
<html><head><title></title></head><body>......</body></html>
这里是我尝试打印的页面示例我只想打印此Div,而不是整个页面!
我应该了解如何制作可打印的页面吗?
您可以通过JavaScript轻松打印Selected div。看看下面的代码。...
首先将此JavaScript代码添加到头部...
<script type="text/javascript">
function printDiv(divName) {
var printContents = document.getElementById(divName).innerHTML;
var originalContents = document.body.innerHTML;
document.body.innerHTML = printContents;
window.print();
document.body.innerHTML = originalContents;
}
</script>
然后查看页面如下...
<div id="printableArea">
Your Content here.....
</div>
<input type="button" onclick="printDiv('printableArea')" value="Print Invoice" />
单击打印发票按钮时。然后它将以选定的DIV id Printablearea
打印出来尝试一下。希望它能工作。祝你好运。
我认为浏览器的目标是使打印的外观类似于其在屏幕上的外观,除非另有说明。话虽如此,也许您应该考虑只使用@media print
专门用于打印的CSS样式表。我去找了found an article,我记得很早以前就看到过有关印刷媒体查询的信息。
这实际上取决于您的目标。如果您希望屏幕上的版本看起来像现在,但打印版本看起来有所不同,我认为这是要走的路。如果它在屏幕上的外观无关紧要,也许您可以完全摆脱打印机包装,而只是左右浮动。