Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/79.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
我需要创建一个HTML格式的报告,即A4大小的报告,我如何才能做到这一点?_Html_Css - Fatal编程技术网

我需要创建一个HTML格式的报告,即A4大小的报告,我如何才能做到这一点?

我需要创建一个HTML格式的报告,即A4大小的报告,我如何才能做到这一点?,html,css,Html,Css,我需要用HTML制作一份报告,应该是A4大小的。它需要页眉和页脚。当然这可以用css完成是吗 有没有人对此有任何示例或示例代码 我用谷歌搜索了一下,我得到的代码片段都是关于媒体查询的,但它们不起作用 因此,基本上是出于打印目的,生成的html将转换为PDF文档。 我正在使用MVC4,发现了一个可以将视图转换为PDF的工具。视图只是纯HTML。所以我想,为什么不设计HTML来表示输出报告,然后将其转换为PDF格式呢 所以我需要一个标题,一个页脚(页面底部),然后在它们中间的内容 我尝试使用以下代码

我需要用HTML制作一份报告,应该是A4大小的。它需要页眉和页脚。当然这可以用css完成是吗

有没有人对此有任何示例或示例代码

我用谷歌搜索了一下,我得到的代码片段都是关于媒体查询的,但它们不起作用

因此,基本上是出于打印目的,生成的html将转换为PDF文档。 我正在使用MVC4,发现了一个可以将视图转换为PDF的工具。视图只是纯HTML。所以我想,为什么不设计HTML来表示输出报告,然后将其转换为PDF格式呢

所以我需要一个标题,一个页脚(页面底部),然后在它们中间的内容

我尝试使用以下代码,但似乎不起作用

<html>
<head>
    <style type="text/css" media="all">
        @page {
            size: A4 portrait; /* can use also 'landscape' for orientation */
            margin: 1.0in;
            border: thin solid black;
            padding: 1em;

            @bottom-center {
                content: element(footer);
            }

            @top-center {
                content: element(header);
            }
        }

        #page-header {
            display: block;
            position: running(header);
        }

        #page-footer {
            display: block;
            position: running(footer);
        }

        .page-number:before {
            content: counter(page); 
        }

        .page-count:before {
            content: counter(pages);  
        }
    </style>
</head>

<body>
    <div id="page-header">
        <p>Header text</p>
    </div>

    <div id="page-footer">
        <p>Footer text</p>
        <p>Page <span class="page-number"/> of <span class="page-count"/></p>
    </div>

    <div id="page-content">
        <p>Page 1.</p>

        <p style="page-break-after:always;"/>

        <p>Page 2.</p>
    </div>
</body>
</html>

@页面{
尺寸:A4纵向;/*也可以使用“横向”进行定向*/
边缘:1.0英寸;
边框:薄而实的黑色;
填充:1em;
@底部中心{
内容:元素(页脚);
}
@上中锋{
内容:元素(标题);
}
}
#页眉{
显示:块;
位置:运行(收割台);
}
#页脚{
显示:块;
位置:运行(页脚);
}
.页码:之前{
内容:柜台(第页);
}
.页数:之前{
内容:柜台(页);
}
标题文本

页脚文本

第页,共页

第1页

第2页


CSS可用于将宽度/高度设置为真实尺寸;例如,在print.css文件中:

div.A4 {
  width: 21 cm;
  height: 29.7 cm;
  margin: 0;
}

然而,HTML/CSS实际上并不是为了这个目的;媒体查询确实是处理这一问题的最佳方式。我真的建议你多花点时间让他们工作;如果你打算不止一次使用本网站,那么花时间是值得的。

为什么选择A4尺寸?用于印刷目的? 如果出于印刷目的,你甚至不用担心它。为此目的使用CSS。 如果您的html元素显示为块元素(默认值),并且您没有指定任何宽度或高度,则当您尝试打印时,html文档将根据打印机设置文档调整大小。 如果您需要调整任何css设置以进行打印,请使用

如果与打印无关,请忽略此答案,但请在您的帖子中提供更多详细信息,以便我们提供正确的解决方案

希望它有意义


利奥

我真的认为媒体查询是一条出路。这不正是他们设计的目的吗
@media print
允许您精确定义页面打印时的外观。但是我从来没有试过这样的东西,所以这只是一种“先想到”的东西……有没有例子?我尝试使用“转到示例页…”。。不起作用
#a4{宽度:8.27in;高度:11.69in;}
@user2206329如果您需要打印,我强烈建议不要使用css硬编码纸张格式尺寸,因为用户可以更改纸张格式,甚至方向(横向、纵向)使用媒体查询,而不是非常同意,但由于OP公司明确表示不希望媒体查询,我想我应该提供另一种方式。但是,是的,媒体查询更可取。我从来没有说过我不想要媒体查询。。我说我使用的媒体查询不起作用。如果有人有一些有效的媒体查询。。非常乐意使用them@user2206329:在这种情况下,让我们尝试让这些媒体查询工作!你能解释一下它们到底有什么不起作用吗?这个PDF转换工具能够处理打印和纸张格式吗?它是什么工具?我使用过其他用于MVC和ASP.NEt的PDF转换器,它们通常以良好的OO方式处理这些内容。正如我所怀疑的,您可以在PDF工具级别本身设置所有这些内容(方向、大小、边距等)。检查以下对象,它扩展了ActionResult对象…它包含您正在查找的所有选项