为什么 10px + 10 像素 = 10 像素?

发布于 2024-10-21 20:06:10 字数 305 浏览 3 评论 0原文

我有以下脚本,其中 . portlet 类的行为很奇怪:

http://jsfiddle.net/mYx5y/19/

它应该添加每个 portlet 周围有 10 像素,这意味着 portlet 之间有 20 像素的间隙。由于某种原因,如果 portlet 的右侧或左侧有一个小部件,我只能得到 20px,但如果 portlet 的上方或下方有另一个 portlet,则只能得到 10px。

为什么我的垂直高度是 10px?

I have the following script where the margin for the . portlet class is behaving strangely:

http://jsfiddle.net/mYx5y/19/

it should be adding 10px around each portlet, which should mean a gap of 20px between portlets. For some reason, I am only getting 20px if a portlet has a widget to the right or left of itself, but only 10px if the portlet has another portlet above or below it.

Why am I getting 10px vertically?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

时间海 2024-10-28 20:06:10

因为利润不会增加,所以就会崩溃。如果有两个元素 A 和 B,A margin=10px 和 B margin=15px,则 A 和 B 之间的间距将为 15px。

两种解决方案:

  1. 使用 margin-bottom: 20px, margin-top: 0px
  2. 将它们包装到容器中并应用 padding: 10px 0;

Because margins don't add up, they collapse. If you have two elements A and B, A margin=10px and B margin=15px, the spacing between A and B will be 15px.

Two solutions:

  1. Use margin-bottom: 20px, margin-top: 0px
  2. Wrap them into a container and apply padding: 10px 0;
南街九尾狐 2024-10-28 20:06:10

因为边距折叠,所以它们不会被添加,只是 max()-ed(将使用相邻对象的最大边距值)。如果空间是元素的一部分,请使用填充。

Because margins collapse, they are not added, just max()-ed (the biggest margin value of neighbouring objects will be used). Use padding if the space is part of your element.

没︽人懂的悲伤 2024-10-28 20:06:10

这就是利润的运作方式。相邻的垂直边距相互折叠:

正常流折叠中块级框的两个或多个相邻垂直边缘。生成的边距宽度是相邻边距宽度的最大值。在负边距的情况下,从正相邻边距的最大值​​中减去负相邻边距的绝对值的最大值。如果没有正边距,则从零中扣除负相邻边距的绝对最大值。笔记。相邻的框可以由不作为兄弟姐妹或祖先相关的元素生成。

另请参阅:折叠边距

This is how margins work. Adjacent vertical margins collapse into each other:

Two or more adjoining vertical margins of block-level boxes in the normal flow collapse. The resulting margin width is the maximum of the adjoining margin widths. In the case of negative margins, the maximum of the absolute values of the negative adjoining margins is deducted from the maximum of the positive adjoining margins. If there are no positive margins, the absolute maximum of the negative adjoining margins is deducted from zero. Note. Adjoining boxes may be generated by elements that are not related as siblings or ancestors.

See also: Collapsing margins

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文