要在我的容器元素上创建圆角,我使用此css …
border-radius:12px; -moz-border-radius: 12px; -webkit-border-radius: 12px;
但是,IE似乎没有识别和解释border-radius属性(至少版本为7-8,显然是版本9的版本).
有没有一种解决方法可以完全用css(没有脚本,没有额外的标记)?
对于Javascript / jQuery解决方案:我会使用基于这些的解决方案,如果我可以包含一个可以读取我的CSS的脚本,解释border-radius属性(包括border-top-left-radius,border-top-right-半径),并相应地应用角.这存在吗?
解决方法
据我所知,IE< 9在纯CSS中无法做到这一点. 据记载,IE9具有边界半径支持. 有
Javascript workarounds
available,但正如你所说,你不想实现它们,你有点卡住了.
除非你想使用图像,否则如果你有静态大小元素,这种方法很有效,但如果它们改变大小则不起作用.
除此之外,我没有任何纯粹的CSS解决方案,没有大量的hacky标记.
更新:
我已经链接到一个可以为你做这个的资源,CurvyCorners jQuery将检测DOM元素上-webkit-border-radius和moz-border-radius的使用,并使用一系列没有的小DIV复制IE中的效果图片.您还可以告诉它将效果应用于特定元素.
更新#2:
在Spudley建议检查CSS3Pie后,我非常建议这样做,因为它使用仅适用于IE的CSS属性行为,所以它不会与其他浏览器混在一起,这也就是说没有hacky标记添加到您的页面(Curvy Corners添加许多小div)并且不使用图像.
希望能帮助到你 :)