Firefox 和 IE 中 -webkit-print-color-adjust 的替代方法是啥

Posted

技术标签:

【中文标题】Firefox 和 IE 中 -webkit-print-color-adjust 的替代方法是啥【英文标题】:What is the alternate for -webkit-print-color-adjust in firefox and IEFirefox 和 IE 中 -webkit-print-color-adjust 的替代方法是什么 【发布时间】:2016-06-08 02:26:56 【问题描述】:

我在打印背景颜色时遇到了一些问题。

print-color-adjust 解决了 chrome 中的背景颜色问题。

body
-webkit-print-color-adjust: exact;

firefox 和 IE 中的备用 CSS 是什么。

【问题讨论】:

没有...这是一个非标准的 CSS 扩展,可用于在基于 WebKit 引擎的浏览器中强制打印背景颜色和图像。跨度> 有没有办法强制某些类在媒体打印中显示背景颜色\ 【参考方案1】:

如前所述,-webkit-print-color-adjust: exact 专用于 WebKit 浏览器,包括 Google 的 Chrome 和 Apple 的 Safari;因此,代码应该可以在上述浏览器中充分运行,结果可能略有不同(取决于您的网站/应用程序样式)。

已经有人提议将此 sn-p 标准化,使其不仅适用于浏览器,而且适用于不同的设备。代码简化为:color-adjust。与webkit-print-color-adjust 属性类似,建议的属性economy | exact 的可能值相同。

如果您想将该属性用于打印目的,只需在 @media print 查询内的选择器中使用即可。

例如:

@media print 
  body  color-adjust: exact; 

我不能保证草稿属性在浏览器上的广泛采用,但它目前正在使用最新版本的 FireFox(在撰写本文时,版本 50.0)。

[Source]

【讨论】:

根据 caniuse 的说法,它也应该适用于 Safari 浏览器。如果只有微软会修复 Edge,我们会很高兴......【参考方案2】:

Chrome 和 Firefox 有备用 CSS 打印背景颜色。

td  
 -webkit-print-color-adjust: exact;//:For Chrome
  color-adjust: exact;//:For Firefox

【讨论】:

这是正确答案。在尝试解决这个问题后,color-adjust: exact; 适用于 firefox 而 webkit 则不适用。【参考方案3】:

这开始在带有“color-adjust”属性的 Firefox(至少 48.0.2 版)中起作用。

td  
  background: #000 !important;
  -webkit-print-color-adjust: exact;
  color-adjust: exact;

【讨论】:

以上是关于Firefox 和 IE 中 -webkit-print-color-adjust 的替代方法是啥的主要内容,如果未能解决你的问题,请参考以下文章

Firefox和IE中的ul样式[重复]

数据列表箭头未进入 ie 和 firefox

量角器在 Firefox 和 IE 浏览器中失败

phpmyadmin 的 IE 10 和 Firefox 问题

页面在 Firefox 和 IE 中不起作用 [关闭]

IE 和 Firefox 中不显示文本输入占位符