TextArea的JavaFX CSS样式不起作用

我正在编写一个简单的JavaFX应用程序,但我无法使用一些CSS样式。 问题是我的TextArea-fx-background-color属性。

这是相关的CSS:

 .text-area { -fx-font-family: Consolas; -fx-highlight-fill: #00ff00; -fx-highlight-text-fill: #000000; -fx-text-fill: #00ff00; -fx-background-color: #000000; } 

所有字段都按预期执行,但-fx-background-color除外,它显然什么都不做。 我仍然有默认的白色背景。 正如您在图片中看到的,下面的TextField具有相同的CSS,但确实应用了预期的背景颜色。

我的问题的图片

有什么线索吗?

您需要设置内容:

  .text-area .content{ -fx-background-color: black; } 

或者看看这个答案可能是: JavaFX 8中textarea的透明背景

我遇到了同样的问题:我做了什么:

  1. 创建了一个名为console.css的.css文件,其中包含以下内容:

     .text-area { -fx-font-family: Consolas; -fx-font-size: 15; -fx-text-fill: #ffffff; -fx-display-caret:true; } .text-area .content { -fx-background-color: #000000; } 
  2. 在我的场景上叫:

    scene.getStylesheets()。add(this.getClass()。getResource(“/ stylesheets / console.css”)。toExternalForm());

说明:
– 第二部分只是加载css的东西。 (不重要的)

– 第一部分(css):你必须检查哪个属性必须应用于对象的哪个部分。 例如:-fx-font-family在.text-area上,但-fx-background-color在.content上。 理解这个概念可以让你理解JavaFx中的所有css内容。

JavaFX-CSS-Docu (推荐)。

好编程:-)

你在使用场景构建器吗?

我尝试了你使用的相同的CSS,一切正常,也许这是你的版本中的一个错误。

我测试了它的文本区域和文本字段。

图片

在JavaFx中,TextArea有两个子目录(Content&scrollPane),每个结构都具有TextInputControl的所有属性:

  text-area{ } text-area .content { } text-area.scroll-pane { }