Javascript 如何将CSS直接应用于DOM TextNodes?
如何将Javascript 如何将CSS直接应用于DOM TextNodes?,javascript,html,css,Javascript,Html,Css,如何将text align:center属性指定给通过DOM节点创建的TextNode。我将这个TextNode直接添加到body(不使用任何组件) 你不能。CSS仅适用于元素,而不适用于文本节点 您需要将文本节点包装到元素中,或直接使用元素: var text = document.createElement("p"); text.textContent = "Welcome"; text.style.textAlign = "center"; …尽管您也可以为此使用heading元素。在J
text align:center
属性指定给通过DOM
节点创建的TextNode
。我将这个TextNode
直接添加到body
(不使用任何
组件)
你不能。CSS仅适用于元素,而不适用于文本节点 您需要将文本节点包装到元素中,或直接使用元素:
var text = document.createElement("p");
text.textContent = "Welcome";
text.style.textAlign = "center";
…尽管您也可以为此使用heading元素。在JavaScript中,CSS样式转换为驼峰式大小写。像这样
Text.style.textAlign = 'center';
所以
文本对齐
变成文本对齐
,背景色
变成背景色
等等……只需为正在包装文本节点的元素赋予相同的textAlign属性即可。
不能将样式应用于文本节点。您可以将样式应用于环绕文本节点的元素,从而将CSS样式应用于包装器中的所有内容 您不能将CSS应用于文本节点。因此最好在元素中创建文本。 您可以通过两个jQuery函数来实现这一点 使用
.css()
然后将该类添加到脚本中新创建的元素中,如下所示:
var Text = $("<p>Welcome</p>").addClass("cls");
var Text=$(“Welcome”).addClass(“cls”);
首先是Text.style.textAlign,而不是Text-align。其次,文本节点没有样式属性,因此不可能是这样。查看本文:我正在使用firefox,我没有让innerText正常工作,这里它声称firefox不支持它,@HermannIngjaldsson我的道歉-标准格式是textContent
。我已经更新了我的答案。
var Text = $("<p>welcome</p>").css("textAlign","center");
.cls {text-align: center}
var Text = $("<p>Welcome</p>").addClass("cls");