2009-09-25 191 views
1

纯文本我有HTML添加<p></p>在HTML

<div id="description"> Text with not paragraph tag</div> 

的一个小片段是否有CSS或JQUERY任何方式来解决这个问题?

+1

应该被包裹在另一个标签。那么,请你提供样品。 – 2009-09-25 11:24:35

+0

以前的标签是BODY,我无法将全身所需的CSS应用到我的身上! – CLiown 2009-09-25 11:34:36

回答

7

wrapInner()是你追求的,我认为

$("#description").wrapInner('<p></p>'); 

将导致

<div id="description"><p>Text with not paragraph tag</p></div> 
-1

可以样式的所有使用身体CSS属性页面,例如上的文字:将适用于包含在HTML页面上的所有文本

body { 
font-size: 1.3em; 
} 

。这真的是更好的封装内的文本格式正确的HTML,虽然;)

1

实际上,你不要”不需要JQuery来做到这一点(尽管Russ Cam指出JQuery只需一次函数调用就可以快速简单地完成这项工作),但这种做法很简单。

var tag = document.getElementByID("description"); 
var originalHTML = tag.innerHTML; 
tag.innerHTML = "<p>" + originalHTML + "</p>"; 

至于使用CSS,它是可行的,但它不是一个好主意。通常,在这种情况下最好使用实际的HTML。

但是,如果你只是想解决标签:

#description{ 
    padding-top: 10px; 
} 
+1

我不会推荐像这样抛出innerHTML,你会失去任何不可串行化的数据,如表单字段值,JavaScript引用和事件处理程序对所包含的内容。你可以通过'createElement' - 一个'p','appendChild'将所有'div.childNodes'添加到'p',然后'appendChild'将'p'添加到'div'。 – bobince 2009-09-25 12:12:43

相关问题