JavaFX TitledPane不能覆盖-fx-text-fill属性

4

我试图在TitledPane被按下时改变标题颜色,但是我无法做到这一点。这是我的css:

.titled-pane * {
    -fx-background-color: transparent;
}
.titled-pane .title{
    -fx-background-color: #666666;
}
.titled-pane .title:hover {
    -fx-background-color: #AAAAAA;
}
.titled-pane .title:pressed {
    -fx-background-color: #DDDDDD;
    -fx-text-fill: black;  // does not work
}

背景设置工作正常,所以我不明白问题出在哪里。

我看到了这个问题,但是我不知道如何将解决方法应用到我的情况中。

提前感谢。

1个回答

5
如果您查看modena.css中应用于TitledPane的样式,您会发现文本是在根选择器上进行样式设置的。
.titled-pane {
    -fx-text-fill: -fx-text-base-color;
}

所以你只需要在根按下状态上应用所需的文本颜色:
.titled-pane * {
    -fx-background-color: transparent;
}
.titled-pane:pressed {
    -fx-text-fill: red;
}
.titled-pane .title{
    -fx-background-color: #666666;
}
.titled-pane .title:hover {
    -fx-background-color: #AAAAAA;
}
.titled-pane .title:pressed {
    -fx-background-color: #DDDDDD;
}

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接