Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/81.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/14.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
XML/HTML标记中的空白_Html_Xml_Tags - Fatal编程技术网

XML/HTML标记中的空白

XML/HTML标记中的空白,html,xml,tags,Html,Xml,Tags,我知道XML和HTML的文本节点中如何处理空白,但我不确定标记元素本身中的空白。显然,在标记中使用空格来分隔属性,但在“”之后使用空格是否有效 例如: < foo > < /foo > 甚至: <foo> < / foo > 这些标记是否有效?假设它们是实际的HTML标记名,那么HTML呢?都是标记,因此这两个字符之间的空白将是语法错误。而且,在开始标记和名称之间不允许有空格。但是在元素标记和结束标记之间添加空格是可以的 编辑

我知道XML和HTML的文本节点中如何处理空白,但我不确定标记元素本身中的空白。显然,在标记中使用空格来分隔属性,但在“”之后使用空格是否有效

例如:

<  foo  >
< /foo >


甚至:

<foo>
< /  foo >


这些标记是否有效?假设它们是实际的HTML标记名,那么HTML呢?

都是标记,因此这两个字符之间的空白将是语法错误。而且,在开始标记和名称之间不允许有空格。但是在元素标记和结束标记之间添加空格是可以的

编辑以反映Guffa对XML规范的正确引用。

表示,
'
之间没有空格。您可以在标记名称后添加空白,但:

<foo            >
</foo        >
<bar
/>

正如Guffa所描述的那样,HTML[5]标准似乎与XML标准完全一致


您不能以空格开头,但可以(可选)以空格结尾(在第二个尖括号之前,它关闭第一个标记)。

然后将长HTML标记拆分为单独的行是否有效?例如:
(新行)
——例如,在长标记中包含PHP代码的情况下,使其更可读。@fakaff:是的,这是有效的。换行符、制表符和空格都是空白字符,在标记名之后和属性之间(甚至在属性中的
=
周围)可以有任意多的空白。这个答案不会给现有的字符添加任何内容。@Pyves和您的注释;)