Html 灰色字体彩色印刷
有没有办法确保我的灰色字体颜色不会变黑 Firefox和Chrome这样做似乎是为了防止黑色背景上的白色文本变成白色。我没有背景色(白色除外),因此这种浏览器级别的转换没有用处,它只会帮助防止无故出现灰色Html 灰色字体彩色印刷,html,printing,fonts,colors,cross-browser,Html,Printing,Fonts,Colors,Cross Browser,有没有办法确保我的灰色字体颜色不会变黑 Firefox和Chrome这样做似乎是为了防止黑色背景上的白色文本变成白色。我没有背景色(白色除外),因此这种浏览器级别的转换没有用处,它只会帮助防止无故出现灰色 有没有办法关掉这个?或者我应该坚持使用不透明、浏览器检测和灰色着色等技术吗?如果添加颜色,一些浏览器会更尊重您的灰色:将#777替换为#778。小心不透明。有时,即使打印预览会显示很好的结果,它实际上也只能在选定的打印机上工作。如果您的文本为灰色,则固件不吉利的打印机将无法打印您的文本。我发现
有没有办法关掉这个?或者我应该坚持使用不透明、浏览器检测和灰色着色等技术吗?如果添加颜色,一些浏览器会更尊重您的灰色:将
#777
替换为#778
。小心不透明。有时,即使打印预览会显示很好的结果,它实际上也只能在选定的打印机上工作。如果您的文本为灰色,则固件不吉利的打印机将无法打印您的文本。我发现必须:
!css规则的重要信息
和…我无法让它在Chrome中工作。解决方案:
@media print {
h1 {
color: rgba(0, 0, 0, 0);
text-shadow: 0 0 0 #ccc;
}
@media print and (-webkit-min-device-pixel-ratio:0) {
h1 {
color: #ccc;
-webkit-print-color-adjust: exact;
}
}
}
我发现,文本颜色不是由“通用”样式表继承的,但必须在打印css文件中再次强制 换句话说,即使在常规css文件(带有
media='all'
属性的文件)中设置了文本颜色,在打印时也会被忽略,至少在Firefox和Chrome中是这样
我发现在打印css文件(带有
media='print'
属性的文件)中再次写入(冗余但…必要)文本颜色时,将考虑现在的颜色。您只需要在svg中输出灰色字体。浏览器不会在svg中更改颜色。下面是一个例子:
<svg height="40" width="200">
<text font-size="28px" y="25" x="30" fill="#ffffff" >
Some text
</text>
</svg>
一些文本
上面的内容对我来说都不管用,所以我最终找到了答案
始终为直接元素提供颜色。假设你的html是
<div class='div'><br/>
< h1>Text< /h1><br/>
</div>
这是我的案子。在这种情况下,无论你做什么,颜色都不会显示出来
你必须这样做
.div h1 {
color: #ccc;
}
@media print {
.div h1 {
-webkit-print-color-adjust: exact;
}
}
希望这对你有帮助
如果您找到更好的解决方案,请回复,因为这是我在2小时后可以找到的解决方案,它对我有效。此解决方案适用于所有浏览器:
.text{
颜色:透明;
文本阴影:2px0#红色;
}
重视颜色:
.bgcol{
background-color:skyblue !important;
}
.subject_content,h2,p{
color:rgba(255, 255, 255) !important;
margin: 25px auto;
}
<body class="bgcol">
<div class="subject_content">
<h2 class='text-center'>fhddfhnt area</h2>
<p>sdgdfghdfhdfh.</p>
</div>
.bgcol{
背景色:天蓝色!重要;
}
.主题内容,h2,p{
颜色:rgba(255,255,255)!重要;
保证金:25像素自动;
}
FHDFHNT区域
sdgdfghdfhdfh
我以为那是那页上唯一的div。进行以下更改,它应该可以正常工作
<style>
@media print {
div.red {
color: #cccccc !important;
}
</style>
@媒体印刷品{
红色分区{
颜色:#中交!重要;
}
更改div标签的html,如下图所示您是否使用打印样式表?我一直认为黑色是强制的,因为空白墨水打印速度更快,而且比打印灰色便宜,因为这需要使用彩色墨水。不透明听起来是一种很好的技术-如果所有其他方法都失败,我会求助于它或PDF。@George fair-but别忘了,你可以使用带有“打印”按钮的
iframe
内嵌PDF。(以防万一你需要回到这里)软件将灰色文本转换为黑色的原因是黑色激光打印机需要光栅灰色。光栅图案结果(尤其是在低分辨率打印机中)当打印全黑时,不需要光栅和原始字形矢量路径。当你创建打印样式表时,考虑场景和打印机功能是明智的。喷墨打印机抖动文本。混合颜色。他们有更多的“蜱”来获得正确的外观。e、 我所处的情况是,这种不透明度回退非常适合我。我只想在颜色不变的情况下显示某些内容,所以我更改了可以隐藏或用不透明度变灰的内容。:)对不起,不太准确。即使没有执行选项1,选项2也可以工作。@GeorgeBailey,这不是我在OSX上的FireFox v24中看到的本页内容:如果我删除了“!important”规则,则奖杯将全部打印为黑色(奖杯仅为fontawesome中的字符)。在我的Firefox中,如果您转到文件->页面设置,并选中“打印背景颜色和图像”框,然后您的奖杯打印为灰色。我在Windows 7上使用Firefox 24。它很有效!您是个天才!在IE11、Chrome和Firefox中测试过。请确保您不要尝试使用“透明”而不是“rgba(0,0,0,0)”因为它不会与IE一起工作。我现在在Chrome中工作,但在FF中不工作。我想知道为什么我不能让它工作。一个示例页面会很有趣。
<style>
@media print {
div.red {
color: #cccccc !important;
}
</style>