html 显示:Flex项目超出最大宽度

0ve6wy6x  于 2023-03-16  发布在  其他
关注(0)|答案(1)|浏览(150)

我有三个项目(列)与display: flexmargin-left设置给他们。当我调整窗口大小和滚动右他们是去框/窗口(溢出)。第二个问题-第三张图片是不同的高度,即使我设置max-height给它。这里只是代码的一部分(问题再次发生,即使在这里):

body {
  margin: 0;
  width: 100%;
}

.background {
  position: relative;
  width: 100%;
  height: 1000px;
  background-color: gray;
}

.articleContainer {
  position: relative;
  display: flex;
  width: 100%;
  height: 600px;
}

.content {
  position: relative;
  display: flex;
  margin-left: 10%;
  border-top: 7px solid rgb(227, 0, 26);
  height: 600px;
  background-color: black;
  top: -4px;
  width: 333px;
}

.content img {
  top: 0;
  max-height: 230px;
  width: 333px;
}

.box {
  position: absolute;
  width: 60px;
  height: 60px;
  top: 0;
  left: 0;
  background-color: rgb(227, 0, 26);
}
<div class="background"> </div>

<article>
  <div class="articleContainer">
    <div class="content">
      <img src="https://i.imgupx.com/VHqKvqVY/metropolis-meltdown.png" width="333px" alt="Metropolis">
      <div class="box"></div>
      <div class="textContent"></div>

      <div class="content">
        <img src="https://i.imgupx.com/wyFIxuMT/metropolis-blue-meltdown.jpeg" width="333px" alt="Metropolis">
        <div class="box"></div>
        <div class="textContent"></div>
      </div>

      <div class="content">
        <img src="https://i.imgupx.com/EBvbuJgh/Optimized-PHRANK.jpeg" width="333px" alt="Metropolis">
        <div class="box"></div>
        <div class="textContent"></div>
      </div>
    </div>
</article>

我试过将min-width设置为0,但如果我这样做,列会重叠,max-height似乎无法解决第三张图片的高度问题。

9ceoxa92

9ceoxa921#

对于第一个问题,您可以将以下CSS属性添加到.articleContainer:

.articleContainer {
  overflow-x: auto;
  white-space: nowrap;
}

这将允许在项目从框中移出时进行水平滚动,并防止项目换行到下一行并从框中移出。
对于第二个问题,出现这个问题是因为图像的长宽比与其他图像不一致。要解决这个问题,您应该使用固定的高度和宽度,而不是最大高度。

.content img {
  height: 230px;
  width: 333px;
}

希望这个答案对你有帮助。

相关问题