HTML5+CSS3+JavaScript从入门到精通:上册(微课精编版·第2版)
上QQ阅读APP看书,第一时间看更新

1.2.2 支持已有内容

XHTML 2.0最大的问题就是不支持已经存在的内容,这违反了Postel法则(即对自己发送的内容要严格,对接收的内容则要宽容)。现实中,开发者可以写出各种风格的HTML,浏览器遇到这些代码时,在内部所构建的结构应该是一样的,呈现的效果也应该是一样的。

【示例】下面代码展示了编写同样内容的4种不同写法,4种写法唯一的不同点就是语法。

    <!--写法1-->
    <img src="foo" alt="bar" />
    <p class="foo">Hello world</p>
    <!--写法2-->
    <img src="foo" alt="bar">
    <p class="foo">Hello world
    <!--写法3-->
    <IMG SRC="foo" ALT="bar">
    <P CLASS="foo">Hello world</P>
    <!--写法4-->
    <img src=foo alt=bar>
    <p class=foo>Hello world</p>

从浏览器解析的角度分析,这些写法实际上都是一样的。HTML5必须支持已经存在的约定,以适应不同的用户习惯,而不是要求用户适应浏览器的严格解析标准。