html - 元素上的填充/边距/边框不会更改 DIV 高度

标签 html css

这是一个非常简单的 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/

相关文章:

javascript - 创建一个没有按钮/ anchor 的 `onclick` div?

html - 使文本输入字段看起来已禁用,但只读

css - 无法将文本框与外部 div 对齐

css - 如何在将位置设为绝对时隐藏 css 覆盖

html - 无法将 CSS 文件链接到 HTML 文件

html - CSS 影响特定字符之前的所有文本

javascript - 带有 Onclick 事件的右键单击 Div 不会在上下文菜单中显示链接选项

javascript - 如何使用CSS将单选按钮组堆叠在一起?

html - 垂直翻转按钮背景图像

javascript - 如何使 JQuery 事件适用于 2 个类?