【问题标题】:Convert CSS to JavaFx CSS将 CSS 转换为 JavaFx CSS
【发布时间】:2023-03-10 22:29:01
【问题描述】:

我有一个 Web 应用程序,为此我们有 CSS。我们正在将 UI 移植到 JavaFX,并打算将其样式设置为与 Web 应用程序中的样式完全相同。我尝试为此加载 web 项目中使用的 CSS,但样式没有得到反映。 经过一番搜索,我发现 Oracle 创建了一种名为 JavaFX CSS 的东西,它类似于 CSS,但不完全是 CSS。

我想知道的是:有没有一些简单的方法可以将我的(网络)CSS 转换为 JavaFX CSS?

【问题讨论】:

    标签: css javafx-2


    【解决方案1】:

    将我的(网络)CSS 转换为 JavaFx CSS 的一些简单方法

    此任务没有自动转换器。我建议你拿一点你的 CSS 并尝试手动手动转换它。

    您可以使用CSS Analyzer in SceneBuilder 等分析工具来帮助完成此任务。

    在执行转换时参考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 的所有基本syntax and data types

    W3C CSS 是您在问题中所称的纯 CSS 或(网络)CSS。有很多 extensions and proposed extensions to 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 运行时足够聪明,可以在渲染它们时应用适当的样式特定组件。

    另见

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-04-21
      • 2021-12-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多