En esta página

Subconjunto de HTML soportado

Los widgets de texto de Qt son capaces de mostrar texto enriquecido, especificado usando un subconjunto de marcado HTML 4. Los widgets que utilizan QTextDocument, como QLabel y QTextEdit, pueden mostrar texto enriquecido especificado de esta forma.

Uso del marcado HTML en los widgets de texto

Los widgets detectan automáticamente el marcado HTML y muestran el texto enriquecido en consecuencia. Por ejemplo, si se establece la propiedad text de una etiqueta con la cadena "<b>Hello</b> <i>Qt!</i>", la etiqueta mostrará un texto como el siguiente: ¡ Hola Qt!

Cuando se utiliza el marcado HTML para el texto, Qt sigue las reglas definidas por la especificación HTML 4. Esto incluye las propiedades por defecto para el diseño del texto, el tamaño de la página y el tamaño de la etiqueta. Esto incluye propiedades predeterminadas para el diseño del texto, como la dirección del flujo de texto (de izquierda a derecha), que puede cambiarse aplicando el atributo dir a los bloques de texto.

Etiquetas compatibles

La siguiente tabla enumera las etiquetas HTML soportadas por el motor de texto enriquecido de Qt.

Nota: La funcionalidad implementada para las etiquetas listadas a continuación es un subconjunto de la especificación HTML 4 completa. No todos los atributos están soportados, ver comentarios para cada etiqueta.

EtiquetaDescripciónComentario
aAncla o enlaceAdmite los atributos href y name.
addressDirección
bNegrita
bigFuente más grande
blockquotePárrafo sangrado
bodyCuerpo del documentoAdmite el atributo bgcolor, que puede ser una especificación de color Qt color name o #RRGGBB.
brSalto de línea
centerPárrafo centrado
citeCita en líneaIgual que i.
codeCódigoIgual que tt.
ddDatos de definición
delSuprimidoIgual que s. Desde Qt 6.11
dfnDefiniciónIgual que i.
divDivisión del documentoAdmite los atributos de bloque estándar.
dlLista de definicionesAdmite los atributos de bloque estándar.
dtTérmino de definiciónAdmite los atributos de bloque estándar.
emEnfatizadoIgual que i.
fontTamaño, familia y/o color de fuenteAdmite los siguientes atributos: size, face, y color (Qt color names o #RRGGBB).
h1Encabezado de nivel 1Admite los atributos de bloque estándar.
h2Encabezado de nivel 2Admite los atributos de bloque estándar.
h3Encabezado de nivel 3Admite los atributos de bloque estándar.
h4Rúbrica de nivel 4Admite los atributos de bloque estándar.
h5Rúbrica de nivel 5Admite los atributos de bloque estándar.
h6Rúbrica de nivel 6Admite los atributos de bloque estándar.
headEncabezado del documento
hrLínea horizontalAdmite el atributo width, que puede especificarse como valor absoluto o relativo (%).
htmlDocumento HTML
iCursiva
imgImagenAdmite los atributos src, source (para compatibilidad con Qt 3), width y height.
kbdTexto introducido por el usuario
metaMetainformaciónSi se especifica una codificación de texto mediante la etiqueta meta, será recogida por Qt::codecForHtml(). Del mismo modo, si se especifica una codificación a QTextDocument::toHtml(), la codificación se almacena utilizando una etiqueta meta, por ejemplo: <meta http-equiv="Content-Type" content="text/html; charset=EUC-JP" />
liElemento de lista
nobrTexto no codificado
olLista ordenadaAdmite los atributos de lista estándar.
pPárrafoAlineado a la izquierda por defecto. Admite los atributos de bloque estándar.
preTexto preformado
qtDocumento de texto enriquecido QtSinónimo de html. Se proporciona por compatibilidad con versiones anteriores de Qt.
sTachado
sampCódigo de ejemploIgual que tt.
smallFuente pequeña
spanElementos agrupados
strongFuerteIgual que b.
subSubíndice
supSuperíndice
tableTablaAdmite los atributos siguientes: border, bgcolor (Qt color names o #RRGGBB), cellspacing, cellpadding, width (absoluto o relativo), y height.
tbodyCuerpo de la tablaNo hace nada.
tdCelda de datos de la tablaSoporta los atributos estándar de celda de tabla.
tfootPie de tablaNo hace nada.
thCelda de encabezado de tablaSoporta los atributos estándar de las celdas de tabla.
theadEncabezado de tablaSi se especifica la etiqueta thead, se utiliza al imprimir tablas que abarcan varias páginas.
titleTítulo del documentoEl valor especificado mediante la etiqueta title está disponible a través de QTextDocument::metaInformation().
trFila de tablaAdmite el atributo bgcolor, que puede ser una especificación de color Qt color name o #RRGGBB.
ttFuente Typewrite
uSubrayado
ulLista desordenadaAdmite los atributos de lista estándar.
varVariableIgual que i.

Atributos de bloque

Las etiquetas div, dl, dt, h1, h2, h3, h4, h5, h6, p admiten los siguientes atributos:

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

Atributos de la lista

Las etiquetas ol y ul admiten el siguiente atributo:

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

Además, la etiqueta ol admite el siguiente atributo:

  • start

Atributos de celda de tabla

Las etiquetas td y th admiten los siguientes atributos:

  • width (absoluto, relativo o sin valor)
  • bgcolor (Qt color names o #RRGGBB)
  • colspan
  • rowspan
  • align (left, right, center, justify)
  • valign (top, middle, bottom)

Propiedades CSS

La siguiente tabla lista las propiedades CSS soportadas por el motor de texto enriquecido de Qt:

PropiedadValoresDescripción
background-color<color>Color de fondo de los elementos
background-image<uri>Imagen de fondo para los elementos
color<color>Color de primer plano del texto
font-family<nombre de familia>Nombre de la familia de fuentes
font-size[ pequeño | mediano | grande | x-grande | xx-grande ] | <tamaño>pt | <tamaño>pxTamaño de fuente relativo a la fuente del documento, o especificado en puntos o píxeles
font-style[ normal | cursiva | oblicua ]
font-weight[ normal | negrita | 100 | 200 | 300 | 400 | 500 | 600 | 700 | 800 | 900 ]Especifica el peso de la fuente utilizada para el texto, donde normal y bold se asignan a los pesos correspondientes de QFont. Los valores numéricos son 8 veces los valores de peso equivalentes de QFont.
text-decorationnone | [ underline || overline || line-through ]Efectos de texto adicionales
font[ [ <'font-style'> || <'font-weight'> ]? <'font-size'> <'font-family'> ]Propiedad abreviada de fuente
text-indent<longitud>pxSangría del texto de la primera línea en píxeles
white-spacenormal | pre | nowrap | pre-wrapDeclara cómo se manejan los espacios en blanco en HTML.
margin-top<longitud>pxMargen superior del párrafo en píxeles
margin-bottom<longitud>pxMargen inferior del párrafo en píxeles
margin-left<longitud>pxMargen izquierdo del párrafo en píxeles
margin-right<longitud>pxMargen derecho del párrafo en píxeles
padding-top<longitud>pxRelleno de la celda superior de la tabla en píxeles
padding-bottom<longitud>pxRelleno de la celda inferior de la tabla en píxeles
padding-left<longitud>pxRelleno de la celda izquierda de la tabla en píxeles
padding-right<longitud>pxRelleno de la celda derecha de la tabla en píxeles
padding<longitud>pxAbreviatura para establecer todas las propiedades de relleno a la vez.
vertical-alignbaseline | sub | super | middle | top | bottomAlineación vertical del texto. Para la alineación vertical en las celdas de la tabla de texto, sólo se aplican el centro, la parte superior y la parte inferior.
border-collapsecolapsar | separarModo de colapso de bordes para tablas de texto. Si se establece en colapsar, no se aplicará el espaciado entre celdas.
border-color<color>Color de borde para tablas de texto y celdas de tabla.
border-top-color<color>Color del borde superior para celdas de tabla.
border-bottom-color<color>Color del borde inferior para celdas de tabla.
border-left-color<color>Color del borde izquierdo de las celdas de la tabla.
border-right-color<color>Color del borde derecho de las celdas de la tabla.
border-stylenone | dotted | dashed | dot-dash | dot-dot-dash | solid | double | groove | ridge | inset | outsetEstilo de borde para tablas de texto y celdas de tabla.
border-top-style<estilo de borde>Estilo de borde superior para celdas de tabla.
border-bottom-style<estilo-borde>Estilo de borde inferior para celdas de tabla.
border-left-style<estilo-borde>Estilo de borde izquierdo para celdas de tabla.
border-right-style<estilo-borde>Estilo de borde derecho para celdas de tabla.
border-width<ancho>pxAncho del borde de la tabla o celda.
border-top-width<longitud>pxAncho del borde superior para celdas de tabla.
border-bottom-width<longitud>pxAnchura del borde inferior para celdas de tabla.
border-left-width<longitud>pxAncho del borde izquierdo de las celdas de la tabla.
border-right-width<longitud>pxAncho del borde derecho de las celdas de la tabla.
border-top<ancho>px <estilo de borde> <color de borde>Abreviatura para establecer el ancho, estilo y color del borde superior
border-bottom<ancho>px <estilo-borde> <color-borde>Abreviatura para definir la anchura, el estilo y el color del borde inferior
border-left<ancho>px <estilo-borde> <color-borde>Abreviatura para definir la anchura, el estilo y el color del borde izquierdo
border-right<ancho>px <estilo-borde> <color-borde>Abreviatura para definir la anchura, el estilo y el color del borde derecho
border-top<ancho>px <estilo-borde> <color-borde>Abreviatura para definir la anchura, el estilo y el color del borde superior
border-bottom<ancho>px <estilo-borde> <color-borde>Abreviatura para definir la anchura, el estilo y el color del borde inferior
border<ancho>px <estilo-borde> <color-borde>Abreviatura para establecer la anchura, el estilo y el color de los cuatro bordes
background[ <'background-color'> || <'background-image'> ]Propiedad abreviada de fondo
page-break-before[ auto | always ]Permite imponer un salto de página antes del párrafo/tabla
page-break-after[ auto | always ] Hacer posible imponer un salto de página antes del párrafo/tablaPosibilita la imposición de un salto de página después del párrafo/tabla
float[ izquierda | derecha | ninguno]Especifica dónde se colocará una imagen o un texto en otro elemento. Tenga en cuenta que la propiedad float sólo es compatible con tablas e imágenes.
text-transform[ mayúsculas | minúsculas ]Selecciona la transformación que se realizará sobre el texto antes de mostrarlo.
font-kerning[ normal | none ]Activa o desactiva el kerning entre los caracteres del texto.
font-variantversalitasRealiza la transformación smallcaps sobre el texto antes de mostrarlo.
word-spacing<ancho>pxEspecifica un espaciado alternativo entre cada palabra.
line-height<número>[% | px | pt | cm]Especifica la altura de una línea. Puede ser uno de los siguientes:
  • una altura de línea fija en píxeles, puntos o centímetros.
  • un porcentaje del tamaño de fuente actual.

Nota: Algunas propiedades CSS sólo son compatibles cuando se aplican a una etiqueta de bloque, como <p>. Establecer estas propiedades en un <span>, por ejemplo, no tendrá ningún efecto. El margen es un ejemplo de este tipo de propiedades. Consulta QTextBlockFormat y QTextCharFormat para obtener una visión general de las opciones de formato disponibles en bloques y spans en QTextDocument.

Propiedades CSS específicas de Qt

Además de las propiedades CSS estándar enumeradas anteriormente, también pueden utilizarse las siguientes propiedades específicas de Qt para dar estilo a un bloque de texto:

PropiedadValoresDescripción
-qt-block-indent<number>Indenta el bloque de texto el número de espacios especificado.
-qt-list-indent<number>Indenta los elementos de la lista el número de espacios especificado.
-qt-list-number-prefix<string>Prefija la cadena dada al número de lista en una lista ordenada HTML.
-qt-list-number-suffix<cadena>Sufija la cadena dada al número de lista en una lista HTML ordenada.
-qt-paragraph-typeemptyOculta el bloque de texto.
-qt-table-typeroot | frameroot representa los bloques de texto en línea sin bordes ni sangría, mientras que frame los representa en una nueva línea con un marco alrededor.
-qt-user-state<number>Lo añade como datos de usuario para el bloque de texto.

Selectores CSS compatibles

Se admiten todas las clases de selectores CSS 2.1 excepto los selectores de pseudoclase como :first-child, :visited y :hover.

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