pre(html标签)和white-space之间的区别:preline line omission

Zac*_*ary 3 html css

我认为pre(html标签)活跃就像'white-space:pre'.但事实并非如此.

<pre>
aaa
bbb
</pre>

<p style="white-space:pre;">
aaa
bbb
</p>
Run Code Online (Sandbox Code Playgroud)

<pre>忽略第一个和最后一个\n.但<p>保留第一个\n并忽略最后一个.为什么?

jsfiddle测试

Šim*_*das 5

HTML标准规定:

注意:在HTML语法中,将删除紧跟在pre元素开始标记之后的前导换行符.

在这里阅读:http://www.whatwg.org/specs/web-apps/current-work/multipage/grouping-content.html#the-pre-element

因此,该<pre>元素包含此特殊规则.似乎如果其他类型的元素具有white-space:pre设置,则该规则不适用.