Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/366.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
Javascript 如何使用DOM更改/添加p标记样式?_Javascript_Html_Css_Dom_Paragraph - Fatal编程技术网

Javascript 如何使用DOM更改/添加p标记样式?

Javascript 如何使用DOM更改/添加p标记样式?,javascript,html,css,dom,paragraph,Javascript,Html,Css,Dom,Paragraph,我希望使用DOM在我的p标签中使用可变字体大小,但我似乎找不到访问它以更改样式的方法。我试过这个 document.body.p.style.font-size=+p_var+px 同时尝试了几种使用setAttribute的方法,但运气不佳。如果可能的话,谁能告诉我如何更改它。试试这样的方法 <p id="myP">This is a paragraph.</p> 否则,如果要为所有标记设置样式,请尝试以下操作 var node; node = document.g

我希望使用DOM在我的p标签中使用可变字体大小,但我似乎找不到访问它以更改样式的方法。我试过这个

document.body.p.style.font-size=+p_var+px


同时尝试了几种使用setAttribute的方法,但运气不佳。如果可能的话,谁能告诉我如何更改它。

试试这样的方法

<p id="myP">This is a paragraph.</p>
否则,如果要为所有标记设置样式,请尝试以下操作

var node; 
node = document.getElementsByTagName('p');
for (var i = node.length-1; i>=0; i--) {
    node[i].style.fontSize = ""+p_var+"px";
}
另外,如果您需要为标记使用与下面相同的类名

<p class="myP">This is a paragraph.</p>
<p class="myP">This is a paragraph.</p>
请尝试以下代码:

var s=document.getElementsByTagName('p');
for(i=0;i<s.length;i++)
{
    s[i].setAttribute("style","font-size:"+p_var+"px");
}

首先,例如,预先准备一个css类

.font30 {
  font-size: 30px;
}
然后使用jquery

$("p").addClass("font30");

使用类而不是内联css是一种很好的做法:

您想通过javascript设置它吗?为什么不使用css?因为css没有可以在运行时更改的变量。不,p不是对象。而是一组对象。您需要迭代此数组的元素。字体大小通过元素的样式属性应用。这些可以作为元素样式对象的属性进行修改,也可以通过CSS进行修改,通过选择器或类设置的CSS规则可以修改它。@am1r_5h-我在OP上没有看到jQuery标记。不使用jQuery可以创建P元素的集合。但是如果我有多个类似的P标记,我不应该使用class=myP。Rob,edited@Zword的答案非常适合getElementsByTagName。
Using jquery it can be done as

$("p").css({"font-size":"30px"});
.font30 {
  font-size: 30px;
}
$("p").addClass("font30");