Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/74.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
关于HTMLEditorKit的Java编程_Java_Html_Css - Fatal编程技术网

关于HTMLEditorKit的Java编程

关于HTMLEditorKit的Java编程,java,html,css,Java,Html,Css,我的源代码如下 我想控制字体颜色只css 我像这样插入HTML <span class="tag1">I love <span class="tag2">apple</span></span><span class="tag2"> pie</span>. 我喜欢苹果派。 对于tag1,我希望“我爱苹果”变成红色字体 但只有“我爱”变成红色字体 我该怎么修 ?? doc.getStyleSheet().addRul

我的源代码如下

我想控制字体颜色只css

我像这样插入HTML

<span class="tag1">I love <span class="tag2">apple</span></span><span class="tag2"> pie</span>.
我喜欢苹果派。
对于tag1,我希望“我爱苹果”变成红色字体

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

我该怎么修 ??

    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();
    }
doc.getStyleSheet().addRule(.tag1{color:red;}”);
试一试{
insertHTML(doc,doc.getLength(),“我爱苹果派”,0,0,null);
}捕获(IOE1异常){
e1.printStackTrace();
}捕获(BadLocationException e1){
e1.printStackTrace();
}

发生这种情况的原因是,当
apple
.tag1
内部的
span
时,您仅将红色设置为
.tag1
,因此它不会直接获取颜色css属性。 正如@hoosssein所说,如果span有一个默认(或任何)css颜色值,它将不会使用父级的样式,这就是这里发生的情况

您需要添加:

doc.getStyleSheet().addRule(".tag1 span {color : red;}");

因此.tag1 cls中的每个span也将有红色。

是否表示“doc.getStyleSheet().addRule(“.tag1 span{color:red;}”);”?这是不正确的。如果元素B中有元素A,那么在A中未指定的元素B的所有属性都将继承到元素A(如果可能的话)。是否可以编写每个类的属性?我的意思是
tag1
tag1