CSS中的“曲线边框强制子元素遵守父元素边框”
问题:
在HTML中,子元素被放置在父元素内部,并且父元素具有曲线边框。然而,子元素会超出父元素的曲线边框范围。如何让子元素遵守父元素的曲线边框?
CSS代码样例:
<code class="css">#outer { display: block; float: right; margin: 0; width: 200px; background-color: white; overflow: hidden; border-radius: 10px; } #inner { background-color: #209400; height: 10px; border-top: none; }</code>
答案:
根据CSS3规范:
被替换元素的内容总是修剪到内容边缘曲线。
这意味着在父元素#outer上设置overflow:hidden应该有效。然而,这在Firefox 3.6及更低版本中不起作用。该问题已在Firefox 4中修复:
圆角现在剪切内容和图像(如果未设置overflow:visible)。
因此,解决方法应该是:
<code class="css">#outer { overflow: hidden; } #inner { -moz-border-radius: 10px 10px 0 0; }</code>
此解决方案适用于Firefox 3.6及更低版本。
以上是CSS中如何让子元素尊重父元素的弯曲边框?的详细内容。更多信息请关注PHP中文网其他相关文章!