6

CSS印刷モードでスタイル設定されたヘッダーとフッターを含むhtmlコードを使用して、Word文書を正常に生成しています。ここに私のコードがあります:

<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'>
<head><title>Mon document</title>
<meta charset=\"UTF-8\" />
<!--[if gte mso 9]>
<xml><w:WordDocument><w:View>Print</w:View><w:Zoom>100</w:Zoom><w:DoNotOptimizeForBrowser/></w:WordDocument></xml>
<![endif]-->
<link rel=File-List href=\"mydocument_files/filelist.xml\">
<style><!-- 
@page
{
    size:21cm 29.7cmt;  /* A4 */
    margin:1cm 1cm 1cm 1cm; /* Margins: 2.5 cm on each side */
    mso-page-orientation: portrait;  
    mso-header: url(\"mydocument_files/headerfooter.htm\") h1;
    mso-footer: url(\"mydocument_files/headerfooter.htm\") f1;  
}
@page Section1 { }
div.Section1 { page:Section1; }
p.MsoHeader, p.MsoFooter { border: none; }
--></style>
</head>
<body>
<div class=Section1>
 my content
</div>
</body>
</html>

私がやりたいのは、ヘッダーとフッターを最初のページだけに表示することです。そのためにvisibility:hidden、最初とは異なるページのヘッダーとフッターにこの方法で適用しようとしました:

p.MsoHeader, p.MsoFooter { border: none; visibility: hidden;}
p.MsoHeader :first, p.MsoFooter :first { border: none; visibility: visible;}

しかし、ヘッダーとフッターはまだすべてのページに表示されています...トリックを行う方法はありますか?

4

2 に答える 2

1

単語で生成された HTML を比較すると、重要な mso css タグが 1 つ見落とされています。

mso-first-header: url ...

の代わりにmso-header

それとともに、属性mso-title-pageも に設定する必要がありますyes

この2つを組み合わせることで、目的の効果が得られます!

于 2016-02-12T12:43:39.203 に答える