IE9中<a>的边界半径错误

ada*_*onk 13 css css3 internet-explorer-9

看到<div>元素正确渲染边框/边框半径,但任何<a><button>具有背景,边框和边框半径设置的元素都将背景颜色或图像显示为正方形,并且只有边框为圆形.尝试设置<a><button>display: blockdisplay: inline-block,但没有奏效.

有一个已知的解决方法吗?

以下是Webkit计算样式的链接:https://gist.github.com/773719

替代文字

这是IE9开发工具的计算样式: 替代文字

更新 使用过滤器:; 或-ms-filter:; IE中具有渐变的属性使背景突破定义的border-radius.

小智 1

也遇到了这个问题。基于“过滤器”的渐变实际上并不是背景图像,因为它是 CSS3 渐变,它是一个额外的层。IE 团队显然还没有抽出时间将这些过滤层剪裁成圆角。奇怪的是,很明显人们会制作这样的按钮。

将旧功能与新功能进行映射一定很痛苦。对他们来说,在 CSS 中实现渐变可能会更好。我宁愿添加前缀也不愿添加旧过滤器。