Here is a small snippet of my code, I don't know why but Qt is ignoring the css.
QTextDocument *mTextDocument = new QTextDocument(0);
QTextEdit *textEdit = new QTextEdit(0);
mTextDocument->setDefaultStyleSheet(QString::fromUtf8("body{background-color: rgb(0,111,200);}"));
QTextCursor *_cursor = new QTextCursor(mTextDocument);
textEdit->setDocument(mTextDocument);
_cursor->insertBlock();
_cursor->insertHtml("<html><body><p>Hello world</p></body></html>");
textEdit->show();
I'm using Qt 4.8.
Your document already has html
and body
tags, so they are simply ignored when they are found in insertHtml
.
If you were using QTextEdit::setHtml
, they would be new elements and the default stylesheet would be applied to them.
来源:https://stackoverflow.com/questions/15730224/qt-ignores-css-in-qtextdocument