How do I customise the appearance of links in QLabels using style sheets?
One way is to add style="color: whatever"
or a class to the inner <span>
of the link. I haven't figured out yet how to apply this to the whole application but it's a good start.
Short answer is no. Recently I had to do this.
QLabel!visited
doesn't work because Qt doesn't track whether QLabel were visited or not.QLabel { color: ... }
doesn't work for links. Can't find why but all I found is a suggestion to useQPallete
in this case.
I've had little success explicitly setting the QPalette
-- it works if you set it for the entire application, but not if you set it in the widget. In the end though, the easiest thing for what I needed to do was use a QTextBrowser instead which supports a subset of HTML. I could then override the colour of links using a regular CSS stylesheet:
QTextBrowser browser;
// IMPORTANT! - set the stylesheet before the content
browser->document()->setDefaultStyleSheet("a {color: white; }");
browser->setText(html);