转载自
重庆PHP
原文地址:http://www.php-chongqing.com/index.php/article/64
要想写出跨浏览器的CSS,必须知道浏览器解析CSS的两种模式:标准模式(strict mode)和怪异模式(quirks mode)。
所谓的标准模式是指,浏览器按W3C标准解析执行代码;怪异模式则是使用浏览器自己的方式解析执行代码,因为不同浏览器解析执行的方式不一样,所以我们称之为怪异模式。浏览器解析时到底使用标准模式还是怪异模式,与你网页中的DTD声明直接相关,DTD声明定义了标准文档的类型(标准模式解析)文档类型,会使浏览器使用相应的方式加载网页并显示,忽略DTD声明,将使网页进入怪异模式(quirks mode)。
<html>
<head>
<title>重庆PHP</title>
</head>
<body>
<h3>重庆PHP,最专业的PHP社区</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>重庆PHP</title>
</head>
<body>
<h3>重庆PHP,最专业的PHP社区</h3>
</body>
</html>
上面的代码,浏览器会按HTML 4.01的标准进行解析。
到底标准模式和怪异模式有什么不同呢?在我之前的文章《IE到底认不认识!important声明》中已经说过,标准模式中
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">
使用标准模式来声明网页,是写出跨浏览器CSS的基础,你了解了吗?希望对你有用。
分享到:
相关推荐
* 问题:浏览器标准模式和怪异模式之间的区别是什么? * 解释:了解开发者对浏览器模式的理解和应用。 3. XHTML 的局限 * 问题:使用 XHTML 的局限有那些? * 解释:了解开发者对 XHTML 的理解和应用。 四、JS ...
4. 浏览器标准模式和怪异模式的区别:盒子模型和渲染模式的不同。 5. 文件优化解决方案:文件合并、文件最小化/文件压缩、使用 CDN 托管、缓存的使用等。 6. 语义化的 HTML 的作用:直观的认识标签,对于搜索引擎的...
2. 浏览器标准模式和怪异模式之间的区别:盒子模型和渲染模式的不同使用 window.top.document.compatMode 可显示为什么模式。 其他 1. 前端页面的三层构成:结构层 Html 表示层 CSS 行为层 js。 2. 标签上 title ...
**8、请谈一下你对网页标准和标准制定机构重要性的理解。** 网页标准提供了统一的设计和编码规范,确保了不同设备上的良好兼容性。W3C 是主要的标准制定机构之一,对于推动 Web 技术的发展至关重要。 **9、请描述...
例如,怪异模式(quirks mode)和标准模式(standard mode)就是根据文档类型而定的。 X-UA-Compatible meta 标签和头部是 HTML 文档中的 meta 标签和 HTTP 响应头,它们可以指定浏览器使用哪种渲染模式来渲染网页...
浏览器标准模式和怪异模式之间的区别主要在于对CSS解析的不同,标准模式尽可能地遵循标准,而怪异模式是为了保持早期浏览器的兼容性而采用的一套解析规则。 渐进增强(progressive enhancement)和优雅降级(graceful ...
文章不仅涵盖了浏览器渲染模式的选择机制,例如标准模式、准标准模式(几乎标准模式)、怪异模式,还涉及到了对于IE8+版本的支持情况及application/xhtml+xml MIME类型的特殊行为,并解释了浏览器模式和文档模式的...
浏览器标准模式和怪异模式之间的区别是什么? 标准模式会以标准模式解释页面,怪癖模式则以兼容模式解释老的页面。 说说HTML5有那些新特性,移除了哪些元素? HTML5 现在已经不是 SGML 的子集,主要是关于图像,位置...
浏览器模式是指IE浏览器用来确定如何解释和处理HTML和CSS的标准或模式。它影响着浏览器如何解析和渲染页面,以及如何处理条件注释等特性。浏览器模式还会影响发送给服务器的用户代理(User-Agent)字符串,这有助于...
主要有两种模式:标准模式(Standards mode)和怪异模式(Quirks mode)。标准模式遵循W3C的规范,而怪异模式则是为了兼容早期的浏览器行为。浏览器根据页面顶部的DOCTYPE声明来决定使用哪种模式。DOCTYPE的缺失或不正确...
在这种模式下,元素的content区域宽度等于`width`减去`2 * padding`和`2 * borderWidth`,这与W3C标准的盒模型(内容宽度包括padding和border)不同,导致布局计算错误。 2. **负margin问题**:IE6使用负margin可以...
本文将深入探讨标准模式、准标准模式和怪异模式,并介绍如何通过DOCTYPE声明来控制浏览器的行为。 首先,DOCTYPE声明是HTML文档开头的一行代码,它告知浏览器应以哪种模式来渲染页面。在标准模式中,浏览器遵循W3C...
浏览器 Quirksmode(怪异模式)与 CSS1compat 是一种浏览器渲染模式的概念,它们之间存在着一些区别和联系。Quirksmode 也称为 Compatibility Mode,是一种非标准的渲染模式,而 CSS1compat 则是标准的渲染模式,也...
资源名称:CSS基础知识...为了实现这一点,他们创建了两种表现形式:标准模式和怪异模式(quirks mode)。怪异模式通常模拟老式浏览器(比如IE6,在标准模式中 资源太大,传百度网盘了,链接在附件中,有需要的同学自取。
如果HTML文档没有正确的DTD(Document Type Declaration)声明,某些浏览器,如IE,会进入怪异模式,这可能导致页面布局严重偏离预期。因此,始终在文档开头添加DTD声明,如XHTML 1.0的`<!DOCTYPE ...
IE和Firefox对BOX模型的解析不同,IE使用“怪异盒模型”(包含边框和内填充的总宽度和高度),而Firefox等其他浏览器遵循“标准盒模型”(仅计算内容区域的宽度和高度)。解决办法是在CSS中使用`box-sizing:border-...
2. **选择正确的body或documentElement对象**:由于IE在标准模式和怪异模式下使用的对象不同,因此需要根据`document.compatMode`来决定使用哪个对象。 3. **获取滚动条位置**:对于IE浏览器,使用`IeTrueBody()....
DOCTYPE html>`,以触发浏览器的怪异模式和标准模式。 四、浏览器特定问题 1. IE的PNG透明问题:IE6不支持PNG24的透明,可以使用CSS滤镜解决,如`filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src...