gpt4 book ai didi

html - 将页眉和页脚的 "Different First Page"MS Word 选项应用于动态生成的 Word 文档

转载 作者:行者123 更新时间:2023-11-28 17:47:56 26 4
gpt4 key购买 nike

我有一个包含动态内容的 HTML 页面,该页面使用具有以下布局的 Word 打开:

  • 封面:第 1 页
  • 主要:第 2 页
  • 数据(动态部分):第3页-第n页

我找到了一个使用 Office XML 和 CSS 添加页眉和页脚的模板。我在页脚中加入了 Logo 和页码。我一直在寻找一种方法让页脚显示从第 2 页开始(包括 Logo 和页码)。在 MS Word 2007 中,选择页眉/页脚时会有一个选项; Design Tab --> Options Menu --> Different First Page 不在首页同时显示页眉和页脚。

我一直在尝试通过为包含封面的 div 类分配 display:none 属性来尝试 CSS:

 .coverP #Section1
{ display:none;}

没有成功。我已经修剪了我的页面内容以用作示例以及下面的代码(来源 a link !)

如果有人知道如何做到这一点,我们将不胜感激。

<%@ Language="VBScript" %>
<%
'test
%>
<apex:page sidebar="false" contentType="application/msword" cache="true">
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html xmlns:o='urn:schemas-microsoft-com:office:office' xmlns:w='urn:schemas-microsoft-com:office:word' xmlns='http://www.w3.org/TR/REC-html40'>
<html xmlns:w="urn:schemas-microsoft-com:office:word">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<html xmlns:v="urn:schemas-microsoft-com:vml"
xmlns:o="urn:schemas-microsoft-com:office:office"
xmlns='http://www.w3.org/TR/REC-html40'
xmlns:w="urn:schemas-microsoft-com:office:word">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
<meta http-equiv="X-UA-Compatible" content="IE=8"/>
<meta http-equiv="X-UA-Compatible" content="IE=edge"/>
<title>Report</title>
<xml>
<w:WordDocument>
<w:View>Print</w:View>
<w:Zoom>100</w:Zoom>
<w:DoNotOptimizeForBrowser/>
</w:WordDocument>
</xml>
<style>
v\:* {behavior:url(#default#VML);}
o\:* {behavior:url(#default#VML);}
w\:* {behavior:url(#default#VML);}
.shape{behavior:url(#default#VML);}

</style>
<style>
p.MsoHeader, li.MsoHeader, div.MsoHeader{
margin:0in;
margin-top:.0001pt;
mso-pagination:widow-orphan;
tab-stops:center 3.0in right 6.0in;
}
p.MsoFooter, li.MsoFooter, div.MsoFooter{
margin:0in;
margin-bottom:.0001pt;
mso-pagination:widow-orphan;
tab-stops:center 3.0in right 6.0in;
}
@page Section1{
size:8.5in 11.0in;
margin:0.5in 0.5in 0.5in 0.5in;
mso-header-margin:0.5in;
mso-header:h1;
mso-footer:f1;
mso-footer-margin:0.5in;
mso-paper-source:0;
}
div.Section1{
page:Section1;
}

table#hrdftrtbl{
margin:0in 0in 0in 9in;
}
</style>
</head>

<body>
<!-- Content -->
<div class="Section1">
<!-- Cover Page 1 -->
<div class="coverP">
Cover page text goes here
</div>
<br clear="all" style="page-break-before:always" />

<!-- Page 2 Starts -->
<div>
Page 2 goes here with footer (pg#2 and logo)
</div>

<br clear="all" style="page-break-before:always" />

<!-- Page 3 Starts -->
<div>
<p>Page 3 data part of report goes here </p>
</div>

<!-- End of page 3 -->

<!--Header and Footer Starts-->
<table id='hrdftrtbl' border='1' cellspacing='0' cellpadding='0'>
<tr>
<td>
<!--Header-->
<div style='mso-element:header' id="h1" >
<p class="MsoHeader">

</p>
</div>
</td>

<td>
<!--Footer-->
<div style='mso-element:footer' id="f1">
<p class="MsoFooter">
<table width="100%" border="1" cellspacing="0" cellpadding="0">
<tr>
<td width="30%">

</td>
<td align="center" width="40%">
<!-- Footer Logo-->
<div align="center"><img src="logo.png"> </div>
</td>
<td align="right" width="30%">
Page <span style='mso-field-code: PAGE '></span>
</td>
</tr>
</table>
</p>
</div>
</td>
</tr>
</table>
</div>
</body>
</html>
</apex:page>
<%
Response.Buffer = true
Response.ContentType = "application/vnd.ms-word"
Response.AddHeader "content-disposition","inline;filename=report.doc"
%>

最佳答案

我遇到了同样的问题,终于找到了答案。您必须设置以下内容:

mso-title-page: yes;

然后,当您附加页眉和页脚时,将 mso- 替换为 mso-first- :

mso-first-header:h1;
mso-first-footer:f1;

就是这样 :) 测试和工作

关于html - 将页眉和页脚的 "Different First Page"MS Word 选项应用于动态生成的 Word 文档,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22879941/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com