Unicode有很多whitespace characters(换行符,制表符,各种宽度的空格,控制字符)。
他们所有是否算作HTML中的空格?即。他们都被折叠成一个空间吗?或者像空格和发空间这样的东西处理方式不同?
答案 0 :(得分:1)
HTML 4.01明确says它没有定义除Ascii空间,Ascii选项卡,换页符和零宽度空间之外的空格字符的呈现。因此,EM SPACE和HAIR SPACE等字符没有定义渲染。
在实践中,浏览器使用所用字体中可用的(空)字形来渲染它们,因此只要浏览器可以找到包含它们的某种字体,它们就会按预期“工作”。
浏览器执行此操作,以便将此类字符视为与普通可打印字符相同的方式。实际上,它们就像字母,占据一定的宽度,但是空的。这意味着它们根本没有折叠,并且它们没有被证明是合理的(text-align: justify
)。
因为这是未指定的,所以不能保证事情不会改变。因此,使用CSS创建任何所需的间距通常更安全(可能添加了额外的内联标记)。
HTML5草稿中似乎没有任何澄清或更改。