我有两个元素-一个是position: relative的父元素,另一个是position: absolutemax-width的子元素.问题是,子元素会缩小,而不是出界.

下面是一个简单的例子和JSFiddle分:

#outer {
  position: relative;
  width: 400px;
  height: 400px;
  border: 4px solid red;
  margin: 0 auto;
}

#inner {
  position: absolute;
  left: 300px;
  top: 0;
  max-width: 240px;
  border: 4px solid blue;
}

我希望子元素自然地伸展到240px,而不是缩小.Setting a fixed width is not an option,因为可能有一个子元素只有很少的内容-https://jsfiddle.net/9re34o0j/1/.

推荐答案

使用width: max-content,我们可以使它从该位置溢出.我希望这是你想要的:

#outer {
  position: relative;
  width: 400px;
  height: 400px;
  border: 4px solid red;
  margin: 0 auto;
}

#outer>div {
  position: absolute;
  left: 300px;
  top: 0;
  max-width: 240px;
  border: 4px solid blue;
  
  width: max-content;
}

#outer>.inner2 {
  top: 2rem;
}
<div id="outer">
  <div class="inner1">
    Lorem
  </div>
  <div class="inner2">
    Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor
    in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
  </div>
</div>

Html相关问答推荐

如何在不影响子列表的情况下在HTML(OL Li)上同时加数字和列表?

HTML5章节或文章

Bootstrap nav没有崩溃

使用bash从html表格中提取表格

如何制作';在第';页中搜索;是否发现多个元素中的单词?

如何在css中旋转块时调整内容宽度、高度

按钮位于主 div 的底部而不是内部 Div

如何用js和CSS在两点之间画一条线

当悬停时,同时影响相邻的两侧div

如何垂直对齐列表中的图像和文本?

如何让一个 div 元素粘在另一个元素上?

输入框不是全宽

如何在滚动行中显示一张图片和下一张图片的一半?

如何在 svelte 中对静态 html 文件使用href=

在 React (NEXT) 中,当我try 进行动态补充时,我无法使用实例this来引用输入

如果不透明的元素出现在下方,为什么不透明度会使一个元素出现在另一个元素上方?

涉及短代码时如何在页面上定位元素?

根据正则表达式 attr 从 read_html 过滤表格

如何将内容从侧边栏的底部移动到右侧?

如何使用 html 和 css 添加超链接功能