
알고있으면 좋은 CSS3 Tip✨
@media print
- 인쇄 시 적합한 출력을 위해, 인쇄 페이지용 미디어 쿼리를 사용하여 출력 시 변경되는 섹션을 명시해야한다.
(1) 배경출력을 위한 설정
@media print {
* {
-webkit-print-color-adjust: exact;
print-color-adjust: exact;
}
}
- 인쇄 시, background속성(background-image, background-color)를 강제로 보이게 지정한다.
(2) break-before
#page1 {
break-before: page;
}
- break-before 속성은 CSS에서 페이지, 열 또는 영역 분할을 제어하는 데 사용된다.
- 쉽게 말해, 항상 요소 앞에서 새 페이지를 시작하고 싶다면 해당 속성의 break-before:page;를 사용하면 된다.
- break-before 속성은 다음과 같은 값을 설정 할 수 있다.
- auto : 자동 분할(기본값)
- avoid : 가능한 분할 X
- always : 항상 분할
- left : 페이지를 눕혀서 출력할 때, 요소 앞에 항상 왼쪽 배치
- right : 페이지를 눕혀서 출력할 때, 요소 앞에 항상 오른쪽 배치
- page, column, region : 새 페이지, 새 열, 새 영역 강제로 시작
(3) break-after
#page1 {
break-after: page;
}
- break-after 속성은 CSS에서 페이지, 열 또는 영역 분할을 제어하는 데 사용된다.
- 쉽게 말해, 항상 요소 뒤에서 새 페이지를 시작하고 싶다면 해당 속성의 break-after:page;를 사용하면 된다.
- break-after 속성은 다음과 같은 값을 설정 할 수 있다.
- auto : 자동 분할(기본값)
- avoid : 가능한 분할 X
- always : 항상 분할
- left : 페이지를 눕혀서 출력할 때, 요소 앞에 항상 왼쪽 배치
- right : 페이지를 눕혀서 출력할 때, 요소 앞에 항상 오른쪽 배치
- page, column, region : 새 페이지, 새 열, 새 영역 강제로 시작
(4) break-inside
#page1 {
break-inside: avoid;
}
- break-inside 속성은 CSS에서 페이지, 열 또는 영역 분할을 제어하는 데 사용된다.
- 쉽게 말해, 페이지나 열, 영역 경계에서 나눠지지 않도록 설정 할 수 있고, 열 분할을 피하고 싶다면 해당 속성의 break-inside:avoid;를 사용하면 된다.
- break-inside 속성은 다음과 같은 값을 설정 할 수 있다.
- auto : 자동 분할(기본값)
- avoid : 가능한 분할 X
- avoid-page : 페이지 분할 피하기
- avoid-column : 열 분할 피하기
- avoid-region : 영역 분할 피하기
(5) portrait & landscape
#page1 {
@page { size: A4 landscape; margin:0;}
@page { size: A4 portrait; margin:0; }
}
- portrait 속성은 페이지의 콘텐츠를 세로 모드로 표시한다.
- landscape 속성은 페이지의 콘텐츠를 가로 모드로 표시한다.
(6) 같이 사용하기
@media print {
/* 페이지의 크기 설정 */
@page { size: A4 portrait; margin:0;}
/* 배경 강제로 설정 */
* { -webkit-print-color-adjust:exact; print-color-adjust:exact; }
/* 인쇄 페이지 높이값 및 상황에 따라 옵션들 적용 */
section#page { height:297mm; page-break-inside: avoid; page-break-after: auto;}
}
- 인쇄되는 종이의 설정을 CSS로 설정한다고 생각하면 편하고 인쇄 전 미리보기 창에서 적용된 CSS를 화면으로 확인 할 수 있다.
'Study > CSS3' 카테고리의 다른 글
| [CSS3] position & transform 통해서 가운데 정렬 하는 방법 (0) | 2024.11.28 |
|---|---|
| [CSS3] pointer-events (0) | 2024.11.27 |
| [CSS3] white-space (0) | 2024.11.27 |
| [CSS3] 크로스브라우징(Cross Browsing) (0) | 2024.11.26 |
| [CSS3] not & has (0) | 2024.11.26 |