前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【云端架构】前端 css print 用法

【云端架构】前端 css print 用法

作者头像
墨色明月
发布2018-05-13 16:30:41
2.9K0
发布2018-05-13 16:30:41
举报
文章被收录于专栏:云端架构云端架构

说到网页打印,首先想到的便是@media查询(即网页css),通过使用媒体类型print即可解决实际应用的大多数问题,比如实现只打印网页的某部分内容,调整字体大小、修改布局等使打印出来的纸质文件更简洁明了。代码如下:

代码语言:javascript
复制
@media print{ /*隐藏不打印的元素*/ .no-print{ display:none; } /*其他打印样式*/ }

但是,就打印表单来说,仅解决上述问题是不够的,我们无法忍受表单存在打印分页时内容被截断、分页显示顶部没有留白等问题。那么如何解决这些问题呢?这就要使用到css打印样式了,即@page,用来指定页面盒子的各个方面。

eg1:尺寸、页边距设置

代码语言:javascript
复制
@page{ size: 5.5in 8.5in;  margin: 30px; }

注:这里除了可以用长度值声明尺寸,还可使用纸质尺寸关键字”A4″或“legal”;亦可通过关键字指定页面方向“portrait”、“landscape”,默认为portrait垂直方向。当margin设置不起作用时检查打印机是否边距是否设置了默认以外的值。

eg2:设置第一页、奇数页或偶数页样式(以首页为例)

代码语言:javascript
复制
@page :first { /*首页设置*/ }

注:left、right分别为偶数页、奇数页选择器。

eg3:避免表格断开

代码语言:javascript
复制
@page{ table{ page-break-after: avoid; } }

注:page-break-after对tr、td不起作用所以当以整体出现的时候要在同一个table中。

eg4:避免某行文字断裂

代码语言:javascript
复制
@page{ table{ page-break-inside: avoid; } }

本文系外文翻译,前往查看

如有侵权,请联系?cloudcommunity@tencent.com?删除。

本文系外文翻译前往查看

如有侵权,请联系?cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
http://www.vxiaotou.com