0
使用Jsoup,克隆的元素沒有擁有者Document,這使得我無法設置這些元素的輸出設置,並導致我的應用程序出現一些問題。試試這個:在Jsoup中設置克隆元素的輸出設置
package test;
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;
public class Main {
public static void main(String[] args) {
Document doc = Jsoup.parse("<div></div>");
doc.outputSettings(new Document.OutputSettings().prettyPrint(false));
Element e = doc.body();
Element copy = e.clone();
System.out.println(e.outerHtml());//returns html not pretty printed
System.out.println(copy.outerHtml());//returns html pretty printed
System.out.println(copy.ownerDocument());//returns null
}
}
問題是,對於內聯元素,這有所不同。舉例來說,如果我得到
<body>
<div style="display:inline;">
test
</div>
<div style="display:inline;">
test
</div>
</body>
,而不是
<div style="display:inline-block;">test</div><div style="display:inline-block;">test</div>
我得到額外的空間,這是錯誤的。