<div>:无边框</div>时裁剪背景渐变

时间:2013-07-18 14:44:38

标签: css html crop linear-gradients

请考虑以下代码:http://jsfiddle.net/A98vk/

包装div有两个(左上角和右上角)圆角。第二个div是直接嵌套的,我想给它一个背景渐变。

我遇到的问题是,当css属性border不存在或设置为0或{{}时,背景线性渐变(很抱歉只添加webkit版本,我有Chrome)会被裁剪1}}。当我重新设置属性时,问题就解决了。

任何人都可以告诉我它有什么问题吗? 我知道我可以设置0px [any params],但这对我来说似乎是一种解决方法。

2 个答案:

答案 0 :(得分:5)

保证金崩溃正在发生。有关stackoverflow上的margin-collaps的大量问题/答案。我自己回答了一个(可能更多):Adding CSS border changes positioning in HTML5 webpage

基本上h1的边距“崩溃”,而是应用于周围的标题。没有背景被裁剪。标题只会变小。

元素边距在它们之间没有任何内容时会崩溃。当你在那里添加边框时,你会在它们之间添加一些东西,因此没有边缘崩溃。

还有一点了解这一点,包括其他方法来阻止边缘崩溃。您可以查看我上面的答案,或者只是将其谷歌搜索,以获得更详细的解释。

答案 1 :(得分:1)

您可以将overflow:auto(或hidden)添加到.header div并修复裁剪

<强> See this demo