当前位置: 首页 > 面试题库 >

使绝对定位的div扩展父div的高度

熊嘉茂
2023-03-14
问题内容

如您在下面的CSS中所看到的,我想child2将自己定位在之前child1。这是因为我当前正在开发的网站也可以在移动设备上工作,该网站child2应该位于底部,因为它包含了我想要在移动设备内容下方显示的导航。-为什么没有2个母版页?这是divs在整个HTML中重新定位的仅有2个,因此,此较小更改的2个母版页是一个过大的功能。

HTML:

<div id="parent">
    <div class="child1"></div>
    <div class="child2"></div>
</div>

CSS:

parent { position: relative; width: 100%; }
child1 { width: auto; margin-left: 160px; }
child2 { width: 145px; position: absolute; top: 0px; bottom: 0px; }

child2 具有动态高度,因为不同的子站点可能具有更多或更少的导航项。

我知道绝对定位元素已从流中删除,因此被其他元素忽略。
我尝试overflow:hidden;在父div上进行设置,但这没有帮助,也不起作用clearfix

我的最后一个选择是使用JavaScript重新定位两者divs,但是现在,我将尝试看看是否存在使用非JavaScript的方法。


问题答案:

您自己回答了这个问题:“我知道绝对定位的元素已从流中删除,因此被其他元素忽略了。” 因此,您无法根据绝对定位的元素设置父母的身高。

您要么使用固定的高度,要么需要使用JS。



 类似资料:
  • 正如您可以在下面的CSS中看到的,我希望将自己定位在之前。这是因为我目前正在开发的网站也应该在移动设备上工作,其中应该在底部,因为它包含我想要在移动设备上的内容下面的导航。-为什么不是2个主页?这是整个超文本标记语言中唯一被重新定位的两个,所以这一微小变化的两个主页是一个过度。 超文本标记语言: CSS: 具有动态高度,因为不同的子网站可能有更多或更少的导航项。 我知道绝对定位元素从流中移除,因此

  • 问题内容: 有没有一种方法可以使div扩展到最大高度?我也有一个脚注。 这是网页: 网站已删除 。我要说的中间部分是白色div,中间内容具有CSS值: 所以是的,显然没有用。此外,所有父容器都有高度设置。 这是一般结构 问题答案: 您还记得在CSS中设置html和body标签的高度吗?通常,这就是我让DIV扩展到最大高度的方式:

  • 问题内容: 我有这些嵌套的div,我需要主容器扩展(在高度上)以容纳内部的DIV CSS是这样的: 我的问题是无法拉伸以容纳所有内部div,结果它们一直在后台运行。 考虑到以上情况,如何解决此问题? 问题答案: 您需要在div关闭之前强制输入a 。我可能会将其移入div并将CSS设置为: 更新: 这个问题仍然有相当多的流量,所以我想使用CSS3中称为“弹性框”或“弹性框”的新布局模式,以一种现代的

  • 我有一个容器div设置了宽度和高度,溢出设置为自动。在内部,有一个无序列表,其中包含导致div滚动的内容。 问题是列表本身没有扩展到容器div之外。所以当我尝试在列表的右侧添加填充时,它并不能正常工作: CSS 这里有一把小提琴说明了问题。

  • 问题内容: 我正在尝试给div(位置:固定)的宽度为100%(与其父div有关)。但是我有一些问题 编辑: **第一个问题是通过使用继承解决的,但它仍然无法正常工作。我认为问题在于我正在使用多个采用100%/继承宽度的div。 福克斯的例子 和html 问题似乎是 固定元素始终采用window / document的宽度 。有人知道如何解决吗? 我无法使用我的固定元素进行固定,因为我正在使用jSc

  • 我有这样的结构,我在一个div(包装器)里面包装三个div(顶部,中部,底部): 正如您所看到的,包装器div有一个固定的高度,底部div相对于包装器div是绝对定位的。中间div有一个内容列表,我想要实现的是,使中间的div只占据顶部div和底部div之间的剩余高度,并且仍然能够滚动。我怎样才能做到这一点?