首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >关于HTMLEditorKit的Java编程

关于HTMLEditorKit的Java编程
EN

Stack Overflow用户
提问于 2013-08-07 04:31:09
回答 1查看 139关注 0票数 0

我的源代码如下。

我只想控制css的字体颜色。

我像这样插入HTML。

代码语言:javascript
复制
<span class="tag1">I love <span class="tag2">apple</span></span><span class="tag2"> pie</span>.

以tag1为例,我认为“我爱苹果”会变成红色字体。

但只有“我爱”才会变成红色字体。

我该怎么解决它??

代码语言:javascript
复制
    doc.getStyleSheet().addRule(".tag1 {color : red;}");

    try {

        kit.insertHTML(doc, doc.getLength(), "<span class=\"tag1\">I love <span class=\"tag2\">apple</span></span><span class=\"tag2\"> pie</span>.", 0, 0, null);
    } catch (IOException e1) {

        e1.printStackTrace();
    } catch (BadLocationException e1) {

        e1.printStackTrace();
    }
EN

回答 1

Stack Overflow用户

发布于 2013-08-07 04:34:35

这是因为当<span class="tag2">apple</span>.tag1中的span时,您只将red color设置为.tag1,所以它不会直接获取color css属性。正如@hoosssein所说,如果您为span设置了默认(或任何) css颜色值,它将不会使用父对象的样式,这就是这里发生的情况。

您需要添加:

代码语言:javascript
复制
doc.getStyleSheet().addRule(".tag1 span {color : red;}");

因此,.tag1 cls中的每个跨度也将是红色的。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18089892

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档