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

我如何获得一个绝对定位的div溢出自动增长到其内容的宽度,空白设置为nowrap?

邹山
2023-03-14

null

body {
  position: relative;
}

.test {
  position: absolute;
  top: 10px;
  left: 10px;
  height: 200px;
  border: 1px solid #ccc;
  overflow-y: auto;
  overflow-x: hidden;
  white-space: nowrap;
}

.wrap {
  display: inline-block;
}

.item {
  padding: 10px;
  border-bottom: 1px solid #ccc;
}
.item:last-child {
  border-bottom: none;
}
<div class="test">
  <div class="wrap">
    <div class="item">Some</div>
    <div class="item">Larger amount</div>
    <div class="item">of text</div>
    <div class="item">should go in</div>
    <div class="item">these items to prove</div>
    <div class="item">that this thing is gonna grow to whatever</div>
    <div class="item">to whatever</div>
    <div class="item">it needs to</div>
  </div>
</div>

null

问题是,当垂直滚动条出现时,绝对位置的div没有相应地增长,最长项上的一些内容被切断。如果我把'overflow-x:hidden‘去掉,就会出现一个水平滚动条,这也不是我想要的。

当'white-space:nowrap'被移除时,一切看起来都很好,但我希望每个项目都是一行。有没有办法让绝对定位的div根据“white-space:nowrap”元素的宽度增长?

共有1个答案

巫马自明
2023-03-14

我想这就是你想要的

null

body {
    position: relative;
}
.test {
    position: absolute;
    top: 10px;
    left: 10px;
    height: 200px;
    border: 1px solid #ccc;
    overflow-y: auto;
    overflow-x: hidden;
    white-space: nowrap;
}
.wrap {
    display: inline-block;
}
.item {
    padding: 10px;
    border-bottom: 1px solid #ccc;
    padding-right:28px;
}
.item:last-child {
    border-bottom: none;
}
html prettyprint-override"><div class="test">
    <div class="wrap">
        <div class="item">Some</div>
        <div class="item">Larger amount</div>
        <div class="item">of text</div>
        <div class="item">should go in</div>
        <div class="item">these items to prove</div>
        <div class="item">that this thing is gonna grow to whatever</div>
        <div class="item">to whatever</div>
        <div class="item">it needs to</div>
    </div>
</div>
 类似资料:
  • 问题内容: 我正在尝试给div(位置:固定)的宽度为100%(与其父div有关)。但是我有一些问题 编辑: **第一个问题是通过使用继承解决的,但它仍然无法正常工作。我认为问题在于我正在使用多个采用100%/继承宽度的div。 福克斯的例子 和html 问题似乎是 固定元素始终采用window / document的宽度 。有人知道如何解决吗? 我无法使用我的固定元素进行固定,因为我正在使用jSc

  • HTML: CSS: 问题是,当我悬停时,滚动条会像预期的那样显示出来,但当我取消悬停时,带有id的div中所有元素的宽度都会发生变化。我所说的变化是指它变得更小,以适应下一次悬停时的滚动条…我想要的是...显示滚动条时的宽度变化很好,但是当滚动条不再可见时,我希望它返回到100%的宽度,我甚至尝试将添加到div,但它不起作用。我怎么能这么做... 希望我能把自己说清楚..

  • 在下面的代码中, 我有一个父div(.parent)和三个子div(.child1、.child2、.child3) 要求- 。儿童2应该重叠。儿童3 。child2应该可以水平滚动 问题- 使用绝对位置设置overflow-x不起作用。 如何使此表可滚动,以及使其与下面的所有div重叠? 企图-

  • 问题内容: 给出以下HTML代码段: 您(通常)会得到一个黑匣子,其中的滚动条包含一个数字1至30,每个数字都在新行中。 您可以在该框内上下滚动。 我现在需要的是找出框处于哪个滚动位置的可能性。假设每行高15像素,然后向下滚动到数字10,我想得到的结果是数字150(15像素* 10行)。 我在哪里可以找到这个号码? 我手上有普通的JavaScript和jQuery。 问题答案: 您需要使用该属性。

  • 问题内容: 我实际上有两个问题,但是让我先解决主要问题,因为我认为另一个更容易解决。 我在菜单左侧的滚动条的左侧有一个固定位置的div。右侧是可以正确滚动的标准div。问题是,当浏览器的视口太小而看不到整个菜单时,..没有办法让它滚动到我能找到的位置(至少没有使用CSS)。我试过在CSS中使用不同的溢出,但是没有什么可以使div滚动。包含菜单的div设置为min- height:100%和posi

  • 问题内容: 我有一个包含DIV,用作响应网格的一部分。它将扩展到我允许的最大宽度1280px,然后在大型设备上显示边距。这是我的CSS + Less。 但是在某些情况下,我想横向溢出-假设我的背景图片或颜色需要全宽。我不太擅长CSS-但是有可能实现我想要的目标吗? 问题答案: 最明显的解决方案是关闭容器…将整个宽度div然后打开一个新容器。标题“容器”只是一个类……不是绝对要求它可以同时容纳 所有