我正在尝试制作具有最小宽度和高度的标签,用于触摸屏上的手指大小,而不是文本的大小。
.tab-pane *.tab-header-area *.tab-header-background {
-fx-background-color:transparent;
-fx-tab-min-width:120px;
-fx-tab-max-width:120px;
-fx-tab-min-height:50px;
-fx-tab-max-height:50px;
}
.tab {
-fx-font-family: Arial;
-fx-font-size: 18;
-fx-background-color:royalblue ;
}
.tab:selected {
-fx-background-color:blue ;
}
颜色和字体有效,但尺寸无效。我尝试了许多尺寸,使用px和em,但没有效果。
TabPane tabPane = new TabPane();
Tab tab1 = new Tab();
tab1.setText("Machine");
tab1.setClosable(false);
Tab tab2 = new Tab();
tab2.setText("Shifts");
tab2.setClosable(false);
tabPane.getTabs().addAll(tab1, tab2);
答案 0 :(得分:12)
您尝试设置的尺寸属性为properties of the TabPane
。
您使用的选择器:
.tab-pane *.tab-header-area *.tab-header-background
选择选项卡窗格的标题页区域子项的标题页头背景子项:StackPane
(请参阅上面链接的文档的"子结构"部分)。 StackPane
没有定义这些属性,因此在CSS中它们没有效果。
直接在选项卡面板上设置尺寸属性:
.tab-pane *.tab-header-area *.tab-header-background {
-fx-background-color:transparent;
}
.tab-pane {
-fx-tab-min-width:120px;
-fx-tab-max-width:120px;
-fx-tab-min-height:50px;
-fx-tab-max-height:50px;
}
.tab {
-fx-font-family: Arial;
-fx-font-size: 18;
-fx-background-color:royalblue ;
}
.tab:selected {
-fx-background-color:blue ;
}