html 字体大小在 QMessageBox 的信息文本中不起作用吗?

Does html font size not work in informative text in QMessageBox?

QMessageBox的Informative Text可以格式化为富文本,我理解html 标签在这种情况下,富文本是允许的。但是,size 属性似乎没有按预期工作。使用时,QMessageBox 信息文本的大小比正常大,但具体值似乎没有效果(即使属性 color,并且 & 标签似乎按预期工作)。这是输出:

有没有办法在 QMessageBox 的信息文本中的 html(或 rtf)标记中指定字体大小?

void MainWindow::about()
{
    QMessageBox msgAbout;
    msgAbout.setInformativeText("<span style='text-align: center'><p><b><font size = 20 color = red><i>Supposedly</i> set in 30pt font</font><p><font size = 20 color = blue><i>Rumoredly</i> set in 20pt font</font><p><font size = 10 color = green><i>Putatively</i> set in 10pt font</font><p>Proud not to use the &lt;font&gt; tag!</span><p>");
    msgAbout.setStandardButtons(QMessageBox::Ok);
    msgAbout.setDefaultButton(QMessageBox::Ok);
    msgAbout.exec();
}

macOS 10.13.3
Qt Creator 4.5 基于 Qt 5.10.0(Clang 7.0 (Apple),64 位)

您必须使用 : 而不是 =:。您必须将 font-size 放在相关 <p> 标签的样式属性中。并且您必须指定字体大小单位(例如,12pt)。

QMessageBox msgAbout;
msgAbout.setInformativeText("<span style='text-align: center'><p style='font-size: 30pt; color: red'><b><i>Supposedly</i> set in 30pt font</p><p style='font-size: 20pt; color: blue'><i>Rumoredly</i> set in 20pt font</p><p style='font-size: 10pt; color: green'><i>Putatively</i> set in 10pt font</p><p>Proud not to specify font-size attributes!</span><p>");
msgAbout.setStandardButtons(QMessageBox::Ok);
msgAbout.setDefaultButton(QMessageBox::Ok);
msgAbout.exec();