【发布时间】:2013-11-17 22:17:46
【问题描述】:
我正在努力在我的应用程序中获得一致的对齐方式,该应用程序是用 GWT 编写并通过基于 WebKit 的 JavaFX 2.2 WebView (Java 7u40) 查看的。
我遇到的问题是,JavaFX 中的 CSS 布局属性似乎存在问题/缺乏支持。文档 (http://docs.oracle.com/javafx/2/api/javafx/scene/doc-files/cssref.html) 说支持 CSS 2.1(包括 padding、padding-left 等)。
文档还声明“JavaFX CSS 不支持 CSS 布局属性,例如浮动、位置、溢出和宽度。但是,某些 JavaFX 场景图对象支持 CSS 填充和边距属性。"
这是我在 Chrome 中运行良好的内容:
.foo-bar-values {
padding-left: 22px;
}
但这对 WebView 完全没有影响。
以下是我尝试过的其他规则,它们在 Chrome 中都可以正常工作,但在 JavaFX WebView 中无法执行任何操作:
.foo-bar-values {
padding: 0px 0px 0px 22px;
}
.foo-bar-values {
margin: 0px 0px 0px 22px;
}
.foo-bar-values {
margin-left: 22px;
}
.foo-bar-values {
padding-left: 22px;
-fx-label-padding: 0px 0px 0px 22px;
}
.foo-bar-values {
padding-left: 22px;
-fx-padding: 0px 0px 0px 22px;
}
.foo-bar-values {
padding-left: 22px;
\-fx-label-padding: 0px 0px 0px 22px;
}
.foo-bar-values {
padding-left: 22px;
\-fx-padding: 0px 0px 0px 22px;
}
DOM 的结构如下:
<table>
<colgroup></colgroup>
<tbody>
<tr>
<td></td>
<td>
<div class="foo-bar-values">This doesn't pad.</div>
</td>
</tr>
</tbody>
</table>
如何让 <div> 在 JavaFX WebView 中正确对齐?
【问题讨论】:
-
因为 javafx 中没有 float 和其他属性.....您必须使用 widthProperty()..nd 在场景构建器中创建控件并初始定义它们的位置
标签: css gwt webview javafx-2 javafx-webengine