gpt4 book ai didi

html - 使用适用于所有主要浏览器的 css 在打印模式下添加文本水印?

转载 作者:搜寻专家 更新时间:2023-10-31 23:00:42 25 4
gpt4 key购买 nike

我正在尝试添加一个简单的文本水印,我希望它出现在每个页面上,它将被打印在 Firefox、IE 和 Chrome 上看起来合理。我浏览了所有我能找到的相关主题并应用了建议的答案,但无济于事。要么它在每个页面上都显示正常,但不显示在第一页(Firefox)上。或者它只出现在第一页(Chrome)。或者根本不显示。

我想知道,是否有一种标准的方法来制作适用于我可能不知何故错过的所有浏览器的 css 水印?

对于那些好奇我的 html/css 目前是什么样子的人:

<div class="watermark">This is a watermark!</div>

@media print {
.watermark {
display: inline;
position: fixed !important;
opacity: 0.25;
font-size: 3em;
width: 100%;
text-align: center;
z-index: 1000;
top:700x;
right:5px;
}
}

非常感谢任何帮助!

编辑:这不仅仅是为图像加水印,否则我应该使用图像编辑器。这用于文档内容的水印页面(各种大小的文本部分)。

最佳答案

真正的问题是您需要在每个 打印页面的底部添加一个.watermark,但CSS 没有这些打印页面的概念。

您可能做的最好的事情就是使用 page-break-after CSS 属性强制在某些点分页,然后您可以将水印放在该点之前。

类似(未经测试):

@media all {
.watermark {
display: none;
background-image: url(...);
float: right;
}

.pagebreak {
display: none;
}
}

@media print {
.watermark {
display: block;
}

.pagebreak {
display: block;
page-break-after: always;
}
}

<body>
some content for page 1...

<div class="watermark"></div>
<div class="pagebreak"></div>

some content for page 2...

<div class="watermark"></div>
<div class="pagebreak"></div>
</body>

我真的认为这两个类可能只是同一个元素,但这在代码中似乎更容易理解。

这里的缺点当然是您需要手动指定每个分页符发生的位置,而且实际上,如果有人将您的网页打印在 4"x6"记事卡上,它与标准尺寸的纸张截然不同。但是,这仍然是朝着正确方向迈出的一步。

关于html - 使用适用于所有主要浏览器的 css 在打印模式下添加文本水印?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31165782/

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