我在另一个div里面有一个div。#outer
和#inner
。#outer
有弯曲的边界和白色的背景。#inner
没有弯曲的边界和绿色背景。#inner
扩展到#outer
的弯曲边界之外。有办法阻止吗?
#outer {
display: block;
float: right;
margin: 0;
width: 200px;
background-color: white;
overflow: hidden;
-moz-border-radius: 10px;
-khtml-border-radius: 10px;
-webkit-border-radius: 10px;
border-radius: 10px;
}
#inner {
background-color: #209400;
height: 10px;
border-top: none;
}
不管我怎么试,还是会重叠。如何使#inner
服从并填充到#outer
的边界?
编辑
下面的黑客现在达到了目的。但是问题仍然存在(可能对CSS3和web浏览器的作者来说):为什么子元素不遵守父元素的弯曲边界,是否有办法强迫它们这样做?
现在解决这个问题的方法是,你可以将曲线分配给单独的边界。为了达到我的目的,我只是给内元素的上面两个元素分配了一条曲线。
#inner {
border-top-right-radius: 10px; -moz-border-radius-topright: 10px; -webkit-border-top-right-radius: 10px;
border-top-left-radius: 10px; -moz-border-radius-topleft: 10px; -webkit-border-top-left-radius: 10px;
}