zoukankan      html  css  js  c++  java
  • 浏览器的标准模式和怪异模式

    要想写出跨浏览器的CSS,必须知道浏览器解析CSS的两种模式:标准模式(strict mode)和怪异模式(quirks mode)。

    标准模式: 浏览器按W3C标准解析执行代码;

    怪异模式: 使用浏览器自己的方式解析执行代码,因为不同浏览器解析执行的方式不一样,所以我们称之为怪异模式。

    浏览器解析时到底使用标准模式还是怪异模式,与你网页中的DTD声明直接相关。

    DTD声明定义了标准文档的类型(标准模式解析)文档类型,会使浏览器使用相应的方式加载网页并显示;

    忽略DTD声明,将使网页进入怪异模式(quirks mode)。

    <html>
        <head>
            <title>怪异模式</title>
        </head>
        <body>
            <h3>没有申明DTD!</h3>
        </body>
    </html>

      如果你的网页代码不含有任何声明,那么浏览器就会采用怪异模式解析,便是如果你的网页代码含有DTD声明,浏览器就会按你所声明的标准解析。

    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
        <head>
            <title>标准模式</title>
        </head>
        <body>
            <h3>按照申明的DTD标准来解析</h3>
        </body>
    </html>
    上面的代码,浏览器会按HTML 4.01的标准进行解析。
     
    到底标准模式和怪异模式有什么不同呢?
     
    标准模式中: IE6不认识!important声明,IE7、IE8、Firefox、Chrome等浏览器认识;
    怪异模式中: IE6/7/8都不认识!important声明,这只是区别的一种,还有很多其它区别。
     
    所以,要想写出跨浏览器的CSS,你必须采用标准模式。好像太绝对了,呵呵。好吧,要想写出跨浏览器CSS,你最好采用标准模式。
     
    到底都有哪些声明呢?哪种声明更好呢?我们建议你使用XHTML 1.0最严格模式
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
     
    如果你接手的是一个遗留网页,最初并没有DTD声明,并且使用了很多在XHTML中已经废除的标签,那么,我们建议你使用XHTML兼容模式,声明如下:
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
  • 相关阅读:
    E3-1230和E3-1230 V2有多神?
    自己制作 SPx N合1 自动安装盘(x86)
    ARP防火墙绑定网关MAC地址预防ARP攻击和P2P终结者
    完全备份、差异备份和增量备份的权威解释!!!
    Win7 SP1语言包微软官方下载地址及使用方法 2
    Windows 7 不同安装模式简要区别(图解)
    Windows PE3.0制作方法(从Win7中提取制作)
    摄影初学者挑选相机的常见问题 FAQ
    提升域用户帐户在本地计算机上的权限
    Oracle重置序列
  • 原文地址:https://www.cnblogs.com/douglasvegas/p/5722497.html
Copyright © 2011-2022 走看看