【发布时间】:2013-07-05 18:08:52
【问题描述】:
我有以下假人code:
<!doctype html>
<html>
<head>
<style>
p {font-size: 20px;}
</style>
</head>
<body>
<script type="text/javascript">
window.onload = function () {
var body = document.getElementsByTagName('body')[0],
p = document.createElement('p'),
el;
p.style.height = '20px';
p.innerText = 'Some Test';
for (var i = 0, len=30; i<len; i++) {
el = p.cloneNode(true);
body.appendChild(el);
}
};
</script>
</body>
</html>
渲染了一些
元素和页面预览如下所示:
我需要为第一个和最后一个元素添加边框,如下所示:
是否可以使用 CSS 制作并在 webkit 中工作?
编辑:致所有建议以下 css 的人
p:nth-child(1){
border-top : solid 1px gray;
}
p:last-child{
border-top : solid 1px gray;
}
或
p:first-child {border-top : solid 1px gray;}
p:last-child {border-bottom : solid 1px gray;}
这对我不起作用,因为它适用于所有页面并且看起来像这样:
我需要在 chrome 中工作
【问题讨论】:
-
另一种方法是计算您在一页中显示的
ps 的数量并使用:nth-child()选择器。 -
如何计算?如何获取打印页面的高度?
-
如果不是像 Chrome 这样的 webkit 浏览器,我会提出一个解决方案,在打印的每个页面的顶部和底部添加边框。对此感兴趣?
标签: javascript css printing page-break-inside