IE6 IE7 IE8(Q) 不支持 'outline' 特性

标准参考

关于 'outline' 特性

'outline' 可用于创建可视化对象的轮廓,例如按钮的轮廓;也可以激活表单的域等等。

它与 'border' 属性的不同之处在于:

  • 它不占据文档空间;
  • 它可能不是矩形的。

它是 'outline-style' , 'outline-width', 和 'outline-color' 的缩写。

关于 'outline' 的详细信息,请参考 CSS2.1 规范 18.4 Dynamic outlines: the 'outline' property 中的内容。

问题描述

CSS 2.1 规范中描述的 'outline' 特性,在 CSS 1 历史规范中没有规定,这导致早期版本的浏览器,如:IE6 IE7 IE8(Q) 中 'outline' 特性并不被支持,直到 IE8(S) 才修复了这个问题。

造成的影响

可能会使轮廓或高亮边缘等显示不出来,不会影响布局。

受影响的浏览器

IE6 IE7 IE8(Q)不支持 'outline' 'outline-style' 'outline-width' 'outline-color'

问题分析

对于此问题,我们通过以下的测试用例来说明。

分析以下代码:

<div style="outline:1px solid red;">
  Hello!
</div>
  • DIV 的 'outline' 被设置为1像素的红色轮廓

根据 CSS2.1 规范中的描述可知,文本 'Hello!' 应该有红色的轮廓。

这段代码在不同的浏览器环境中的表现:

IE6 IE7 IE8(Q)IE8(S) Firefox Opera Safari Chrome

所以对于 'outline' 以及 'outline-width' 'outline-color' 'outline-style' 的支持情况,如下表:

IE6 IE7 IE8(Q)IE8(S) Firefox Safari Opera Chrome
NY

解决方案

由于 'outline' 特性不影响盒模型及文本流,所以使用此特性时,在不支持的 IE6 IE7 IE8(Q) 中不会出现影响布局的兼容性问题,只会在较小的程度上影响视觉效果,暂时没有好的替代方案。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值