【问题标题】:Vertical-align:top not working on table when printing垂直对齐:打印时顶部不在桌面上工作
【发布时间】:2016-02-24 17:31:00
【问题描述】:

这是我在这里的第一篇文章,所以如果您需要更多信息,请告诉我。

我有一个在浏览器中运行良好的表格,但是当我打印时,文本居中对齐,忽略了我的“垂直对齐:顶部”设置。

当我检查 chrome 中的打印样式时,它似乎忽略了我设置的垂直对齐。它写在那里的唯一地方是“用户代理样式表”,它被设置为“继承”。 “用户代理样式表”来自我对浏览器设置的理解?

我在常规样式表和打印样式表中都设置了垂直对齐,但没有任何效果。它开始变得有点烦人。我也试过在桌子上设置 valign,结果是一样的。

该表的构建类似于普通表,如下所示:

<table valign="top">
    <tbody>
        <tr>
            <th><th>
            <td></td>
            <td></td>
        </tr>
    <tbody>
</table>

【问题讨论】:

    标签: html css


    【解决方案1】:

    我认为您的问题出在您的媒体查询声明中。但是,如果您使用 html 表格,为什么不使用属性而不是 CSS?

    您声明&lt;td&gt;&lt;th&gt; 元素将是display: table-cell,这是不必要的,因为这是默认样式。我认为你应该使用这个:

     <table>
       <tr>
         <td valign="middle">
         </td>
       </tr>
     </table>
    

    【讨论】:

    • 谢谢。将其设置在表中会给我相同的结果。另外,现在打印时它在中间,但我需要它在顶部。打印 css 的其余部分正在工作,所以我认为媒体查询不是问题。
    • 如果你写valign="top"结果是一样的吗?也许您需要检查是否有重置或类似的东西。您是否在您的 CSS 中尝试使用 !important?使用您共享的代码无法了解更多信息。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-10-18
    • 2021-12-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-10-29
    相关资源
    最近更新 更多