标签的HTML元素部分是属性吗?

时间:2016-04-25 09:47:12

标签: html xml

我必须为HTML初学者准备一个研讨会,所以我遇到了以下内容。

如果我有......

<p>This is a text-node.</p>

...然后&lt; p&gt;和&lt; / p&gt;是标签。整个事情&#39;&lt; p&gt;这是一个文本节点。&lt; / p&gt;&#39;是一个元素。

到目前为止,非常好。

但是当我在其中归属时,&#p;&lt; p class =&#34; foobar&#34;&gt;这是一个文本节点。&lt; / p&gt;&#39; ......

那么标签的属性部分是什么?

表示: 标签是从开始括号到结束括号的所有内容,包括属性?或者我有什么不对劲?那请纠正我。

2 个答案:

答案 0 :(得分:1)

正确。标记是<和紧随其后的/>之间的所有内容。所以class="foobar"部分确实位于段落标记内。

正如BoltClock正确指出的那样,class属性(或任何其他属性)并不是与标签本身携带的东西。它只是声明了特殊行为。

MDN说:

  

[Attributes]是用于配置元素或以各种方式调整其行为以满足用户所需条件的其他值。

因此,在您的情况下,class="foobar"表示此特定p标记的名称为&#34; foobar&#34;。

什么是class

  

类全局属性是元素类的空格分隔列表。类允许CSS和Javascript选择和访问特定元素。

那是什么意思?请考虑以下事项:

<p>This is a text-node.</p>
<p class="foobar">This is another text-node.</p>

以上标记有2个段落元素。通过给它们中的一个class属性,我稍后可以确切地指定哪个段落标记或一组段落标记,我想给出特殊行为(例如颜色)。当你的标记变得非常大时,这种用处变得更加明显。

希望这能澄清一些事情。

答案 1 :(得分:0)

您的理解是正确的。在start标记中声明的属性是start标记的一部分。 HTMLXML都是如此。

要清楚,属性本身属于元素,而不是标签,因为标签只是一个元素声明(如果你没有更好的术语)。但是,attr=value表示法确实是开始标记的一部分。

就介绍性研讨会而言,属性的区别并不那么重要。更重要的是(我的意思是非常重要)是元素和标签之间的区别。