【问题标题】:Java JEditorPane cssJava JEditorPane css
【发布时间】:2013-11-14 11:32:14
【问题描述】:

我在使用 JEditorPane 时遇到问题。 我想在同一行上左对齐和右对齐文本。

这是我的代码:

INFO_AREA = new JEditorPane();
    INFO_AREA.setBorder(BorderFactory.createCompoundBorder(BORDER, 
                BorderFactory.createEmptyBorder(10, 10, 10, 10)));
    HTMLEditorKit kit = new HTMLEditorKit();
    INFO_AREA.setEditorKit(kit);
    StyleSheet styleSheet = kit.getStyleSheet();
    styleSheet.addRule(".alignleft{color : rgb(0,128,25); font-weight: bold; float: left;}");
    styleSheet.addRule(".alignright{color : rgb(0,128,25); font-weight: bold; float: right;}");
    INFO_AREA.setText("<html>" +
            "<center><b><font size=6>Important Information</font></b></center>" 
            "<div id=textbox><p class='alignleft'>left</p><p class='alignright'>right</p></div>" +
            "</html>");
    INFO_AREA.setLocation(305, 10);
    INFO_AREA.setSize(275, 200);
    INFO_AREA.setEditable(false);
    PANE.add(INFO_AREA);

好像JEditorPane不支持float一样不行。

所以也许有人知道如何在同一行上实现左对齐和右对齐文本?

【问题讨论】:

  • 您在&lt;div id=textbox 之后缺少&gt;
  • 已编辑,但仍然无法正常工作,我从未真正使用过 html/css,所以这部分可能有问题。

标签: java html css swing jeditorpane


【解决方案1】:

Swing 的 HTML 渲染器很旧。它支持 HTML 3.2 和 CSS 1.0,甚至不支持这些规范的所有功能。

查看documentation of the CSS class,我们看到它列出了它支持的所有CSS 属性。有一个受支持的列表,后面是一个以“以下为模型,但当前未呈现”开头的列表。在该列表中是 float 属性。

因此,Swing HTML 呈现当前不支持 float 属性。完全没有。

对于这个问题,有一个长期存在的错误,Java Bug ID 4296022

【讨论】:

    猜你喜欢
    • 2012-11-22
    • 2012-10-24
    • 2013-07-06
    • 1970-01-01
    • 1970-01-01
    • 2021-10-16
    • 2010-10-09
    • 2012-04-22
    • 1970-01-01
    相关资源
    最近更新 更多