[英]Convert CSS to JavaFx CSS
我有一个Web应用程序,为此我们有CSS。 我们正在将UI移植到JavaFX,并打算将其样式与Web应用程序上的样式完全相同。 我尝试加载用于Web项目的CSS,但样式没有得到反映。 经过一番搜索,我发现Oracle已经创建了一个名为JavaFX CSS的东西,它类似于CSS但不完全是CSS。
我想知道的是:有一些简单的方法将我的(Web)CSS转换为JavaFX CSS吗?
一些简单的方法将我的(Web)CSS转换为JavaFx CSS
此任务没有自动转换器。 我建议你拿一点你的CSS并尝试手动转换它。
您可以使用分析工具(如SceneBuilder中的CSS Analyzer)来帮助完成此任务。
执行转换时请参阅JavaFX CSS Reference 。
如果您在转换JavaFX和HTML css文件之间的元素或属性时遇到特定问题,请发布有关这些转换困难的新问题。
我们正在将UI移植到JavaFx,并打算将其样式设置为与Web应用程序上的样式完全相同。
如果你有很多CSS,那将会有点棘手。 JavaFX CSS与基于Web的HTML css不同。 JavaFX CSS文件与HTML CSS共享一种通用的语法格式,但JavaFX中的所有 css属性都与HTML CSS中的不同。
HTML CSS可以指定由HTML呈现引擎呈现的布局属性。 JavaFX布局和呈现引擎与HTML的工作方式不同,因此基于HTML CSS的布局说明符在任何JavaFX CSS,JavaFX代码或FXML定义的布局管理器中都不具有直接等价物。
不过,JavaFX CSS非常灵活。 很多东西都类似于HTML css(比如区域背景和颜色说明符),因此可以在合理的时间内以可接受的准确度将HTML CSS的要点转换为JavaFX CSS,前提是您熟悉两种CSS形式。 只是不要指望您的JavaFX应用程序和Web应用程序的外观或行为完全相同 。
Oracle已经创建了一些调用JavaFX CSS的东西,它类似于CSS但不完全是CSS。
JavaFX CSS在语法和文件格式方面实际上只是CSS。 JavaFX中使用的CSS遵循W3C CSS的所有基本语法和数据类型 。
W3C CSS就是你在问题中所说的纯CSS或(web)CSS。 W3C CSS有许多扩展和建议的扩展 ,其中许多扩展甚至在主流浏览器中都得不到很好的支持。
考虑将WebView用于应用程序的某些部分
您可能希望将某些应用程序保留在HTML中,并将应用程序的其他部分移植到JavaFX控件中,而不是将整个应用程序从HTML移植到JavaFX。
JavaFX包含一个WebView组件,可以轻松嵌入JavaFX应用程序中。 WebView可以准确地呈现HTML,它可以解析和理解W3C CSS。 您可以使用一些现有的CSS和HTML来设置和呈现JavaFX应用程序的一部分。
由于JavaFX CSS和W3C CSS共享一种通用文件格式,您甚至可以将JavaFX CSS样式和W3C CSS样式放在同一个CSS文件中,而JavaFX和WebView运行时将足够聪明,可以在呈现其特定组件时应用适当的样式。
也可以看看
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.