gpt4 book ai didi

css - 使用 HTML 和 CSS 的基本打印页面布局

转载 作者:可可西里 更新时间:2023-11-01 13:35:06 30 4
gpt4 key购买 nike

我正在创建一个要打印的网页。它可以换到 2 页。每个 Angular 落必须有一个黑色的小方 block ,供扫描仪引用。我很确定我只需要为 Angular 落中的 4 个黑色方 block 添加 div,并为主要内容区域添加一个 div。我如何定位 4 个 Angular 方 block ,以便它们中的每一个都位于打印页面的自己的一 Angular ,内容 div 填充中心?中心内容应该在 Angular 方 block 内从左到右,但可以从上到下与它们重叠。

编辑:我上传了一张示例图片,但没有显示。

编辑:这是我目前所拥有的:

http://jsfiddle.net/7DjTf/

<html>
<head>
<title>Printable Form</title>
<link rel="stylesheet" type="text/css" href="styles.css">
</head>
<body>
<div id="UpperLeftScanningIndicator"></div>
<div id="UpperRightScanningIndicator"></div>
<div id="Content">Here is some content.<br /><br /><br /><br />Here is some more.</div>
<div id="LowerLeftScanningIndicator"></div>
<div id="LowerRightScanningIndicator"></div>
</body>
</html>

#Content {
border: solid 1px black;
width:90%;
margin-left:auto;
margin-right:auto;
}

#UpperLeftScanningIndicator {
height: 20px;
width: 20px;
background-color: black;
float: left;
}

#UpperRightScanningIndicator {
height: 20px;
width: 20px;
background-color: black;
float: right;
}

#LowerLeftScanningIndicator {
height: 20px;
width: 20px;
background-color: black;
float: left;
position:absolute;
bottom:20px;
}

#LowerRightScanningIndicator {
height: 20px;
width: 20px;
background-color: black;
float: right;
position:absolute;
bottom:20px;
right:500px;
}

我不确定如何让右下方的方 block 向右移动。 float 会起作用,但使用“绝对”似乎会打破它。注意:您的浏览器窗口需要足够宽才能让这个示例看起来不错。另外,我不确定如何让这些黑色方 block 出现在每一页上,无论是只有一页还是打印了第二页。

Here's a sample of how the page should look

最佳答案

其实很简单。我已经更新了你的 fiddle - http://jsfiddle.net/avrahamcool/7DjTf/1/

您必须正确使用 right 属性。

我建议对所有指标使用相同的技术。所以对所有这些都使用 position: absolute; ,并设置 top/bottom left/相应地对此外,无需重复样式。改用类。像这样:http://jsfiddle.net/avrahamcool/7DjTf/2/

更新: apparently ,@page CSS3 伪元素规则尚未在浏览器中实现,因此我们将不得不回退到 JavaScript。 (如果是,您将拥有一个完美的解决方案,如 this 文章解释)

首先:因为没有打印background-color,所以我改用了img标签。第二:第一个解决方案只有 4 个指示器(开头 2 个,结尾 2 个),而您希望每个打印页有 4 个指示器。

所以这是一个新的解决方案:http://jsfiddle.net/avrahamcool/7DjTf/5/

想法是随着内容的增长添加动态指标。指示器应仅在打印时可见。可视化指标的部分是 .indicator 规则,他位于@print 规则中。

到目前为止,我还没有设法编写“知道”将打印多少页的代码。所以 for 循环运行固定次数(我不知道如何解决这部分)

在循环内:我每次添加 4 个动态指示器(左侧 2 个,右侧 2 个),偏移量应以下一个指示器位于下一页的方式增长。

如果您知道您将拥有多少页,这对您来说是一个完美的解决方案。

注意:从不同的浏览器打印时,页面之间的这种偏移是不同的。我已经在 Chrome 中测试了我的解决方案。 (IE & FF 需要一点调整);

关于css - 使用 HTML 和 CSS 的基本打印页面布局,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18704014/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com