Css 使边界半径覆盖内部分区

Css 使边界半径覆盖内部分区,css,Css,我在一个网页上有一个尾波滑块(手工制作,不使用插件,但这无关紧要),外部div有一个边界半径 一堆内部div有背景色,但当我希望它们位于圆角后面时,它们会突出在角的顶部 有什么办法可以做到这一点吗?我发现,如果我在元素上添加溢出:隐藏,WebKit会裁剪所有内容,但Gecko不会(请参阅)。在Gecko中,我能做的最好的事情就是在内部div中也添加一个边界半径,或者在包装div中添加一个边距/填充,使内部div位于角的下方。如果将position:static应用于带有overflow:hidd

我在一个网页上有一个尾波滑块(手工制作,不使用插件,但这无关紧要),外部div有一个边界半径

一堆内部div有背景色,但当我希望它们位于圆角后面时,它们会突出在角的顶部


有什么办法可以做到这一点吗?

我发现,如果我在元素上添加
溢出:隐藏
,WebKit会裁剪所有内容,但Gecko不会(请参阅)。在Gecko中,我能做的最好的事情就是在内部div中也添加一个边界半径,或者在包装div中添加一个边距/填充,使内部div位于角的下方。

如果将position:static应用于带有overflow:hidden的元素,您将获得所需的结果


检查一下:

那么这是唯一的方法了?我怀疑Gecko真的应该尊重溢出:隐藏,但它还没有完全实现。在规范最终确定之前,很难说这两种方法。我在MDC wiki上问了一个问题,Jürgen Jeka指出了我的缺陷:找到了一种在Firefox中使用SVG剪辑获得圆角的方法:在图像元素上测试,应该适用于任何内容。在IE10开发预览中也适用(因此可能甚至9个-没有测试)它与Firefox 3.6.11兼容,溢出:隐藏。在3.6.14中不适用于我。你在用什么操作系统?你有圆角或直角吗?这恰好是原因。在我看来,解决方案是在position:absolute div中使用position:static(或保留默认值)包装一个div。