元素的闭合标签中的属性是什么意思?

4
以下操作是否有效?
<li>stuff</li class="randomlengthclassname">
<li>stuff</li class="shortclassname">
<li>stuff</li class="reallyreallylongarseclassname">

或者属性必须放在起始标签中吗?

3
不,这是无效的。是的,它们必须是的。 - Yi Jiang
这个回答解决了你的问题吗?我可以在闭合标签上使用属性吗? - Inigo
5个回答

9

不是这样的。您必须在开标签中使用属性。

w3c验证器中运行<a>test</a href="tst.html">会导致以下错误:

名称起始字符无效:只允许在此处使用S分隔符和TAGC

S分隔符和TAGC是:

    S is "whitespace" separator

    [5] s =

        SPACE | (32) space
        RE | (13) CR
        RS | (10) LF
        SEPCHAR (9) HT

            -- http://xml.coverpages.org/sgmlsyn/sgmlsyn.htm#C6.2.1

    TAGC    ">"

            -- http://www.w3.org/TR/sgml.l

5
这是不合法的,所有属性必须在开标签中定义。

2
该属性必须在开标签中使用。您提供的代码可能无法正常工作。

2
属性应该出现在元素的起始标签中。引用W3C:关于 SGML 和 HTML 属性的说法:

… 属性/值对出现在元素起始标记的最后一个“>”之前。任意数量(合法的)属性值对,由空格分隔,可以出现在元素的起始标记中。它们可以以任何顺序出现。


0

闭合标签内不能包含属性。 但在HTML4中,您可以省略闭合的LI标签:

<!ELEMENT LI - O (%flow;)*             -- list item -->
<!ATTLIST LI
  %attrs;                              -- %coreattrs, %i18n, %events --
  >

Start tag: required, End tag: optional

在XHTML中,你可能不行。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接