Css 如何使边距折叠在输入类型=按钮/提交的情况下工作?

Css 如何使边距折叠在输入类型=按钮/提交的情况下工作?,css,input,margin,Css,Input,Margin,考虑: 一些文本一些文本一些文本一些文本 文本一些文本一些文本一些文本 一些文本一些文本一些文本一些文本 文本一些文本一些文本一些文本 ​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​ 30px在最后一个p和输入之间预期有余量,但有60px余量。很明显,保证金崩溃了。如何在保持input在顶部生成30px垂直边距的能力的同时修复input的CSS规则?尝试在input上设置display:block 编辑:那就用包装纸包起来吧

考虑:

一些文本一些文本一些文本一些文本 文本一些文本一些文本一些文本

一些文本一些文本一些文本一些文本 文本一些文本一些文本一些文本

​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​
30px
在最后一个
p
输入之间预期有余量,但有
60px
余量。很明显,保证金崩溃了。如何在保持
input
在顶部生成
30px
垂直边距的能力的同时修复
input
的CSS规则?

尝试在
input
上设置
display:block

编辑:那就用包装纸包起来吧


尝试在
输入上设置
显示:块

编辑:那就用包装纸包起来吧


我找到的唯一解决方案是:

<div style="text-align: right; margin: 30px 0;">
    <input type="button" value="Button" />
</div>​​​​​​​​​​

​​​​​​​​​​

一点小技巧。

我找到的唯一解决方案是:

<div style="text-align: right; margin: 30px 0;">
    <input type="button" value="Button" />
</div>​​​​​​​​​​

​​​​​​​​​​

一点小技巧。

奇怪的是,在示例代码中它有帮助,但在生产中却没有。正在尝试隔离原因…啊哈,隔离,原因是
float:right
(代码已更新)。如何使其保持浮动,并且没有双边距?@实际上,如果我没记错的话,边距折叠不适用于浮动元素。最好只将30px设置在一侧。@Yi Jiang:问题是按钮顶部的元素可能有底部边距0,我无法控制它。奇怪的是,在示例代码中它有帮助,而在生产中它没有。正在尝试隔离原因…啊哈,隔离,原因是
float:right
(代码已更新)。如何使其保持浮动,并且没有双边距?@实际上,如果我没记错的话,边距折叠不适用于浮动元素。最好只将30px设置在一边。@Yi Jiang:问题是按钮顶部的元素可能有底部边距0,我无法控制。