关于HTML源代码中的空格和换行符

时间:2011-01-17 15:08:05

标签: javascript html css

有时,浏览器会忽略两个HTML标记之间的空格和换行符,有时则不会。

我觉得两个线框之间的空格和换行显示,两个方框没有显示。但是一个线框和一个方框怎么样?

我想要规则或规范,你能告诉我吗?

2 个答案:

答案 0 :(得分:5)

通常,浏览器会忽略额外的空白区域(额外的多个空格)。

如果两个内联元素之间至少有一个空格,那么浏览器将渲染一个空格(但无论你有多少空间,都只有一个空格)。如果要显示多个空格,请使用html字符代码 。这将根据您的需要呈现尽可能多的空间。 (尽管Pointy指出,使用CSS进行间距要好得多)

对于换行符,某些浏览器(例如firefox)会将换行符视为空格(无论您有多少换行符都会添加一个空格)。但是,其他浏览器(例如Internet Explorer)将完全忽略换行符。要强制浏览器呈现换行符,请使用<br>标记。

我希望清除一切!

答案 1 :(得分:1)

规范说所有空格,制表符和换行符都被解释为单词分隔符。因此,无论您拥有多少空格,制表符和换行符,它都只会呈现为单个空格。

唯一的例外是 pre -tag。显示预标签中的空格,换行符和制表符。您可以通过应用规则 white-space:pre 将每个标记设置为预标记。

规格:http://www.w3.org/TR/html401/struct/text.html#h-9.1

为了显示换行符,浏览器会检查内容的类型(内联或阻止)。如果它是内联的(强,em,a,...),它不会显示换行符。如果它是一个块(p,table,div,...),它会在元素之前和之后显示换行符。

再次使用css,您可以更改块类型(使用 display 属性),从而改变网站的外观。