最近的在写报告的需求,因为报告内部需要加入echarts,并且用于真实的数据导出,还要动态掌控。所以需要前端将给定的word模版转为网页。这里分享其中的一个小小技巧。
那么问题来了,我们如何把控页面的样式,并可以轻松做到控制不同内容的分页呢。快点告别margin...吧!
那么CSS来了!
顾名思义,此CSS属性用于在打印文档时在元素之前添加分页符。在打印文档期间,它将在指定元素之前插入一个分页符。我们不能在绝对定位的元素上使用此CSS属性,也不能在不会生成框的空 此CSS属性表示是否允许分页在元素框之前。 CSS属性 page-break-after 、 page-break-inside 和 page-break-before ,可帮助我们定义行为。 page-break-before: auto | always | left | right | avoid | initial | inherit; 使用方式 我们可以将不同的页面也抽离出组件,然后用一个 这样子,在启动打印功能时,即可实现分页需求。
值
说明
auto
这是默认值,必要时在元素之前插入分页符。
always
此值始终强制在指定元素之前分页。
avoid
用于避免在元素之前出现分页。
left
此值将在元素之前强制分页一次或两次,以便将下一页描述为左侧页面。
right
right 值会在元素之前强制分页一次或两次,以便将下一页描述为右侧页面。
initial
它将属性设置为其默认值。
inherit
如果指定了此值,则对应的元素将使用其父元素 page-break-before 属性的计算值。
.page{
page-break-before: always;
page-break-after: always;
page-break-inside: avoid;
}