基于百分比的边距顶部和高度不能一起使用

乔治·奥拉彭科

这是JSFiddle链接这是CSS代码:

body, html {
    background-color: #EAEAEA;
    height: 100%;
    margin-right: 0;
    margin-left: 0;
    padding-right: 0;
    padding-left: 0;
    padding-top: 0;
    margin-top: 0;
    overflow: hidden;
}

.a {
    position: absolute;
    height: 13%;
    background-color: #070000;
    width: 86%;
}
.b {
    position: absolute;
    height: 86%;
    background-color: #FF0000;
    width: 13%;
    margin-left: 87%;
}
.c {
    position: absolute;
    height: 86%;
    margin-top: 14%;
    background-color: #00FF00;
    width: 13%;
}
.d {
    position: absolute;
    height: 13%;
    margin-top: 87%;
    background-color: #0000FF;
    width: 86%;
    margin-left: 14%;
}

我一直在制作一个包含4个元素的页面,遇到的问题是,在调整浏览器窗口的大小时,元素的宽度(以及它们之间的边距)会按我的预期变化,但是由于某些原因,这些元素可以开始垂直重叠,即使例如黑色元素(div类a)的高度为13%,绿色元素的高度为86(div类c)%,绿色元素具有绝对位置,并且保证金最高值为14%。

蓝色元素(div类d)的位置可以低于浏览器窗口的下边缘(即使它的边距顶部为87%,高度为13%,在我看来,将其放置在窗口的底部;不能更高或更低)。

到底是怎么回事?我希望将元素精确定位在浏览器窗口的边缘,在窗口大小更改时自动调整大小,并且不重叠)。我计划使用jQuery使垂直和水平边距匹配。但是现在,我需要了解为什么我的CSS代码无法按预期工作。

乔什·克罗齐耶(Josh Crozier)

如果您正在寻找发生这种现象的原因:

CSS基本框模型-8.边距属性

请注意,在水平流中,“ margin-top”和“ margin-bottom”上的百分比是相对于包含块宽度而不是高度(在垂直流中,是“ margin-left”和“ margin-right”是相对于高度而不是宽度)。

重点已添加。这些margin-top值是相对于body元素的宽度的在这种情况下,如果水平调整窗口的大小,则元素的高度不会改变,而margin-top值会改变导致垂直对齐问题。

无需使用jQuery即可解决此问题。解决方案是使用除边距以外的其他方式进行位移。请参阅此更新的示例

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

CSS div高度百分比和边距百分比

来自分类Dev

CSS div高度百分比和边距百分比

来自分类Dev

为什么overflow-y属性不能与高度百分比一起使用

来自分类Dev

如何在CSS中添加高度百分比的顶部/底部边距

来自分类Dev

批处理文件-如何将FindStr与百分比一起使用

来自分类Dev

在宽度百分比中包含填充/边距?

来自分类Dev

计算内部元素的百分比宽度,边距和填充?

来自分类Dev

将其用于边距和填充时如何计算百分比?

来自分类Dev

基于Div高度百分比,但仍在滚动

来自分类Dev

基于Div高度百分比,但仍在滚动

来自分类Dev

基于百分比的jQuery UI滑块的高度和宽度

来自分类Dev

同时使用高度和最小高度,并同时使用百分比

来自分类Dev

一起使用zip和百分位数-Python

来自分类Dev

相交图共享一定百分比的边和顶点

来自分类Dev

相交图共享一定百分比的边和顶点

来自分类Dev

为什么百分比填充/边距在Firefox和Edge中的弹性项目上不起作用?

来自分类Dev

如何使用宽度和百分比调整边距和填充?

来自分类Dev

在 Grafana 中与 groupBy 一起计算百分比

来自分类Dev

如何使用百分比从顶部和底部裁剪使用<img>标签创建的图像

来自分类Dev

基于HAVING count(*)百分比-使用百分比计算的复杂查询

来自分类Dev

标头中的CSS百分比宽度和高度

来自分类Dev

绝对位置,高度百分比和flexbox

来自分类Dev

是否可以使用CSS设置按百分比设置的边距的最小值?

来自分类Dev

社交网络共享按钮设置为基于共享数量和社交网络数量的基于百分比的高度?

来自分类Dev

社交网络共享按钮设置为基于共享数量和社交网络数量的基于百分比的高度?

来自分类Dev

基于概率和百分比的返回值

来自分类Dev

ckeditor 无法对图像宽度和高度使用百分比

来自分类Dev

SVG:使用像素而不是百分比使子元素匹配父元素的宽度和高度?

来自分类Dev

在百分比高度容器中使用溢出

Related 相关文章

  1. 1

    CSS div高度百分比和边距百分比

  2. 2

    CSS div高度百分比和边距百分比

  3. 3

    为什么overflow-y属性不能与高度百分比一起使用

  4. 4

    如何在CSS中添加高度百分比的顶部/底部边距

  5. 5

    批处理文件-如何将FindStr与百分比一起使用

  6. 6

    在宽度百分比中包含填充/边距?

  7. 7

    计算内部元素的百分比宽度,边距和填充?

  8. 8

    将其用于边距和填充时如何计算百分比?

  9. 9

    基于Div高度百分比,但仍在滚动

  10. 10

    基于Div高度百分比,但仍在滚动

  11. 11

    基于百分比的jQuery UI滑块的高度和宽度

  12. 12

    同时使用高度和最小高度,并同时使用百分比

  13. 13

    一起使用zip和百分位数-Python

  14. 14

    相交图共享一定百分比的边和顶点

  15. 15

    相交图共享一定百分比的边和顶点

  16. 16

    为什么百分比填充/边距在Firefox和Edge中的弹性项目上不起作用?

  17. 17

    如何使用宽度和百分比调整边距和填充?

  18. 18

    在 Grafana 中与 groupBy 一起计算百分比

  19. 19

    如何使用百分比从顶部和底部裁剪使用<img>标签创建的图像

  20. 20

    基于HAVING count(*)百分比-使用百分比计算的复杂查询

  21. 21

    标头中的CSS百分比宽度和高度

  22. 22

    绝对位置,高度百分比和flexbox

  23. 23

    是否可以使用CSS设置按百分比设置的边距的最小值?

  24. 24

    社交网络共享按钮设置为基于共享数量和社交网络数量的基于百分比的高度?

  25. 25

    社交网络共享按钮设置为基于共享数量和社交网络数量的基于百分比的高度?

  26. 26

    基于概率和百分比的返回值

  27. 27

    ckeditor 无法对图像宽度和高度使用百分比

  28. 28

    SVG:使用像素而不是百分比使子元素匹配父元素的宽度和高度?

  29. 29

    在百分比高度容器中使用溢出

热门标签

归档