问答详情
源自:3-6 控制类名(className 属性)

熊德们 都来谈论吧!! 请教你们

<p id="p1"> JavaScript使网页显示动态效果并实现与用户交互功能。</p>

    <input type="button" value="添加样式" onclick="add()"/>

<p id="p2" class="one">JavaScript使网页显示动态效果并实现与用户交互功能。</p>

    <input type="button" value="更改外观" onclick="modify()"/>

我想问问 ID为P1的 那个 后面为什么没有class='one'或者class='✘✘✘'什么的?

后面的那个是P2 为什么写的是class='p1' 怎么不写成class='p2'?

提问者:LOVE刘 2016-06-30 22:45

个回答

  • Lis丶
    2016-07-07 11:27:04

    问题一:你可以选择写上去,但是没有意义。

    ----- 即:你可以在<p id="p1">...(省略)</p> 后面加上class="xxx" ,但是没有意义,因为用不着。

    问题二:<p id="p2" class="one">...(省略)</p> 首先,这里id="p2"后面写的是class="one" 而不是p1,这里的其实名字( 也就是类的名字 ) 你可以随便写,不过相应的要在function modify(){  }里面进行修改,因为你是同通过var obj=document.getElementById("")获取节点元素对象,在这个基础上通过这个对象的obj.className="xxx"方法来改变节点元素(也就是标签)的类名的。如果在这之前类的名字发生了改变,你是不是应该把obj.className="xxx"改一下?对吧。


    最后,如果class="xxx",对于相同类名 即:xxx的时候,是可以多处使用的。也就是说类名可以一样,不过CSS样式也一样而已。

    -----就拿这个例子来说:

    <style type="text/css">

    .t1{

    display:block;

    width:500px;

    background-color:gray;

    }

    </style>

    <p id="p1" class="t1">...</p>

    <p id="p2" class="t1">...</p>

    这样,这两个的样式都会发生改变,宽都会是500px;


  • Uniq_e
    2016-06-30 23:31:33

    id是id选择器,class是类选择器。两者在<style></style>里面所设置的样式表达方式也不样。设置id选择器样式为#id,设置类选择器样式为.class。问题中没有class就代表没有对应的类选择器的样式。class="p1"和class="p2"选择谁其实都无所谓,只要你在类选择器里设置好样式就可以了。