有时,浏览器会忽略两个HTML标记之间的空格和换行符,有时则不会。
我觉得两个线框之间的空格和换行显示,两个方框没有显示。但是一个线框和一个方框怎么样?
我想要规则或规范,你能告诉我吗?
答案 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 属性),从而改变网站的外观。