CSS 'margin' 和 'padding' 应该如何用于垂直段落间距:
- 可以使用填充和/或使用边距来定义段落之间的垂直空间吗?
- 如果两者都可以,那么使用哪个更好或更正常?
- 您是否倾向于定义非零填充和非零边距,如果是,那么每个定义多少?
边距、内边距和边框的示例在理论上解释了边距和内边距之间的区别:我质疑在实践中要使用多少来呈现正常、美观的页面。
其次,给定如下标记......
<p>Paragraph.</p>
<ul>
<li>List item.</li>
<li>Another list item.
<p>List paragraph.</p>
</li>
</ul>
如果您希望每个段落和/或列表项之间的垂直间距相等,则:
- 您是否倾向于将其定义
<ul>
为具有零边距+填充? - 或者
<ul>
通常会有非零边距,这将没有效果,因为这个边距将与<li>
它内部的边距和<p>
它之前的边距一起折叠?
第三(我不确定我是否应该问第三个问题),折叠边距的规范说,“如果盒子的顶部和底部边距相邻,那么边距有可能通过它折叠。” 如果我在中间有一个像下面这样的空段落......
<p>Hello</p>
<p></p>
<p>World</p>
...然后我希望将其视为一个空段落,即在 theHello
和之间有额外的垂直空间World
:
- 什么会阻止这个空段落的边距折叠,因此空段落是不可见的:它是非零填充吗?
- 在什么情况下,一个盒子有相邻的顶部和底部边距折叠是有用的?
欢迎回答这三个问题中的任何一个或所有问题。
目前我对特定于 IE 的框模型问题并不特别感兴趣:相反,我想知道如何使用该标准。