Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/76.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
Html 关闭斜杠前的空格?_Html_Xml_Xhtml_Coding Style - Fatal编程技术网

Html 关闭斜杠前的空格?

Html 关闭斜杠前的空格?,html,xml,xhtml,coding-style,Html,Xml,Xhtml,Coding Style,在XML和HTML标记中,我经常看到在结束斜杠之前有一个空格。XHTML换行符可能是一个典型的示例: <br /> 我当然可以尊重不同的风格观点,因此我很高兴了解到,在空白处书写只是一个品味问题。我认为空白处是一种强化这种观念的方式,即这个标签是空的,它会自动关闭 今天我不再使用空白,因为我从来没有遇到过没有空白的问题。在XHTML中,br标记必须关闭。这是一种风格上的东西。在HTML中,br标记无法关闭,因此两者都是错误的。否,不需要空间,但对于一些较旧的浏览器来说,正确呈现这些

在XML和HTML标记中,我经常看到在结束斜杠之前有一个空格。XHTML换行符可能是一个典型的示例:

<br />

我当然可以尊重不同的风格观点,因此我很高兴了解到,在空白处书写只是一个品味问题。

我认为空白处是一种强化这种观念的方式,即这个标签是空的,它会自动关闭


今天我不再使用空白,因为我从来没有遇到过没有空白的问题。

在XHTML中,br标记必须关闭。这是一种风格上的东西。在HTML中,br标记无法关闭,因此两者都是错误的。

否,不需要空间,但对于一些较旧的浏览器来说,正确呈现这些标记是必要的。正确的方法是不使用额外的空间,因为这是XHTML从XML继承的内容。

空间只是使标记更具可读性。我是更具可读性代码格式的大力支持者。像这样的小事很重要。如果没有空格,结束标记将与开始标记混合。由于我正在快速阅读代码,所以处理它只需要一瞬间的时间。

答案是人们希望遵守的。如果你是,你只需要这样做。大多数人都这样做,因为XHTML的真正MIME类型(application/html+xml)在InternetExplorer中不起作用

当前浏览器不关心该空间。浏览器对这些事情非常宽容

用于确保HTML解析器将尾部斜杠视为无法识别的属性的空间

这些问题是否仍然相关,或者我们是否仍然为了IE3兼容性而添加额外的空间

你差一点-这是网景4


看到其他的合理化是很有趣的,但这就是它的全部目的。

如果有一个非常懒惰的html编写者在那里,或者他害怕引号,该怎么办。 如果你是他的机器人页面爬虫……请考虑下面的内容:

这可能看起来很小,但看看如果没有空间它能做什么。机器人不知道斜杠是url的一部分还是结束标记的一部分

支持Netscape 4.80的屏幕截图,显示文档

data:text/html,<title>space</title>foo<br />bar
data:text/html,spacefoo
bar
(左上角,渲染换行符)和

data:text/html,无空格键
bar
(左下角,忽略换行符)


作为答案发布以显示图片

切题相关:事实上,我有一个冗长的答案,在被误解的SGML规范(即,
12
)中确定了古代浏览器这种错误行为的原因(以及由此产生的包含空格的建议),但我不仅无法找到标准的良好证明和具体版本,我甚至不能掌握正确的标准行为。可供参考的原始链接太少:

  • 并指向
  • 声明, 但是,仍然有一些较小的用户代理正确地支持空结束标记。W3C验证器是支持它的一个更知名的用户代理

(现在无法复制,但支持Lee Kowalkowski关于受此影响的多个浏览器的声明。)

  • -最新规范草案,包括DTD代码段中的空结束标记参考:
    NET”/>“

“强化”是“强烈”的恰当词语,感谢您的关注。很高兴看到我们有人来确保写作质量。具体是哪种较旧的浏览器?我很想知道我们谈论的浏览器是否具有巨大的市场份额。我们不是。大多是IE5和更老的版本。你能更具体地描述一下“过去”吗?年份和/或浏览器版本就可以了,谢谢!我认为这是这个答案的一个更精确的链接。因此,似乎XHTML1.0附录C2实际上已经过时了,编写空格纯粹是一种习惯。抱歉,过去是指“是”——关于确保HTML解析器将尾部斜杠视为无法识别的属性,并非所有HTML解析器都是浏览器。我不想冒险猜测哪种浏览器版本会被阻塞(如果有的话),但我不记得IE4或Netscape 4抱怨过。实际上真正的mime类型是application/xhtml+xml。@JanAagaard:我不知道,如果是的话,我会记得的-我开始在IE4和Netscape 4上进行web开发。你链接到的那个答案也有这样的评论,它说它实际上是Netscape 3。谢谢!你能提供一个参考吗?嗯,很难找到这么老的原始资料。。。W3官方材料避免提及任何一个UA,列表中的讨论似乎将情况视为已阅读。可能还有其他UAs也需要这个空间,但N4是最后一个,它给网站管理员带来了多年的麻烦。所以你的XHTML文档也可以在Netscape上呈现。具体来说,它是用于断开标记和图像标记的。主要来源:10年前,我为IE4和NS3的兼容性编写代码。我已经习惯了,
看起来比
好得多,但无论如何,url周围都应该有引号。文件上说你应该有一个空间。
void it_goes_up_here() {

int no_you_fool_it_goes_down_there()
{
data:text/html,<title>space</title>foo<br />bar
data:text/html,<title>no space</title>foo<br/>bar