正 文

Internet Explorer 6 中的 CSS 增强功能


www.7dspace.com  更新日期:2005-10-11 8:31:22  七度空间


更严格的样式表分析

本节列出了 Internet Explorer 6 或更高版本在样式表分析方式上的变化。

当您使用 !DOCTYPE 声明打开符合标准的模式时,Internet Explorer 6 或更高版本会忽略不符合 CSS1 的样式表声明。更早版本的 Internet Explorer 允许您使用某些无效的声明,如在一个十六进制 RGB 值的开头遗漏了前导“#”符号。

样式表中的注释

根据 CSS1,您可以在样式表中使用文本注释,这种注释与 C 编程语言中使用的注释相似。C 语言注释以“/*”开始,以“*/”结束。对于更早版本的 Internet Explorer,您可以在样式表中使用 C 语言注释,也可以使用 HTML 注释。HTML 注释以“”结束。

下面的示例显示了 C 语言注释与 HTML 注释的区别。

/* Use C language comment blocks like this in your style sheets. */
<!-- Do not use HTML comments like this in your style sheets. -->

当您使用文档中的 !DOCTYPE 声明打开符合标准的模式时,对于 Internet Explorer 6 或更高版本,只允许 C 语言注释,但是有一点例外。那就是,您可以将样式表规则包含在一个 HTML 注释中。样式表可以包含在 HTML 注释块中,这样是为了让低级别的浏览器不会显示样式表中的文本。下面的示例演示了 HTML 注释在一个嵌入式样式表中唯一可接受的用法。

<style>
<!--
  /* begin rules */
  H1.blue  { background-color:blue }
  .
  .
  .
  /* end rules */
-->
</style>

速记属性中的不可识别标记

根据 CSS1,当一个速记属性中存在不可识别标记时,整个速记属性设置都会被忽略。例如,"text-decoration: underline cross-out" 会被忽略,这就是因为“cross-out”是 text-decoration 属性的不可识别值。文本甚至不会添加下划线。

对于更早版本的 Internet Explorer,声明的分析在遇到第一个不可识别值时结束。因此,"text-decoration: underline cross-out overline" 可以使得文本添加下划线,但是不会添加上划线。上述情况会影响下列属性:font、background、background-position、text-decoration、margin、padding、border、border-top、border-right、border-bottom、border-left、border-color、border-width、border-style、list-style-image、list-style、clip、behavior、text-autospace 和 layout-grid。

部分字体属性设置

根据 CSS1,font 声明必须至少指定 font-size 和 font-family。例如,因为 "font: 14pt" 虽然具有 font-size,但是没有 font-family,所以它会被忽略。更早版本的 Internet Explorer 接受部分字体设置。

RGB 颜色缺少“#”字符

根据 CSS1,使用十六进制 RGB 值指定的颜色必须带有一个前导“#”符号。与更早版本的 Internet Explorer 一样,像 "FFFFFF" 这样的值会被忽略,而不会将其按照 "#FFFFFF" 进行处理(也称为 white)。上述情况会影响接受颜色值的所有属性。

缺少单位类型标识符会被视为像素值

根据 CSS1,长度值必须指定一个单元类型标识符,如 cm、mm、in、pt、pc 或 px。不带单位类型标识符的值,以及数字和单位类型标识符之间存在空格的值会被忽略。更早版本的 Internet Explorer 会将不带任何单位类型标识符的数字视为像素单位 — 就好像在该字符串后面附加了“px”一样。

在下面的示例中,当 !DOCTYPE 声明打开符合标准的模式时,两个属性都会被忽略。第一个属性之所以被忽略,是因为没有单位属性标识符。第二个属性被忽略则是因为数字和单位类型标识符之间存在空格。更早版本的 Internet Explorer 处理第一个属性的方式就好像该数字后面附加了“px”一样。第二个属性中数字和单位类型标识符之间的空格会被更早版本的 Internet Explorer 忽略。

DIV.Rachel { width: 817; height: 11 cm; }

注此规则有一个例外。line-height 会显式接受不带单位的数字,并且将其按照与百分比设置相似的方式进行处理。例如,"line-height: 2" 与 "line-height: 200%," 相似,只是数字继承方式有所区别。

带引号的关键字

根据 CSS1,样式表中的关键字标记不能加引号,例如,按名称指定的颜色(如 "red,")或已知属性值(如 "small-caps,")。在下面的示例中,这两个属性都会被忽略。更早版本的 Internet Explorer 会忽略引号,并应用这些关键字标记。

DIV.George { color: "red"; font-variant: "small-caps";}

注脚本语言在字符串两边仍然需要加引号。

以数字开头的 CLASS 和 ID 值

根据 CSS1,CLASS 或 ID 属性的值不能以数字 (0-9) 开头。更早版本的 Internet Explorer 允许这些值以数字开头。

区分大小写的 CLASS 和 ID 值

根据 HTML 4.0,CLASS 和 ID 属性的值区分大小写。

6页,页码:[1] [2] [3] [4] [5] [6] 

上一篇:微软中年危机:盖茨如何教会大象跳舞
下一篇:SQLXML
作者:Lance Silver  来源:MSDN ( 责任编辑:7dspace )
收藏此页】【打印】【关闭
站 内 搜 索
 

热 点 导 读
特 别 推 荐