I am trying to remove header and footer from first page only in a html and the header and footer will be repeated on the next pages while I am trying to print, I found a way to remove the header but I cannot remove the footer using the same method. Here is the HTML and CSS that removes header but not footer. HTML:
<!DOCTYPE html>
<html lang="en">
<head>
<title>Document</title>
<link rel="stylesheet" href="diff.css">
</head>
<body>
<body>
<!--Here the HTML of the first header (displayed on landing page)-->
<header class="header-cover">
<img class="logo-big"
src="https://picsum.photos/150/100" />
<div class="right">
Header 1
</div>
</header>
<!-- Here the HTML of the repeated header (on others pages)-->
<header class="header">
<img class="logo-big"
src="https://picsum.photos/200/100" />
<div class="right">
Repeated Header
</div>
</header>
<table>
<thead>
<tr>
<td>
<!--place holder for the fixed-position header-->
<div class="header-space"> </div>
</td>
</tr>
</thead>
<tbody>
<tr>
<td>
<!--*** CONTENT GOES HERE ***-->
<h1>Title</h1>
<p class="content">
<div class="page">
Content Goes here
</div>
</p>
</td>
</tr>
</tbody>
<tfoot>
<tr>
<td>
<!--place holder for the fixed-position footer-->
<div class="footer-space"> </div>
</td>
</tr>
</tfoot>
</table>
<!-- Repeated Footer -->
<footer class="footer">
<p>
Text footer
</p>
</footer>
<footer class="footer-cover">
<p>
different footer
</p>
</footer>
<button onclick="window.print()">Test Here</button>
</body>
</html>
CSS:
@media print {
.page{
page-break-after: always;
}
.header, .footer {
position: fixed;
}
.header, .header-cover {
display:flex;
}
.header {
top: 100%;
}
.header, .header-space {
height: 5rem;
}
.footer, .footer-space {
height: 4rem;
}
.footer, .footer-cover {
display: flex;
}
.footer {
bottom: 0;
}
}
I am trying really hard to fix it but I am not able to do it. Thank you in advance
I tried replicating the same what I did for Header but was not successful, I tried using Jinja2 template to stack them on top of each other, still didn't work. Have been trying to troubleshoot using CSS but so far no success.
What you have seems to work for me. One thing to note though is that you had
which is actually invalid because you cannot have a block level element inside of a
<p>tag or else it will cause the paragraph to close before you intend it to. So I changed it to the following:So here's your code with that minor change made: