Javascript 从应用CSS样式的范围创建DOM DocumentFragment

Javascript 从应用CSS样式的范围创建DOM DocumentFragment,javascript,html,dom,webkit,Javascript,Html,Dom,Webkit,假设有这样一个文档: <style type="text/css"> .my-bold { font-weight: bold; } </style> <p id="first">Paragraph with <span class="my-bold">bold text</span></p> <p id="second">Another Paragraph with <span clas

假设有这样一个文档:

<style type="text/css">
  .my-bold {
    font-weight: bold;
  }
</style>

<p id="first">Paragraph with <span class="my-bold">bold text</span></p>
<p id="second">Another Paragraph with <span class="my-bold">bold text</span></p>
但这只提供了没有样式的HTML:

<p id="second">Another Paragraph with <span class="my-bold">bold text</span></p>

另一段粗体文字


只有WebKit的解决方案就足够了。

您不能直接这样做,但可以尝试读取
p
元素中每个元素的样式,并将其放置在
style
属性中<代码>变量span=p.getElementsByTagName('span')[0];setAttribute('style',window.getComputedStyle(span,null))可能有效。我没有测试这个!!!检查关于该方法的文档。除了我之前的评论,这里不需要标记,因为它与
webkit
本身无关。
var p = document.getElementById( "second")
var range = document.createRange()
range.selectNode( p)
var html = range.cloneContents()
<p id="second">Another Paragraph with <span class="my-bold">bold text</span></p>