每个打印页面上的最后一个元素的样式不同
Posted
技术标签:
【中文标题】每个打印页面上的最后一个元素的样式不同【英文标题】:Style last element on every printed page differently 【发布时间】:2018-03-15 22:16:26 【问题描述】:我有一个元素列表(任意长度)。但是,当用户打印它时,我想更改每个页面上最后一个元素的样式。
到目前为止,我尝试使用 @page .el:last-child...
但这没有任何作用。并且简单地使用el:last-child
只会将样式应用于最后一页上的最后一个孩子。
感谢任何帮助。
我有以下 html:
.el
width: 500px;
height:250px;
background:#ccc;
margin:10px;
@page
.el:last-child
font-weight:bold;
@media print
.el display:block;
<div>
<div class="el"> element </div>
<div class="el"> element </div>
<div class="el"> element </div>
<div class="el"> element </div>
<div class="el"> element </div>
<div class="el"> element </div>
<div class="el"> element </div>
</div>
【问题讨论】:
此 AFAIK 没有选择器。 “页面”是人工构造而不是 DOM 元素,因此不能被 CSS 使用。 【参考方案1】:根据MDN @page,
您不能使用 @page 更改所有 CSS 属性。你只能改变 文档的边距、孤儿、寡妇和分页符。 更改任何其他 CSS 属性的尝试将被忽略。
【讨论】:
【参考方案2】:将一个类添加到您的容器 div 并使用 last-child
。
Fiddle
【讨论】:
这仅适用于我在帖子中提到的最后一页上的最后一个孩子以上是关于每个打印页面上的最后一个元素的样式不同的主要内容,如果未能解决你的问题,请参考以下文章