【发布时间】:2016-07-22 13:57:35
【问题描述】:
我经常使用 html+css,但我对 javafx+css 完全陌生。所以这将是一个新手问题,但我无法在任何地方找到答案。
我有一个很大的 GridPane,里面装满了标签(除其他外)。我可以为所有这些标签设置填充,例如:
GridPane.containerLevel02 Label {
-fx-padding: 0 0 0 5;
}
这行得通。我希望一些标签更缩进,所以我为它们创建了“leftIndent”类:
GridPane.containerLevel02 Label.leftIndent {
-fx-padding: 0 0 0 20;
}
这也有效。
但是,我不想在那里指定三个零,因为如果我决定向标签添加顶部/底部填充,它不会影响“leftIndent”标签。
我正在寻找的是这样的:
GridPane.containerLevel02 Label.leftIndent {
-fx-padding-left: 20;
}
... 就像在“普通” CSS 或 ...
GridPane.containerLevel02 Label.leftIndent {
-fx-padding: null null null 20;
}
...或任何可以让我指定左侧填充,使顶部、右侧和底部填充保持不变的任何值。
这可能吗? 谢谢!
【问题讨论】:
-
感谢您的快速评论,但这似乎是他们在那里解决的另一个问题。
-
AFAIK 如果没有自定义皮肤,这是不可能的,因为它是
StyleableProperty<Insets>并且需要从单个规则中分配,并且 afaik 不可能将多个变量组合到一个<size>元素。 -
好吧,我没这么看。我想我对“正常”的 CSS 有偏见。我将不得不做一些阅读和测试以了解它是如何工作的。无论如何感谢您的意见!