为什么是一个元素,而不是一个实体?

时间:2012-02-06 02:18:15

标签: html w3c line-breaks

  

可能重复:
  Why is <br> an HTML element rather than an HTML entity?

为什么HTML中的换行元素<br>而不是实体,例如&br;?在许多方面,它似乎不适合成为一个元素(例如,与普通HTML元素具有不同的节点类型属性,与它所做的类似于&nbsp;。)

2 个答案:

答案 0 :(得分:11)

HTML中的空格呈现为一个字符空间,与空白量无关。这有助于标记作者身份而不会影响标记呈现。

&LT峰; br /&GT;不是显示字符,而是格式说明格式影响内容含义的格式说明符。 HTML 5规范声明它“必须仅用于实际上是内容部分的换行符,如诗歌或地址。”

答案 1 :(得分:-1)

来自spec *

  

br元素表示换行符。

     

虽然换行符通常在视觉媒体中表示   将后续文本物理移动到新行,样式表或用户   代理在引起换行符时同样合理   以不同的方式,例如绿点或额外的方式   间距。

     

br元素必须仅用于实际部分的换行符   内容,如诗歌或地址。

因此它明确指出可以将换行符设置为其他内容,从而证明为什么它不是实体。它确实让我认为应该有两种方式来添加换行符 - 作为实体&br;或标签<br>,从而为作者提供关于换行符是否可以设置的灵活性。上面的陈述 - 等同于在诗歌和地址中使用换行符 - 如果你问我,就会有点夸张。

*不确定它是 规范,但肯定是 a 规范