【问题标题】:Flexbox: elements collapsing - the best approach?Flexbox:元素折叠——最好的方法?
【发布时间】:2019-10-08 02:31:48
【问题描述】:

考虑以下几点:

认为这是一个完整的 1920 像素屏幕。 A 中包含的文本和按钮的 div 是一个 flexbox。

当我调整屏幕大小时,文本和按钮会尽可能地挤压 - 如 B 所示。

最终,当没有更多空间可以挤压时,它会折叠成 C

现在,我添加了一个断点,以便 C 在 1024 像素处生效,这意味着文本和按钮之间会有一些填充,因此永远不会粘在一起。为此,我添加了padding: 0 50px;

鉴于我正在使用 flexbox,我想知道这 - 添加填充 - 是否是实现此折叠的最佳、最有效的方法。

是否应该以不同的、更合适的方式来完成?

class {
  display: flex;
  flex-direction: row;
  word-wrap: normal;
  text-align: center;
  justify-content: space-between;
  height: 100%;
  }
  @include breakpoint-max(1068px) {
    padding: 0 50px;
  }
}

谢谢!

【问题讨论】:

  • 使用填充没有错。但是如果没有您的完整代码,很难判断是否有更有效的方法。

标签: html css flexbox padding


【解决方案1】:

尝试添加flex-wrap:wrap;。默认为no-wrap。这就是元素挤压的原因。你可以在这里阅读更多内容https://css-tricks.com/snippets/css/a-guide-to-flexbox/

【讨论】:

  • 首先,没有办法判断这是否是需要的,其次,OP 甚至不问他们为什么要挤压,他们问填充是否是一种好方法,这又真的可以'不回答,因为没有可用的代码,而且通常主要是基于意见的。
  • flex-wrap:wrap 将右边的元素移动到下一行,与左边对齐。例如,我试图让按钮彼此下方(如图像上的 C 上)。我可以在按钮上添加断点来修复它,添加display: flexflex-direction column。不过感谢您的帮助!
猜你喜欢
  • 1970-01-01
  • 2015-02-09
  • 2021-10-10
  • 2020-09-15
  • 2017-03-04
  • 2012-12-07
  • 2016-03-14
  • 2013-05-31
  • 2011-12-19
相关资源
最近更新 更多