【发布时间】:2023-03-31 08:40:01
【问题描述】:
我已经阅读了关于 postion:absolute questions 的文章并尝试了几乎所有可能的解决方案。包括相对定位 div,将它们包装在相对定位的父级等中,但它没有帮助。
我正在绘制一张表格,然后我将 div 放入其中的指定位置。表格(网格)打印得很好,但是应该打印 div 的地方的颜色略有不同,并且 div 不存在。在chrome中打印正常。有没有人设法找到解决方案?也许我做错了什么?
我的 CSS:
body
{
margin: 0px;
padding: 0px;
font-family: Verdana;
-moz-user-select: none;
}
.grid
{
height: 100%;
border: 1px solid;
border-collapse: collapse;
}
.grid tr
{
text-align:center;
border-bottom: 1px dashed;
cursor: cursor;
}
.grid td.hourCell
{
width: 100px;
vertical-align:top;
font-size: 10px;
font-weight: 500;
height: 60px;
}
.grid th.hourCell
{
width: 100px;
}
.grid th
{
font-weight: bold;
height: 20px;
width: 200px;
font-size: 12px;
font-weight: 500;
font-family: Verdana;
border-right: 1px solid;
background-repeat: repeat;
cursor: cursor;
}
.grid td
{
height: 30px;
width: 200px;
vertical-align: top;
}
.div_which_doesnt_print
{
padding: 0px;
margin: 0px;
width: 200px;
font-size: 10px;
font-family: Verdana;
height: 0px;
position: absolute;
border-style: solid;
border-width: thin;
overflow: hidden;
opacity:0.7;
z-index: 3;
}
我们将不胜感激任何帮助!甚至向我保证解决方案仍然不可用。
编辑: 看起来这是不透明度的问题。设置
@media print
{
.div_which_doesnt_print
{
opacity:1;
}
}
修复了可见性问题。它们有时仍会显示在错误的位置,但这是一个不同的问题。
【问题讨论】:
-
你是在用 div 做表吗?为什么不只使用一张桌子?
-
我认为
height: 0和overflow: hidden的组合很麻烦,为什么要这样?试着解释一下 div 应该是什么样子... -
不,我正在制作表格(“网格”类)。在 taht 表上,我将 div 定位在特定位置。它应该看起来类似于日历(例如谷歌日历)。表格是整个日期/时间网格,而 div 是该日历中的事件。
-
P.S.删除高度、溢出或两者都没有帮助。
-
您能否提供一个包含完整 HTML 的演示页面的链接,以便我们自己测试?