Internet Explorer 8 中的 CSS 改进

Internet Explorer 8 完全符合级联样式表 (CSS) 的 CSS2.1(级别为 2,修订号为 1)规范,并支持 CSS 级别 3 (CSS3) 的某些功能。 本主题包含 Internet Explorer 8 中对 CSS 支持所做更改的完整列表。有关最新版本的 Internet Explorer 中的 CSS 合规性概要,请参见CSS 合规性和 Internet Explorer(可能为英文网页)?。
- 兼 容性说明
- At 规则
- 伪 类和伪元素
- 列 表
- 颜 色和背景
- 字 体和文本
- 生 成的内容
- 边 框和布局
- 浮 动
- 边 距折叠
- 定 位
- 打 印
- 用 户界面
- Internet Explorer 特有的功能
- CSS 表达式
- CSS 的扩展
- 数 据 URI
- 相 关主题
兼容性说明
只有在页面采用 IE8 模式(或带有 Internet Explorer 8?!DOCTYPE?指令的 EmulateIE8 模式)时,本主题描述的 Internet Explorer 8 中对 CSS 合规性所做的更改才会起作用。 有关文档兼容性模式的详细信息,请参见定义文档兼容性(可能为英文网页)?。
At 规则
@page?规则现在可以按预期方式与?
:first?、:left?和?:right?选择器一起工作。伪类和伪元素
Internet Explorer 8 引入了对以下伪类和伪元素的支持:
- :before?和?:after?? 可以将这些伪类与最新支持的?content?属性结合使用,以描述要在文档中的元素前后显示的动态(“生成的”)内容。
- :focus??? 此伪类适用于元素具有输入焦点的情况。
- :lang(C)??? 此伪类选择使用给定语言的元素。
此外,:active?伪类的行为现在完全符合 CSS 2.1;此伪类现在适用于所有元素,而不仅仅适用于?a?元素。
列表
已向?list-style-type?属性添加了一些附加值,从而使此属性完全符合 CSS 2.1。
颜 色和背景
background-position?属性的行为现在完全符合 CSS 2.1。
字 体和文本
以下文本属性的行为现在完全符合 CSS 2.1:
- font-weight
- white-space?(新增对?
pre-wrap?和?pre-line?值的支持) - word-spacing
此外,text-decoration?属性的上划线行为现在更接近于符合 CSS 2.1 规范。
生成的内容
Internet Explorer 8 引入了对生成内容的完全支持,其中包括下列属性:
- content
- counter-increment
- counter-reset
- quotes
通过将最新支持的?:before?和?:after?伪类与内容属性结合使用,可以描述要在文档中的元素前后显示的动态(“生成的”)内容。
边框和布局
Internet Explorer 8 引入了对以下内容的支持:
- 单 独的边框模型(border-spacing?属性)
- 标题定位和对齐(caption-side?属性)
以下属性的行为现在完全符合 CSS 2.1:
- border-collapse
- border-style
- empty-cells
浮动
已对浮动?行为进行很多更改,解决 了使用以前版本的 Internet Explorer 时遇到的最令人困扰的很多浮动问题,包括由?hasLayout?属性的要求导致的问题。 Internet Explorer 8 中删除了 hasLayout 功能。以下是一些已经解决的问题:
- 已清除元素不会清除其他嵌套的浮动元素(如果它们不共享一个父级)。
- 浮动元 素后面的已清除元素的上填充加倍。
边距折叠
已对边距折叠行为进行很多更 改,解决了使用以前版本的 Internet Explorer 时遇到的最令人困扰的很多折叠问题,并使边距折叠行为符合 CSS 2.1 规范。
定位
以下定位属性的行为现在完全符合 CSS 2.1:
- bottom
- clip
- display
- left
- right
- top
- z-index
display 属性现在支持?W3C 级联样式表级别 2.1 规范?
?中的 ruby 样式。打印
Internet Explorer 8 引入了对以下打印属性的支持:
- page-break-inside
- widows
- orphans
有关 CSS 打印功能的详细信息,请参见?CSS 操作方法 - 使用 CSS 优化打印页面(可能为英文网页)?。
用户界面
Internet Explorer 8 引入了对?outline?属性的支持,使用这些属性可以在不影响元素大小的情况对元素进行突出显示。 这包括对以下属性的完全符合 CSS 2.1 的支持:
- outline
- outline-color
- outline-style
- outline-width?。
此外,Internet Explorer 8 还引入了对?box-sizing?属性的支持。
Internet Explorer 特有的功能
本节将描述 CSS 2.1 规范未定义的行为。
CSS 表达式
出于标准合规性和性能方面的原因,在采用 IE8 模式(或带有 Internet Explorer 8?!DOCTYPE 指令的 EmulateIE8 模式)的 Internet Explorer 8 中已停止支持“CSS 表达式”(即,动态属性?)。 不过,对于采用 IE7 模式、EmulateIE7 模式或 IE5 模式的页面,这些动态属性在 Internet Explorer 8 中仍将按预期方式起作用。 有关文档兼容性模式的详细信息,请参见定义文档兼容性(可能为英文网页)?。
CSS 的扩展
下列 CSS 属性是 Microsoft 针对 CSS 2.1 规范的扩展,在 IE8 模式中,应使用 -ms- 前缀进行指定:
- -ms-accelerator
- -ms-background-position-x
- -ms-background-position-y
- -ms-behavior
- -ms-filter
- -ms-ime-mode
- -ms-layout-flow
- -ms-layout-grid
- -ms-layout-grid-char
- -ms-layout-grid-line
- -ms-layout-grid-mode
- -ms-layout-grid-type
- -ms-line-break
- -ms-overflow-x
- -ms-overflow-y
- -ms-scrollbar-3dlight-color
- -ms-scrollbar-arrow-color
- -ms-scrollbar-base-color
- -ms-scrollbar-darkshadow-color
- -ms-scrollbar-face-color
- -ms-scrollbar-highlight-color
- -ms-scrollbar-shadow-color
- -ms-scrollbar-track-color
- -ms-text-align-last
- -ms-text-autospace
- -ms-text-justify
- -ms-text-kashida-space
- -ms-text-overflow
- -ms-text-underline-position
- -ms-word-break
- -ms-word-wrap
- -ms-writing-mode
- -ms-zoom
数据 URI
通过使用数据统一资源标 识符 (URI),网页作者可以直接在 URI 中嵌入小型实体,而不必使用 URI 来标识要从中检索该实体的位置。 此操作主要适用于在 CSS 或布局中使用的小图像(如项目符号)。 有关更多信息,请参见数据协议(可能为英文网页)?。
相关主题
- CSS 兼容性和 Internet Explorer(可能为英文网页)
原文来自:MSDN
?
- CSS 兼容性和 Internet Explorer(可能为英文网页)
?中的 ruby 样式。