文档类型
2010年8月19日
16:32
使用以下DOCTYPE可使避免IE6进入怪异模式,不适用文档声明或使用HTML3以下的文档声明会是IE6进入向下兼容IE5的怪异模式
DOCTYPE (Document Type) 文档类型,说明 XML 或者 (x)HTML 的版本。
DTD (Document Type Definitions) 文档类型定义,浏览器根据 DTD 来解释页面标识,并展现出来。
DOCTYPE 通常(但不总是)包含指定的DTD文件的URL。浏览器一般不读取这些文件,而是只识别常见的 DOCTYPE 声明。
HTML 4.01 Transitional
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"/TR/html4/loose.dtd">
HTML 4.01 Frameset
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN"
"/TR/html4/frameset.dtd">
css去掉滚动条XHTML 1.0 Strict
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"/TR/xhtml1/DTD/xhtml1-strict.dtd">
XHTML 1.0 Transitional
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"/TR/xhtml1/DTD/xhtml1-transitional.dtd">
XHTML 1.0 Frameset
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN"
"/TR/xhtml1/DTD/xhtml1-frameset.dtd">
XHTML 1.1
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"/TR/xhtml11/DTD/xhtml11.dtd">
源文档<hi.baidu/jennior/blog/item/79eb1dfa8922539c59ee9057.html>
根据w3c关于stack level 的介绍可以得出以下stack level 规则
父级stacking context的背景、边界1.z-index值为负值的定位元素(值越小越在下)2.文本流中非定位的block块级子元素3.脱float 块的文本
4.文本流中非定位的float浮动子元素/文字元素
5.脱块文本/行内元素
6.z-index:auto/0的定位元素
7.z-index值为正的定位元素(值越大越在上)
8.每个stacking context都包括以下stack level (后来居上):IE 6/IE7的规则父级stacking context的背景、边界
1.z-index值为负值的定位元素(值越小越在下)
2.脱块文本脱float 块文本(ie7)/行内元素
3.未固定宽度文本流中非定位的block块级子元素
4.固定宽度文本流中非定位的block块级子元素/文本流中非定位的、float浮动子元素/文字
5.z-index:auto/0的定位元素
6.z-index值为正的定位元素(值越大越在上)
7.每个stacking context都包括以下stack level (后来居上):
垂直堆栈
2010年8月20日
10:58
IE6/7技巧
2010年8月24日
12:35
禁用IE6/7默认的垂直滚动条(Disabled IE default Vertical Scroll bar)
默认情况下,即使内容适合窗口大小,IE(译注:IE6/7)也会显示垂直滚动条。你可以使用overflow:auto,让滚动条只在你需要时出现。
代码:
html {
overflow: auto;
}
CSS hack
2010年8月20日
16:21
#select{
width:500px; /*DOM*/
+width:500px; /*for ie6/7 */
_width:500px; /*for ie6 */
width:500px !important; /* for not ie6 */
使用IE特有条件注释
微软给IE添加了条件注释以区分不同版本,任何东西都可以塞进条件注释里:标签、JavaScript、js文件、css、内联样式。可以使用条件注释来针对某一个IE浏览器版本来编写代码。
规则如下:(译注:可参考IE 特有注释(hack))
<p>这段文字会在所有浏览器显示</p>
<!--[if lte IE 6]>
<p>这段文字仅显示在 IE6及IE6以下版本。</p>
<p>This message will only appear in versions of Internet Explorer less than or equal to version 6.</p>
<![endif]-->
<!--[if gte IE 6]>
<p>这段文字仅显示在 IE6及IE6以上版本。</p>
<p>This message will only appear in versions of Internet Explorer greater than or equal to version 6.</p>
<![endif]-->
<!--[if gt IE 6]>
<p>这段文字仅显示在 IE6以上版本(不包含IE6)。</p>
<p>This message will only appear in versions of Internet Explorer greater than version 6.</p>
<![endif]-->
使用条件注释加载css的好处是这些样式是独立于其他css文件的,因此不会在编写兼容代码时弄得一团糟;而且当IE6的市场份额降低到不需要兼容时,可以快速的清理掉。
使用条件注释的唯一缺点是在IE浏览器下会增加额外的HTTP请求数,所以需要权衡是否这样做。但我不建议使用条件注释加载外部js文件,因为js文件会造成阻滞,在js未加载完之前其余文件都不会被加载;对于js请使用JavaScript程序来区分浏览器而非条件注释。
源文档</w3c/727>
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论