这是一个非常简单的 jsFiddle 来演示我的问题:http://jsfiddle.net/ryandlf/mSmUv/4/
当一个元素有顶部填充或边距并且它位于 div 内的第一行时,div 不会考虑该填充或边距并将元素向下推。在大多数情况下,这不是问题,但是例如,如果我有一个具有顶部边框和填充的按钮,则边框顶部将被切断,因为 div 未考虑填充值。
除了盲目地在每个容器 div 元素上设置边距或填充并希望我已添加足够的内容以说明可能受影响的任何内部元素之外,是否有解决此问题的方法?
最佳答案
您与类按钮的链接不是 block
元素,它是 inline
元素。通过向其添加 dispaly: block
来更改此默认行为,它将按预期工作。可在 jsfiddle 上获得证明.
所以总而言之,问题不在于 div - 这是 css 的问题 - 内联元素忽略边距和填充,因为它们无法“保留空间”。
更新:要回答您的评论,here is the solution你可能正在寻找
关于html - 元素上的填充/边距/边框不会更改 DIV 高度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12239425/