【问题标题】:CSS Flex-box not acting responsiveCSS Flex-box 没有响应
【发布时间】:2020-03-22 06:04:11
【问题描述】:

在我的项目中,我有一个容器<div>,我在其中添加了一个边框,以便用户可以看到它。

我将display: flex; 添加到容器中,以便它可以利用弹性框。我当前的代码完美运行。这是因为它目前是完全响应式的,这意味着当我从右侧或左侧调整窗口大小时,容器也会移动,这非常适合响应式。

这是我当前的代码:

 <div class="flex-container">
            <h1>YO!</h1>
 </div>

.flex-container {
    display: flex;
    flex-direction: row;
    border: 1px solid #e3e3e3;
    justify-content:center;
    align-items: center;
    margin-left: 40px;
}  

但是,当我向 .flex-container 添加宽度和高度时,当我调整窗口大小时它不会响应 - 容器不会随之移动。

所以当我将它添加到容器时会发生这种情况:

width: 350px;
height: 615px;

有人知道为什么会这样吗?是否有某种方法可以设置设置了display: flex; 的容器的宽度和高度?谢谢。

【问题讨论】:

  • 当你为一个元素设置一个固定的像素宽度和高度时,它没有理由响应。您可以使用百分比值作为宽度和高度,这将是响应式的。 (这与 flex BTW 无关)
  • 为什么不直接使用max-width: 350px; 并将宽度设置为100% 并将高度设置为min-height:615px;
  • 目标是什么? :)

标签: html css flexbox


【解决方案1】:

通常,常规的width 参数不是响应式设计。

width: 350px 更改为max-width: 350px 可能会达到您想要的结果(虽然这个尺寸不会留下太多的增长空间,但它会随着窗口尺寸低于350px 宽度的变化而缩小)。

【讨论】:

    【解决方案2】:

    这是因为您要添加固定的宽度和高度。这与元素是否设置为显示 flex 无关。

    您是在告诉容器它具有 350 像素的静态固定宽度。 350px 是一个绝对值,与屏幕大小无关。

    如果您使用 flex,您可以使用 flex-basis 并设置百分比来设置容器的宽度,甚至更高级:使用 flex-grow 或 flex-shrink 响应式收缩或扩展容器,具体取决于关于容器大小。

    【讨论】:

    • 你好,我已经添加了 flex-basis: 30%; 正如你提到的那样(将宽度设置为 % 值)
    • 但是网站仍然没有响应。
    • flex-basis 与项目有关,与容器无关。在这种情况下,您应该考虑使用响应式单位类型,例如 rem、em 或 %。如果你想使用 px,那完全没问题,你可以添加一个媒体查询来让它响应。
    • 啊,所以 rem 和 em 和 % 是设计用来做出响应的单位?
    • 是的,因为它们会根据父元素进行调整。例如,假设您的容器设置为使用宽度:5rem,高度:5rem。在您的 html 选择器中,您将 font-size 设置为 16px。如果你想让它响应,只需将字体大小更改为可能,14px,也会更改容器,因为 rem 响应根字体大小。
    【解决方案3】:

    所以不是

    width: 350px;
    

    这样做

    width: 100%;
    max-width: 350px;
    

    这里有一个链接 https://jsfiddle.net/mironomadic/5cvgmpth/3/ 它可以工作

    此外,如果您需要将列堆叠在一起,请更改

    flex-direction: row;
    

    flex-direction: column;
    

    【讨论】:

    • 不客气,如果它对你有用,别忘了标记为已回答:)
    • 我已经完成了,再次感谢队友,迄今为止最好的答案!
    猜你喜欢
    • 1970-01-01
    • 2021-05-16
    • 2011-11-25
    • 2015-02-14
    • 2018-10-19
    • 1970-01-01
    • 1970-01-01
    • 2021-10-06
    • 2020-07-18
    相关资源
    最近更新 更多