본문 바로가기

명사 美 비격식 (무리 중에서) 아주 뛰어난[눈에 띄는] 사람[것]

HTML·CSS

프린트 스타일을 지정하다, @page @media print

우선 최소한의 작업을 위해 bootstrap을 이용하기로 하자.

https://standout.tistory.com/1074

 

개인 bootstrap stylesheet만들기

bootstrap을 통해 본인만의 stylesheet를 소유해보자. Bootstrap에 접속해 cdn 코드를 복붙한다. https://getbootstrap.com/ Bootstrap Powerful, extensible, and feature-packed frontend toolkit. Build and customize with Sass, utilize prebuil

standout.tistory.com

 

우선 전체 코드를 첨부한다.

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css">
    <style>
        .print{display: none;}

        @page {
            size: A4;
            margin: 1cm;
        }

        @media print {
            .container {font-size: 2rem;color: red;}
            .print{display: block; color: blue;}
            .btn{display: none;}
        }
    </style>
</head>

<body class="mt-5">
    <div class="container">
        <h1 class="mb-4">Print Test</h1>
        <p>This is a sample HTML content for testing print styles.</p>
        <button class="btn btn-primary" onclick="window.print()">Print</button>
    </div> 
    <div class="print">
        <h1 class="mb-4">Print Test</h1>
        <p>This is a sample HTML content for testing print styles.</p>
    </div>
    
</body>

</html>

 

 

window.print()시에 @page와 @media print를 적용하여 출력하도록 설정한다.

<button class="btn btn-primary" onclick="window.print()">Print</button>

 

 

출력용 레이아웃을 따로 나눠 출력해도 좋고,

기존 레이아웃에 포함시켜 추가해서 출력해도 좋다.

.print{display: none;}
@media print {
   .print{display: block;}
   .btn{display: none;}
}

 

 

완료.