이 페이지에서

지원되는 HTML 하위 집합

Qt의 텍스트 위젯은 HTML 4 마크업의 하위 집합을 사용하여 지정된 리치 텍스트를 표시할 수 있습니다. QLabel 및 QTextEdit 와 같이 QTextDocument 를 사용하는 위젯은 이러한 방식으로 지정된 리치 텍스트를 표시할 수 있습니다.

텍스트 위젯에서 HTML 마크업 사용하기

위젯은 HTML 마크업을 자동으로 감지하여 그에 따라 리치 텍스트를 표시합니다. 예를 들어, 레이블의 text 속성을 "<b>Hello</b> <i>Qt!</i>" 문자열로 설정하면 레이블에 다음과 같은 텍스트가 표시됩니다: Hello Qt!

텍스트에 HTML 마크업이 사용될 경우, Qt는 HTML 4 사양에 정의된 규칙을 따릅니다. 여기에는 텍스트 레이아웃에 대한 기본 속성(예: 텍스트 흐름 방향(왼쪽에서 오른쪽으로))이 포함되며, 이는 텍스트 블록에 dir 속성을 적용하여 변경할 수 있습니다.

지원되는 태그

다음 표에는 Qt의 리치 텍스트 엔진이 지원하는 HTML 태그가 나열되어 있습니다.

참고: 아래에 나열된 태그에 대해 구현된기능은 전체 HTML 4 사양의 일부입니다. 모든 속성이 지원되는 것은 아니므로, 각 태그에 대한 설명을 참조하십시오.

태그설명설명
a앵커 또는 링크href name 및 title 속성을 지원합니다.
address주소
b굵게
big더 큰 글꼴
blockquote들여쓰기된 단락
body문서 본문bgcolor 속성을 지원하며, 이 속성은 Qt color name 또는 #RRGGBB 색상 지정 형식일 수 있습니다.
br줄 바꿈
center단락 중앙 정렬
cite인라인 인용i 와 동일합니다.
code코드tt 와 동일합니다.
dd정의 데이터
del삭제됨s 와 동일합니다. Qt 6.11부터
dfn정의i 와 동일합니다.
div문서 구분표준 블록 속성을 지원합니다.
dl정의 목록표준 블록 속성을 지원합니다.
dt정의 용어표준 블록 속성을 지원합니다.
em강조i 과 동일합니다.
font글꼴 크기, 글꼴 종류 및/또는 색상다음 속성을 지원합니다: size, face 및 color (Qt color names 또는 #RRGGBB).
h1레벨 1 제목표준 블록 속성을 지원합니다.
h22단계 제목표준 블록 속성을 지원합니다.
h33단계 제목표준 블록 속성을 지원합니다.
h44단계 제목표준 블록 속성을 지원합니다.
h55단계 제목표준 블록 속성을 지원합니다.
h66단계 제목표준 블록 속성을 지원합니다.
head문서 헤더
hr수평선width 속성을 지원하며, 이 속성은 절대값 또는 상대값(%)으로 지정할 수 있습니다.
htmlHTML 문서
i이탤릭체
img이미지src, width, height, style, alt 및 title 속성을 지원합니다.
kbd사용자가 입력한 텍스트
meta메타정보meta 태그를 사용하여 텍스트 인코딩이 지정된 경우, Qt::codecForHtml()이 이를 인식합니다. 마찬가지로, QTextDocument::toHtml()에 인코딩이 지정된 경우, 해당 인코딩은 meta 태그를 사용하여 저장됩니다. 예를 들면 다음과 같습니다: <meta http-equiv="Content-Type" content="text/html; charset=EUC-JP" />
li목록 항목
nobr줄바꿈이 허용되지 않는 텍스트
ol번호 매기기 목록표준 목록 속성을 지원합니다.
p단락기본적으로 왼쪽 정렬됩니다. 표준 블록 속성을 지원합니다.
pre사전 서식 지정된 텍스트
qtQt 리치 텍스트 문서html 의 동의어입니다. 이전 버전의 Qt와의 호환성을 위해 제공됩니다.
s취소선
samp샘플 코드tt 와 동일합니다.
small작은 글꼴
span그룹화된 요소
strong굵게b 와 동일합니다.
sub아래첨자
sup위첨자
table표다음 속성을 지원합니다: border, bgcolor (Qt XML color names 또는 #RRGGBB), cellspacing, cellpadding, width (절대 또는 상대), height.
tbody표 본문아무 작업도 수행하지 않습니다.
td테이블 데이터 셀표준 테이블 셀 속성을 지원합니다.
tfoot표 바닥글아무 작업도 수행하지 않습니다.
th표 머리글 셀표준 테이블 셀 속성을 지원합니다.
thead표 머리글thead 태그가 지정된 경우, 여러 페이지에 걸쳐 있는 표를 인쇄할 때 사용됩니다.
title문서 제목title 태그를 사용하여 지정한 값은 QTextDocument::metaInformation()를 통해 사용할 수 있습니다.
tr테이블 행bgcolor 속성을 지원하며, 이 속성은 Qt color name 또는 #RRGGBB 색상 지정으로 설정할 수 있습니다.
tt타자기 글꼴
u밑줄
ul순서 없는 목록표준 목록 속성을 지원합니다.
var변수i 와 동일합니다.

블록 속성

div, dl, dt, h1, h2, h3, h4, h5, h6, p 태그에서는 다음 속성을 지원합니다:

  • align (left, right, center, justify)
  • dir (ltr, rtl)

목록 속성

ol 및 ul 태그에서는 다음 속성을 지원합니다:

  • type (1, a, A, square, disc, circle)

또한, ` ol ` 태그에서는 다음 속성을 지원합니다:

  • start

테이블 셀 속성

td 및 th 태그에서는 다음 속성을 지원합니다:

  • width (절대, 상대 또는 값 없음)
  • bgcolor (Qt XML color names 또는 #RRGGBB)
  • colspan
  • rowspan
  • align (left, right, center, justify)
  • valign (top, middle, bottom)

CSS 속성

다음 표는 Qt의 리치 텍스트 엔진에서 지원하는 CSS 속성을 나열합니다:

속성값설명
background-color<color>요소의 배경색
background-image<uri>요소의 배경 이미지
color<color>텍스트 전경색
font-family<글꼴 이름>글꼴 패밀리 이름
font-size[ small | medium | large | x-large | xx-large ] | <size>pt | <size>px문서 글꼴에 상대적인 글꼴 크기, 또는 포인트(pt) 또는 픽셀(px) 단위로 지정된 크기
font-style[ normal | italic | oblique ]
font-weight[ normal | bold | 100 | 200 | 300 | 400 | 500 | 600 | 700 | 800 | 900 ]텍스트에 사용되는 글꼴 굵기를 지정하며, 여기서 normal 및 bold 는 각각 QFont 의 해당 굵기로 매핑됩니다. 숫자 값은 QFont 의 해당 굵기 값의 8배입니다.
text-decoration없음 | [ 밑줄 || 위줄 || 취소선 ]추가 텍스트 효과
font[ [ <'font-style'> || <'font-weight'> ]? <'font-size'> <'font-family'> ]글꼴 약식 속성
text-indent<length>px픽셀 단위의 첫 줄 텍스트 들여쓰기
white-spacenormal | pre | nowrap | pre-wrapHTML 내 공백을 어떻게 처리할지 선언합니다.
margin-top<length>px픽셀 단위의 상단 단락 여백
margin-bottom<length>px단락 하단 여백(픽셀 단위)
margin-left<length>px단락의 왼쪽 여백(픽셀 단위)
margin-right<length>px단락의 오른쪽 여백(픽셀 단위)
padding-top<length>px표 셀 상단 패딩(픽셀)
padding-bottom<length>px테이블 셀 하단 패딩(픽셀 단위)
padding-left<length>px테이블 셀의 왼쪽 패딩(픽셀 단위)
padding-right<length>px테이블 셀의 오른쪽 패딩(픽셀 단위)
padding<length>px모든 패딩 속성을 한 번에 설정하는 약식 표기법.
vertical-alignbaseline | sub | super | middle | top | bottom수직 텍스트 정렬. 텍스트 테이블 셀의 수직 정렬에는 middle, top 및 bottom만 적용됩니다.
border-collapsecollapse | separate텍스트 테이블의 테두리 병합 모드입니다. 'collapse'로 설정하면 셀 간격이 적용되지 않습니다.
border-color<color>텍스트 테이블 및 테이블 셀의 테두리 색상.
border-top-color<색상>표 셀의 상단 테두리 색상.
border-bottom-color<color>표 셀의 하단 테두리 색상.
border-left-color<color>테이블 셀의 왼쪽 테두리 색상.
border-right-color<color>테이블 셀의 오른쪽 테두리 색상.
border-stylenone | dotted | dashed | dot-dash | dot-dot-dash | solid | double | groove | ridge | inset | outset텍스트 테이블 및 테이블 셀의 테두리 스타일.
border-top-style<border-style>테이블 셀의 상단 테두리 스타일.
border-bottom-style<border-style>표 셀의 하단 테두리 스타일.
border-left-style<border-style>테이블 셀의 왼쪽 테두리 스타일.
border-right-style<border-style>테이블 셀의 오른쪽 테두리 스타일.
border-width<width>px테이블 또는 셀 테두리의 너비
border-top-width<length>px테이블 셀의 상단 테두리 너비.
border-bottom-width<length>px테이블 셀의 하단 테두리 너비.
border-left-width<length>px테이블 셀의 왼쪽 테두리 너비.
border-right-width<length>px테이블 셀의 오른쪽 테두리 너비.
border-top<width>px <border-style> <border-color>상단 테두리의 너비, 스타일 및 색상을 설정하는 약식 표기법
border-bottom<width>px <border-style> <border-color>하단 테두리의 너비, 스타일 및 색상을 설정하는 약식 표기법
border-left<width>px <border-style> <border-color>왼쪽 테두리의 너비, 스타일 및 색상을 설정하는 약식 표기법
border-right<width>px <border-style> <border-color>오른쪽 테두리의 너비, 스타일 및 색상을 설정하는 약식 표기법
border-top<width>px <border-style> <border-color>상단 테두리의 너비, 스타일 및 색상을 설정하는 약식 표기법
border-bottom<width>px <border-style> <border-color>하단 테두리의 너비, 스타일 및 색상을 설정하는 약식 표기법
border<width>px <border-style> <border-color>네 변의 테두리 너비, 스타일 및 색상을 모두 설정하는 약식 표기법
background[ <'background-color'> || <'background-image'> ]배경 간략 속성
page-break-before[ auto | always ]단락/표 앞에 페이지 나누기를 강제 적용할 수 있게 함
page-break-after[ auto | always ]단락/표 뒤에 페이지 나누기를 강제할 수 있게 합니다
float[ left | right | none ]이미지나 텍스트가 다른 요소 내에서 배치될 위치를 지정합니다. float 속성은 테이블과 이미지에 대해서만 지원된다는 점에 유의하십시오.
text-transform[ 대문자 | 소문자 ]텍스트를 표시하기 전에 적용할 변환을 선택합니다.
font-kerning[ normal | none ]텍스트 문자 간의 커닝을 활성화하거나 비활성화합니다.
font-variantsmall-caps텍스트를 표시하기 전에 스몰캡스 변환을 적용합니다.
word-spacing<width>px각 단어 사이의 대체 간격을 지정합니다.
line-height<숫자>[% | px | pt | cm]줄 높이를 지정합니다. 다음 중 하나를 사용할 수 있습니다:
  • 픽셀, 포인트 또는 센티미터 단위의 고정 줄 높이.
  • 현재 글꼴 크기의 백분율.

참고: 특정 CSS 속성은 ` <p>`과 같이 블록 태그에 적용될 때만 지원됩니다. 예를 들어, ` <span>`에 이러한 속성을 설정해도 아무런 효과가 없습니다. 여백(margin)이 그러한 속성의 한 예입니다. ` QTextDocument`에서 블록과 스팬에 사용할 수 있는 서식 지정 옵션에 대한 개요는 QTextBlockFormat 및 QTextCharFormat 을 참조하십시오.

Qt 전용 CSS 속성

앞서 나열된 표준 CSS 속성 외에도, 다음의 Qt 전용 속성을 사용하여 텍스트 블록의 스타일을 지정할 수 있습니다:

속성값설명
-qt-block-indent<number>지정된 공백 수만큼 텍스트 블록을 들여쓰기합니다.
-qt-list-indent<number>목록 항목을 지정된 흰자수만큼 들여쓰기합니다.
-qt-list-number-prefix<string>HTML 순서 지정 목록에서 목록 번호 앞에 지정된 문자열을 접두사로 추가합니다.
-qt-list-number-suffix<string>HTML 순서 목록에서 목록 번호 뒤에 지정된 문자열을 추가합니다.
-qt-paragraph-typeempty텍스트 블록을 숨깁니다.
-qt-table-typeroot | frameroot frame 는 테두리와 들여쓰기가 있는 새 줄에 텍스트 블록을 렌더링하는 반면, 이 기능은 테두리나 들여쓰기 없이 인라인으로 텍스트 블록을 렌더링합니다.
-qt-user-state<number>텍스트 블록의 사용자 데이터로 추가합니다.

지원되는 CSS 선택자

:first-child, :visited 및 :hover 와 같은 의사 클래스 선택자를 제외한 모든 CSS 2.1 선택자 클래스가 지원됩니다.

© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.