html - 页面/div 的高度应该是多少,以便它只能适合打印的单个页面?

标签 html css

我有一个只有标题的页面:

<body>
    <div class="page">
        <h1>This is the header</h1>
    </div>
</body>

CSS 是:

.page {
    height: 297mm;
    background-color: #0094ff;
    position: relative;
    overflow: hidden;
}

h1 {
    margin: 0;
    padding: 0;
}

当我尝试打印页面时,预览生成 2 页。我只想把它作为一个页面。那么,页面类的高度应该是多少?

我只想将内容打印在 A4 尺寸的页面上。我该怎么做?

最佳答案

重置 htmlbody 元素的 marginpaddingheight

通过将边距和填充归零并将高度设置为 100%,您将实现全页覆盖(不多也不少)。

    html, body {
        margin: 0;
        padding: 0;
        height: 100%;
    }

更新:

如果将容器元素高度设置为 100%,则无需在 CSS 中为特定页面大小指定高度。

如果页面包含的内容多于一张打印页面无法容纳的内容,并且您想将其剪裁,请将 height: 100%overflow: hidden 应用于您的容器元素— .page 在这种情况下。

.page {
    height: 100%;
    background-color: #0094ff;
    overflow: hidden;
}

如果您想对 .page 元素应用填充并保持单页裁剪,您将需要应用 box-sizing: border-box

.page {
    box-sizing: border-box;
    padding: 1em;
    height: 100%;
    background-color: #0094ff;
    overflow: hidden;
}

关于html - 页面/div 的高度应该是多少,以便它只能适合打印的单个页面?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34268373/

相关文章:

javascript - 如何隐藏js、css文件等网站资源?

javascript - 尝试使用 Knockout.js 显示包含集合的变量时出现问题

javascript - 如何加快 jQuery 图片库的速度?

javascript - Javascript 的条件形式

jquery - 如何编写一个 jQuery 函数将 data-id 循环以显示某个元素?

html - 如何为 chrome 中的选择控件选项应用 css 样式

jquery - 如何切换一个div上下滑动

javascript - 如何在我的 Web 应用程序中使用单一模式并避免在每个页面上重复 html?

android - CSS 样式未加载 仅针对 Salesforce 聊天 UI 的移动和 Chrome 浏览器加载纯 HTML

javascript - 导航低于元素 - z-index 不工作