html - 当 webkit 在 Chrome 和 Safari 中显示不同时发生了什么?当前浏览器版本的浏览器前缀是否已更改?

标签 html css cross-browser webkit printing-web-page

以下浏览器的较新版本是否弃用了任何旧前缀?

Chrome: -webkit- Internet Explorer:-ms- Safari :-webkit- 火狐浏览器:-moz-

我们正在尝试删除 PDF,但仍希望为用户提供一个选项来打印样式化的网页打印文档。我一直在创建一个 print stylesheet对于程式化的双面销售单,我注意到 Safari 和 webkit 对@media 打印边距的处理方式不同。他们应该因为他们都是 webkit 吗?

我使用的 CSS 在所有浏览器中都有效,但 Safari 除外。

    @page {
  /*  size: A4 portrait; */
    margin:0;
    }
  @page :header { content: none ;} 
  @page :footer { content: none ;} 

  @media print {
  * {
    -webkit-print-color-adjust: exact !important;   /* Chrome, Safari */
    color-adjust: exact !important;                 /*Firefox*/
  }
  body {
    background-color:#FFFFFF; 
    border: solid px #000;
    margin: 2cm .508cm .508cm; /*.508cm;*/
    }

我怀疑这是我设置边距的方式,但我在 Chrome、Explorer 和 Firefox 中运行良好。

Safari 错误: 1.页眉和页脚打印信息文本显示在空白处。 2. 它打印了 4 页,看起来页面大小(字母纵向)超过了分页符。

我所做的是调整尺寸以减少径流。

@page page-one page-two{
    /*margin: 0cm;*/
    width: 21.59cm; /* 8.5in */
    height: 25.94cm; /* = margin-top - 27.94cm; /* 11in */
    margin: 0cm;
    /* margin: 30mm 45mm 30mm 45mm;*/ 
    }
  .page-one {
    page-break-after: always;
    }

我觉得我犯了一个错误。是否有一种合乎逻辑的方法来设置样式化的 CSS 页面,以便它在所有浏览器上打印相同的内容?

最佳答案

AFAIK Chrome 不需要 -webkit- 某些特定日期的 CSS 功能。我不知道这是否是其中之一,但如果问题出在 -webkit- 行,那将是有意义的,因为只有 Safari 仍然需要这些标签。

关于html - 当 webkit 在 Chrome 和 Safari 中显示不同时发生了什么?当前浏览器版本的浏览器前缀是否已更改?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58984991/

相关文章:

html - 在 HTML Javascript 中确定图像旋转

javascript - Safari ipad 作为 parseFloat 的结果返回 int

html - 减少 DOM 元素数量的最佳方法

html - Firefox - 无法刷新缓存的视频文件

HTML/CSS - 自动宽度问题

html - 包装时有没有办法改变元素的顺序?

javascript - 我的第一个 AJAX 请求遇到了麻烦

javascript - Codepen Carousel 无法正常显示或运行?

javascript - 使用 MIME 类型 application/json 可能会导致什么问题?

css - @font-face,字体变体