Qt 富文本处理(07):支持的 HTML 子集【来自官档的翻译,更加的水,了解】

支持的 HTML 子集

官方文档 Rich Text Processing - Supported HTML Subset

  Qt 的文本小部件能够显示使用 HTML 4 标记子集指定的富文本。使用QTextDocument 的小部件(如QLabelQTextEdit)能够显示用这种方式指定的富文本。

在文本小部件中使用 HTML 标记

  小部件会自动检测 HTML 标记并相应地显示富文本。例如,使用字符串设置标签的文本属性将导致标签显示这样的文本:你好 Qt!"<b>Hello</b> <i>Qt!</i>"

  当 HTML 标记用于文本时,Qt 遵循HTML 4 规范定义的规则。这包括文本布局的默认属性,例如文本流的方向(从左到右),可以通过将 dir 属性应用于文本块来更改这些属性。

支持的标签

 下表列出了 Qt 富文本引擎支持的HTML标记:

标记描述评论
a锚点或链接支持 和 属性。href name
address地址
b粗体
big放大缩小字体功能 放大缩小字体功能
blockquote缩进段落
body文档正文支持 属性,可以是 Qt颜色名称或颜色规范。bgcolor #RRGGBB
br断线
center居中段落
cite内联引文与 相同。i
code代码与 相同。tt
dd定义数据
dfn定义与 相同。i
div文档划分支持标准块属性。
dl定义列表支持标准块属性。
dt定义术语支持标准块属性。
em强调与 相同。i
font字体大小、系列和/或颜色支持以下属性: 和 (Qt颜色名称或)。size face color #RRGGBB
h1级别 1 标题支持标准块属性。
h22 级标题支持标准块属性。
h33 级标题支持标准块属性。
h44 级标题支持标准块属性。
h55 级标题支持标准块属性。
h6级别 6 标题支持标准块属性。
head文档标题
hr水平线支持 属性,该属性可以指定为绝对值或相对值。width %
htmlHTML 文档
i
img图像支持 (对于 Qt 3 兼容性) 和 属性。src source width height
kbd用户输入的文本
meta元信息如果使用标记指定文本编码,则由 Qt::编解码器ForHtml() 拾取。同样,如果编码指定为QTextDocument::toHtml(),则使用标记存储编码,例如:meta meta <meta http-equiv="Content-Type" content="text/html; charset=EUC-JP" />
li列出项目
nobr不可中断的文本
ol顺序列表支持标准列表属性。
p默认情况下左对齐。支持标准块属性。
pre预制文本
qtQt 富文本文档的同义词。提供与早期版本的 Qt 兼容。html
s删除
samp示例代码与 相同。tt
small小字体
span分组元素
strong与 相同。b
sub
sup
table支持以下属性:、(Qt颜色名称或),、、(绝对或相对)和 。border bgcolor #RRGGBB cellspacing cellpadding width height
tbody表体什么也不做。
td表数据单元格支持标准表单元格属性。
tfoot表页脚什么也不做。
th表标题单元格支持标准表单元格属性。
thead表标题如果指定了标记,则在打印跨多个页面的表时使用该标记。thead
title文档标题使用标记指定的值可通过QTextDocument::元信息()。title
tr表行支持 属性,可以是 Qt颜色名称或颜色规范。bgcolor #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)

表单元格属性

 表格标记支持以下属性:td th

  • width(绝对值、相对值或无值值)
  • bgcolor(Qt颜色名称或#RRGGBB)
  • colspan
  • rowspan
  • align (left right center justify)
  • valign (top middle bottom)

CSS 属性

  下表列出了 Qt 富文本引擎支持的 CSS属性:

属性Values描述
background-color元素的背景颜色
background-image元素的背景图像
color文本前景颜色
font-family字体姓氏
font-size[ small | medium | large | x-large | xx-large ] | pt | pxmedium
font-style[ normal | italic | oblique ]
font-weight[ normal | bold | 100 | 200 | 300 | 400 | 500 | 600 | 700 | 800 | 900 ]指定用于文本的字体权重,其中 和 映射到相应的QFont权重。数值是等效QFont 权重值的8 倍。normal``bold
text-decorationnone | [ underline || overline || line-through ]其他文本效果
font[ [ <‘font-style’> || <‘font-weight’> ]? <‘font-size’> <‘font-family’> ]字体速记属性
text-indentpx第一行文本缩进(以像素为单位)
white-spacenormal | pre | nowrap | pre-wrap声明 HTML 中空白的处理方式。
margin-toppx上段落边距(以像素为单位)
margin-bottompx下段落边距(以像素为单位)
margin-leftpx左段落边距(以像素为单位)
margin-rightpx右段落边距(以像素为单位)
padding-toppx顶部表格单元格填充(以像素为单位)
padding-bottompx底部表格单元格填充(以像素为单位)
padding-leftpx左表单元格填充(以像素为单位)
padding-rightpx右表单元格填充(以像素为单位)
paddingpx用于一次设置所有填充属性的速记。
vertical-alignbaseline | sub | super | middle | top | bottom垂直文本对齐。对于文本表格单元格中的垂直对齐,仅应用中间、顶部和底部。
border-collapsecollapse | separate文本表的边框折叠模式。如果设置为折叠,则不会应用单元格间距。
border-color文本表和表格单元格的边框颜色。
border-top-color表格单元格的顶部边框颜色。
border-bottom-color表格单元格的底部边框颜色。
border-left-color表格单元格的左边框颜色。
border-right-color表格单元格的右边框颜色。
border-stylenone | dotted | dashed | dot-dash | dot-dot-dash | solid | double | groove | ridge | inset | outset文本表和表格单元格的边框样式。
border-top-style表格单元格的顶部边框样式。
border-bottom-style表格单元格的底部边框样式。
border-left-style表格单元格的左边框样式。
border-right-style表格单元格的右边框样式。
border-widthpx表格或单元格边框的宽度
border-top-widthpx表格单元格的顶部边框宽度。
border-bottom-widthpx表格单元格的底部边框宽度。
border-left-widthpx表格单元格的左边框宽度。
border-right-widthpx表格单元格的右边框宽度。
border-toppx 用于设置顶部边框宽度、样式和颜色的速记
border-bottompx 用于设置底部边框宽度、样式和颜色的速记
border-leftpx 用于设置左边框宽度、样式和颜色的速记
border-rightpx 用于设置右边框宽度、样式和颜色的速记
border-toppx 用于设置顶部边框宽度、样式和颜色的速记
border-bottompx 用于设置底部边框宽度、样式和颜色的速记
borderpx 用于设置所有四个边框的宽度、样式和颜色的速记
background[ <‘background-color’> || <‘background-image’> ]背景速记属性
page-break-before[ auto | always ]使段落/表之前可以强制执行分页
page-break-after[ auto | always ]使段落/表后强制执行分页中断成为可能
float[ left | right | none ]指定图像或文本将放置在另一个元素中的位置。请注意,该属性仅支持表和图像。float
text-transform[ uppercase | lowercase ]选择在显示文本之前对文本执行的转换。
font-kerning[ normal | none ]启用或禁用文本字符之间的字距。
font-variantsmall-caps在显示文本之前,对文本执行小帽转换。
word-spacingpx指定每个单词之间的备用间距。
line-height[% | px | pt | cm]指定行的高度。它可以是以下之一:固定线高(以像素、点或厘米为单位)。当前字体大小的百分比。

Qt 特定的 CSS 属性

  除了前面列出的标准 CSS 属性外,以下特定于 Qt 的属性还可用于设置文本块样式:

属性描述
-qt-block-indent<number>将文本块按指定的否缩进。空间。
-qt-list-indent<number>按指定的否缩进列表项。空间。
-qt-list-number-prefix<string>将给定字符串前缀为 HTML 排序列表中的列表编号。
-qt-list-number-suffix<字符串>将给定字符串后缀到 HTML 排序列表中的编号。
-qt-paragraph-typeempty隐藏文本块。
-qt-table-typeroot | frameroot将文本块内联呈现,不带边框和缩进,而在包含框架的新行上渲染文本块。frame
-qt-user-state<number>并将其添加为文本块的用户数据。

支持的 CSS 选择器

  所有 CSS 2.1 选择器类都受支持,伪类选择器除外,例如 和 。:first-child :visited :hover

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值