转换时间和转换函数在 css 中不起作用

Transition time and transform's function do not work in css

提问人:Rei 提问时间:11/12/2023 更新时间:11/14/2023 访问量:35

问:

我正在 IntelliJ IDEA 2023.2(旗舰版)中使用 javafx 20.0.1 构建一个应用程序。这是我的css代码:

.menu_bar {
    -fx-background-color: #FFC7C7;
}

.menu_bar Button {
    -fx-background-color: transparent;
}

.menu_bar Button:hover {
    -fx-scale-x: 1.2;
    -fx-scale-y: 1.2;
    transform: rotate(30deg);
    transition: -fx-scale-x 8s, -fx-scale-y 8s, transform 0.8s;
}

第一个问题是没有应用过渡时间(“8s”),就像当我将鼠标悬停在按钮上时,它们会立即进行缩放过渡。第二个问题是“转换”,无论我使用什么函数进行转换,我总是得到这样的错误

Nov 12, 2023 10:27:33 PM javafx.css.CssParser declaration
WARNING: CSS Error parsing file:/C:/Users/ADMIN/IdeaProjects/ElearnApp_javafx_Group8/target/classes/Styles/MenuBar.css: Unexpected function 'rotate(' while parsing 'transform' at [13,15]

我该如何解决这个问题?

css javafx css-transitions css-transforms

评论

2赞 James_D 11/12/2023
JavaFX CSS 不支持转换或转换。对于转换,只需使用 .对于转换,您必须在 Java 中通过在按钮的属性上注册侦听器来执行此操作。-fx-rotate: 30;hover
2赞 James_D 11/13/2023
有关类似功能,请参阅此答案

答:

0赞 jewelsea 11/14/2023 #1

下面是 JavaFX CSS 参考

如果您尝试使用的 CSS 功能未记录在该功能中,则不支持该功能。

正如James_D在评论中指出的那样:

JavaFX CSS 不支持转换或转换。

对于转换,只需使用 . 对于转换,您必须在 Java 中通过在按钮的 hover 属性上注册侦听器来执行此操作。-fx-rotate: 30;

有关类似功能,请参阅此答案: