当前位置: 首页 > 知识库问答 >
问题:

绝对位置不在父对象内

戚鸿
2023-03-14

我有一个与我的CSS有关的div位置的问题。

我的父div设置为position:relative,子div设置为position:absolute

但由于某些原因,子div显示在父div的边界下方和外部。。。

这是我的CSS:

.big{
    position:relative;
    width:40%;
    border:1px solid black;
    display:inline-block;
}

.small{
    position:absolute;
    width:75px;
    height:75px;
    border:1px solid green;
}

超文本标记语言:

<div class="big">        
    <p align="center">Test</p>
    <div class="small"></div>        
</div>
<div class="big">
    <p align="center">Test</p>
    <div class="small"></div>    
</div>

我提供了一个JSFiddle来向您展示它的实际操作:

http://jsfiddle.net/j6VLc/1/

在使用position:absolute时,如何修复它以使子div位于父div内?

共有2个答案

袁凌
2023-03-14

由于子div的高度为75px,而父div内部的高度也为

.big {
    position: relative;
    width: 40%;
    height: 100px;
    border: 1px solid black;
    display: inline-block;
}

.small {
    position: absolute;
    width: 75px;
    height: 75px;
    border: 1px solid green;
}

p {
  display: inline;
}

希望这会让你得到你想要的。

柯浩壤
2023-03-14

不能使用position:absolute执行此操作,因为它会从文档流中删除元素<父对象上的代码>位置:相对将更改位置:绝对相对于的位置,但它不会展开以包含位置:绝对。您需要设置一个固定高度或使用位置:相对

注意,如果在示例中使用position:relative,则需要添加一个margin-bottom等于top的值,以使其展开以包含position:relative。请参见此示例:http://jsfiddle.net/yV5q6/

 类似资料:
  • 问题内容: 我在另一个div内有两个div,我想使用css将一个子div放在父div的右上角,另一个子div放在父div的底下。即,我想对两个子div使用绝对定位,但是将它们相对于父div而不是页面定位。我怎样才能做到这一点? 范例html: 问题答案: 这工作,因为手段类似“使用,,,来定位自己相对于谁拥有最近的祖先或”。 因此,我们使have 和子代都有,然后使用和定位子代。

  • 问题内容: 我有3个要素。 第一个更大(包装)并具有 第2个相对于第1个相对位置绝对定位(并包含在第1个中) 第3个包含在第2个中,并且也具有绝对定位。 为什么第3个位置相对于第2个绝对位置(这也是第1个位置的绝对位置)而不是相对位置的第一个位置? 因为3rd 是绝对定位到2nd的绝对定位。 问题答案: 因为就像重置孩子的相对位置一样。 这是无法解决的-如果您希望第三个相对于第一个绝对定位,则必须

  • 我有一些容器,它们的子容器仅处于绝对/相对位置。如何设置容器的高度,使其孩子在容器内? 代码如下: HTML CSS 这里有一个jsfiddle。我希望“栏”文本出现在4个方格之间,而不是它们后面。 http://jsfiddle.net/Ht9Qy/ 有简单的解决办法吗? 请注意,我不知道这些孩子的身高,也不能为容器设置身高:xxx。

  • 我在另一个div中有两个div,我想使用CSS将一个子div放置在父div的右上方,另一个子div放置在父div的底部。例如,我想对两个子div使用绝对定位,但是相对于父div而不是页面定位它们。我怎么能这么做? HTML示例:

  • 问题内容: 和CSS 和有什么不一样?那你什么时候应该使用呢? 问题答案: CSS绝对定位 绝对定位是最容易理解的。您从CSS 属性开始: 这告诉浏览器应将要定位的所有内容从文档的正常流程中删除,并将其放置在页面上的确切位置。它不会影响HTML中它之前或之后的元素在网页上的放置方式,但是除非您重写它,否则 它将 取决于其父级的位置。 如果你想一个元素从文档窗口的顶部10个像素的位置,你会使用偏移与

  • 问题内容: 我有一些容器,他们的孩子只是绝对的/相对的。如何设置容器的高度,以便他们的孩子进入其中? 这是代码: HTML CSS 这是一个jsfiddle。我希望“栏”文本出现在4个正方形之间,而不是在它们后面。 有简单的解决方法吗? 请注意,我不知道这些子项的高度,也无法为容器设置高度:xxx。 问题答案: 如果我了解您要正确执行的操作,那么我认为使用CSS保持孩子的绝对位置是不可能的。 绝对