Html 打印时将表格行保持在一起的CSS

Html 打印时将表格行保持在一起的CSS,html,css,Html,Css,我有一个通过循环生成的表。 每个循环创建表的2行 我想要实现的是,当打印此页面时,在每个循环迭代中创建的两行保持在一起,并且不会在页面边界上分割 我尝试在tr和td元素上应用CSS规则{page break-inside:avoid;}(我听说这是非块元素的已知问题)。 除了使用divs重建视图外,还有一种解决方案可以应用于表吗?您需要将这两种样式组合在一起(尽管auto是默认值) 如果这两行应该连接在一起,您可以考虑为这两行中的每一行使用一个表,而不是为所有行都有一个表。 {page-brea

我有一个通过循环生成的表。
每个循环创建表的2行

我想要实现的是,当打印此页面时,在每个循环迭代中创建的两行保持在一起,并且不会在页面边界上分割

我尝试在
tr
td
元素上应用CSS规则
{page break-inside:avoid;}
(我听说这是非块元素的已知问题)。

除了使用divs重建视图外,还有一种解决方案可以应用于表吗?

您需要将这两种样式组合在一起(尽管auto是默认值)

如果这两行应该连接在一起,您可以考虑为这两行中的每一行使用一个表,而不是为所有行都有一个表。

{page-break-inside: avoid;page-break-before:auto}

另外,请检查注释,以查看是否存在

不幸的是,CSS分页符属性在所有浏览器和平台上并不总是可靠的

正如AaA提到的,对于更可靠的fire方法,我发现最好将不希望拆分的行包装到它们自己的表中

像这样:


//标题
//在此元素上创建for循环
一排
第2排

请将生成的代码粘贴到小提琴中。4年后:根据Mozilla开发者网络的说法,
内部分页符
之前的分页符
现在已被和取代。你说得对,它们确实被取代了。但是,如果我正确阅读了您共享的页面。即使Firefox也不完全支持新属性。然而旧的属性仍然被支持,希望当它们用新的属性替换旧的属性时,它们不会破坏很多页面和浏览器。很好的标注。我在Firefox中进行了测试,结果与MDN页面所说的一致:如果不将它们设置为
page
避开page
,则使用
break-in
break-before
将有效。例如,我测试了
break-inside:avoid
(没有
-page
),它在Firefox中工作。