How to make page border in print CSS for every single page

后端 未结 3 1465
臣服心动
臣服心动 2020-12-11 16:18

I have a long HTML to print. Page is ready for printing but I need to border every single page. I added body { border:2px #666 solid; padding:5px; } in CSS cod

相关标签:
3条回答
  • 2020-12-11 16:34

    Try this it will help you : It will make border on full screen.

        <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
    <html>
    <head>
      <title>Border around content</title>
      <style type="text/css">
        * {
          margin: 0;
          padding: 0;
        }
    
        html, body {
          height: 100%;
          overflow: hidden;
        }
    
        #wrapper {
          position: absolute;
          overflow: auto;
          left: 0;
          right: 0;
          top: 0;
          bottom: 0;
          border: 5px solid red;
        }
      </style>
    </head>
    <body>
      <div id="wrapper">
      </div>
    </body>
    </html>
    
    0 讨论(0)
  • 2020-12-11 16:37

    The best way is putting a fixed div in a page. The important thing is that you should not put any content inside it. It works seamlessly with multi-pages:

    <html>
    <head>
      <style type="text/css">
        #pageborder {
          position:fixed;
          left: 0;
          right: 0;
          top: 0;
          bottom: 0;
          border: 2px solid black;
        }
      </style>
    </head>
    <body>
      <div id="pageborder">
      </div>
    sdf<br/>
    sdf<br/>sdf<br/>sdf<br/>sdf<br/>sdf<br/>sdf<br/>sdf<br/>sdf<br/>sdf<br/>sdf<br/>sdf<br/>
    sdf<br/>sdf<br/>sdf<br/>sdf<br/>sdf<br/>sdf<br/>sdf<br/>sdf<br/>sdf<br/>sdf<br/>sdf<br/>sdf<br/>sdf<br/>sdf<br/>sdf<br/>sdf<br/>sdf<br/>sdf<br/>sdf<br/>sdf<br/>sdf<br/>sdf<br/>
    111<br/>111<br/>111<br/>111<br/>111<br/>111<br/>111<br/>111<br/>111<br/>111<br/>111<br/>111<br/>111<br/>111<br/>111<br/>111<br/>111<br/>111<br/>111<br/>
    111<br/>111<br/>111<br/>111<br/>111<br/>111<br/>111<br/>111<br/>111<br/>111<br/>111<br/>111<br/>111<br/>111<br/>111<br/>111<br/>111<br/>111<br/>111<br/>
    222<br/>222<br/>222<br/>222<br/>222<br/>222<br/>222<br/>222<br/>222<br/>222<br/>222<br/>222<br/>222<br/>222<br/>222<br/>222<br/>222<br/>222<br/>222<br/>222<br/>222<br/>222<br/>
    </body>
    </html>
    
    0 讨论(0)
  • 2020-12-11 16:40

    By default, the border renders outside of the area of the element.

    Try adding this to the print CSS:

    body { box-sizing: border-box; border: 10px solid black; }
    

    Hope this helps!

    Edit: you can also try making the border bigger, and adding temporarily !important to the box-sizing and border CSS. That sometimes helps me find the source of the trouble.

    0 讨论(0)
提交回复
热议问题