지원되는 HTML 하위 집합

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

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

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

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

지원되는 태그

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

참고: 아래 나열된 태그에 구현된 기능은 전체 HTML 4 사양의 하위 집합입니다. 모든 속성이 지원되는 것은 아니므로 각 태그에 대한 설명을 참조하세요.

태그설명코멘트
a앵커 또는 링크hrefname 속성을 지원합니다.
address주소
b굵게
big더 큰 글꼴
blockquote들여쓰기 단락
body문서 본문Qt color name 또는 #RRGGBB 색상 사양이 될 수 있는 bgcolor 속성을 지원합니다.
br줄 바꿈
center중앙 단락
cite인라인 인용i 과 동일합니다.
code코드tt 과 동일.
dd정의 데이터
dfn정의i 와 동일합니다.
div문서 구분표준 블록 속성을 지원합니다.
dl정의 목록표준 블록 속성을 지원합니다.
dt정의 용어표준 블록 속성을 지원합니다.
em강조i 과 동일합니다.
font글꼴 크기, 패밀리 및/또는 색상다음 속성을 지원합니다: size, face, 및 color (Qt color names 또는 #RRGGBB).
h1레벨 1 제목표준 블록 속성을 지원합니다.
h2레벨 2 제목표준 블록 속성을 지원합니다.
h3레벨 3 제목표준 블록 속성을 지원합니다.
h4레벨 4 머리글표준 블록 속성을 지원합니다.
h5레벨 5 머리글표준 블록 속성을 지원합니다.
h6레벨 6 머리글표준 블록 속성을 지원합니다.
head문서 헤더
hr가로줄절대 또는 상대(%) 값으로 지정할 수 있는 width 속성을 지원합니다.
htmlHTML 문서
i이탤릭체
img이미지src, source (Qt 3 호환성용), width, height 속성을 지원합니다.
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그룹화된 요소
strongStrongb 과 동일합니다.
sub아래 첨자
sup위 첨자
table다음 속성을 지원합니다: border, bgcolor (Qt color names 또는 #RRGGBB), cellspacing, cellpadding, width (절대 또는 상대) 및 height.
tbody표 본문아무것도 하지 않습니다.
td표 데이터 셀표준 표 셀 속성을 지원합니다.
tfoot표 바닥글아무 작업도 수행하지 않습니다.
th표 머리글 셀표준 표 셀 속성을 지원합니다.
thead표 머리글thead 태그가 지정된 경우 여러 페이지에 걸쳐 있는 표를 인쇄할 때 사용됩니다.
title문서 제목title 태그를 사용하여 지정한 값은 QTextDocument::metaInformation()을 통해 사용할 수 있습니다.
tr표 행Qt color name 또는 #RRGGBB 색상 사양이 될 수 있는 bgcolor 속성을 지원합니다.
tt입력 글꼴
u밑줄
ul정렬되지 않은 목록표준 목록 속성을 지원합니다.
var변수i 과 동일합니다.

블록 속성

div, dl, dt, h1, h2, h3, h4, h5, h6, p 태그에서 지원되는 속성은 다음과 같습니다:

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

속성 목록

다음 속성은 olul 태그에서 지원됩니다:

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

표 셀 속성

tdth 태그에서 지원되는 속성은 다음과 같습니다:

  • width (절대, 상대 또는 값 없음)
  • bgcolor (Qt 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[작은 | 중간 | 큰 | x-large | xx-large ] | <크기>pt | <크기>px문서 글꼴을 기준으로 하거나 포인트 또는 픽셀로 지정된 글꼴 크기
font-style[ 일반 | 이탤릭 | 경사 ]입니다.
font-weight[ 일반 | 굵게 | 100 | 200 | 300 | 400 | 500 | 600 | 700 | 800 | 900 ]로 지정합니다.텍스트에 사용되는 글꼴 가중치를 지정합니다( normalbold 은 해당 QFont 가중치에 매핑됨). 숫자 값은 동등한 QFont 가중치 값의 8배입니다.
text-decoration없음 | [ 밑줄 || 밑줄 || 줄 바꿈 ]입니다.추가 텍스트 효과
font[ [ <'글꼴 스타일'> || <'글꼴 무게'> ]? <'글꼴 크기'> <'글꼴 패밀리'> ]?글꼴 속기 속성
text-indent<길이>px픽셀 단위의 첫 줄 텍스트 들여쓰기
white-space일반 | 미리 | 지금 줄 바꿈 | 미리 줄 바꿈HTML에서 공백을 처리하는 방법을 선언합니다.
margin-top<길이>px상단 단락 여백(픽셀)
margin-bottom<길이>px아래쪽 단락 여백(픽셀)
margin-left<길이>px왼쪽 단락 여백(픽셀)
margin-right<길이>px오른쪽 단락 여백(픽셀)
padding-top<길이>px상단 표 셀 패딩(픽셀)
padding-bottom<길이>px아래쪽 표 셀 패딩(픽셀)
padding-left<길이>px왼쪽 표 셀 패딩(픽셀)
padding-right<길이>px오른쪽 표 셀 패딩(픽셀)
padding<길이>px모든 패딩 속성을 한 번에 설정하는 단축키입니다.
vertical-align기준선 | 아래쪽 | 위쪽 | 가운데 | 위쪽 | 아래쪽세로 텍스트 정렬. 텍스트 표 셀의 세로 맞춤의 경우 가운데, 위쪽, 아래쪽만 적용됩니다.
border-collapse접기 | 분리텍스트 표의 테두리 축소 모드입니다. 축소로 설정하면 셀 간격이 적용되지 않습니다.
border-color<색상>텍스트 표 및 표 셀의 테두리 색상입니다.
border-top-color<색상>표 셀의 상단 테두리 색상입니다.
border-bottom-color<color>표 셀의 아래쪽 테두리 색상입니다.
border-left-color<color>표 셀의 왼쪽 테두리 색상입니다.
border-right-color<color>표 셀의 오른쪽 테두리 색상입니다.
border-style없음 | 점선 | 점-점-대시 | 점-점-대시 | 단색 | 이중 | 홈 | 융기 | 삽입 | 시작텍스트 표 및 표 셀의 테두리 스타일입니다.
border-top-style<테두리 스타일>표 셀의 상단 테두리 스타일입니다.
border-bottom-style<border-style>표 셀의 아래쪽 테두리 스타일입니다.
border-left-style<border-style>표 셀의 왼쪽 테두리 스타일입니다.
border-right-style<border-style>표 셀의 오른쪽 테두리 스타일입니다.
border-width<폭>px표 또는 셀 테두리의 너비
border-top-width<길이>px표 셀의 상단 테두리 너비입니다.
border-bottom-width<길이>px표 셀의 아래쪽 테두리 너비입니다.
border-left-width<길이>px표 셀의 왼쪽 테두리 너비입니다.
border-right-width<길이>px표 셀의 오른쪽 테두리 너비입니다.
border-top<폭>px <테두리 스타일> <테두리 색상>상단 테두리 너비, 스타일 및 색상을 설정하기 위한 약어입니다.
border-bottom<폭>px <테두리 스타일> <테두리 색상>아래쪽 테두리 너비, 스타일 및 색상을 설정하기 위한 단축키
border-left<폭>px <테두리 스타일> <테두리 색상>왼쪽 테두리 너비, 스타일 및 색상을 설정하기 위한 단축키
border-right<폭>px <테두리 스타일> <테두리 색상>오른쪽 테두리 너비, 스타일 및 색상을 설정하기 위한 단축키
border-top<폭>px <테두리 스타일> <테두리 색상>상단 테두리 너비, 스타일 및 색상을 설정하기 위한 단축키
border-bottom<폭>px <테두리 스타일> <테두리 색상>아래쪽 테두리 너비, 스타일 및 색상을 설정하기 위한 단축키
border<폭>px <테두리 스타일> <테두리 색상>네 가지 테두리의 너비, 스타일 및 색상을 모두 설정하기 위한 단축키
background[ <'배경색'> || <'배경-이미지'> ]입니다.배경 속기 속성
page-break-before[자동 | 항상 ]단락/표 앞에 페이지 나누기 적용 가능
page-break-after[자동 | 항상 ]단락 / 표 뒤에 페이지 나누기를 적용 할 수 있도록합니다.
float[ 왼쪽 | 오른쪽 | 없음 ]이미지 또는 텍스트가 다른 요소에 배치될 위치를 지정합니다. float 속성은 표와 이미지에만 지원됩니다.
text-transform[ 대문자 | 소문자 ]를 선택합니다.텍스트를 표시하기 전에 텍스트에 수행할 변환을 선택합니다.
font-kerning[ 일반 | 없음 ]입니다.텍스트 문자 사이의 커닝을 사용 또는 사용하지 않도록 설정합니다.
font-variant소문자텍스트를 표시하기 전에 텍스트에 소문자 변환을 수행합니다.
word-spacing<폭>px각 단어 사이의 대체 간격을 지정합니다.
line-height<숫자>[% | px | pt | cm]줄의 높이를 지정합니다. 다음 중 하나가 될 수 있습니다:
  • 픽셀, 포인트 또는 센티미터 단위의 고정 선 높이.
  • 현재 글꼴 크기의 백분율입니다.

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

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 선택기 클래스가 지원됩니다.

© 2025 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.