如何对用Java制作的画布进行媒体查询?

时间:2019-04-23 09:28:55

标签: java css media-queries fxml

CSS文件中的媒体查询对javaFX中的GUI没有影响。

我已经使用javaFX制作了画布。我已经使用FXML设置了不同的GUI元素。然后,我使用CSS文件来设置所有样式。现在的问题是,我想让它响应。当我尝试在CSS文件中使用媒体查询时,没有任何反应。

.userMenu {
-fx-max-height: 30; 
-fx-max-width: 130;
-fx-background-color:  rgba(255, 255, 255, 0.5);
-fx-padding: 10px;
-fx-background-radius: 12px;
}

@media only screen and (min-width: 300px) {

.userMenu {
    -fx-max-height: 150; 
    -fx-max-width: 300;
    -fx-background-color:  rgba(255, 255, 255, 0.5);
    -fx-padding: 10px;
    -fx-background-radius: 12px;
  }
}

我希望userMenu框在超过300px宽度时能够重新缩放。

1 个答案:

答案 0 :(得分:0)

在搜索自己时发现了这一点,简单的答案是:您没有。

来自official docs

尽管JavaFX CSS解析器将解析有效的CSS语法,但它不是完全兼容的CSS解析器。不应期望解析器处理本文档中未指定的语法。

@关键字语句将被忽略。

我猜一个人需要为此写Java代码。\ p(ツ)_ /

编辑:

查看JavaFX 8 docs后,有两个受支持的@规则:@import@font-face。但这就是全部。