【问题标题】:React layout with flexbox使用 flexbox 响应布局
【发布时间】:2017-11-29 19:42:03
【问题描述】:

我是 react native 的初学者,我正在尝试实现这种布局:

问题是:如果我同时制作 flex:1 ,上框将始终为一半高度,但我希望它包裹的内容更小,并增长到屏幕的一半

我试过这个配置:

UPPER: flex: 0, flexShrink: 2
LOWER: flex: 1, flexShrink: 2

这样,上面的盒子先包裹然后再增长,但不会停在一半。

我试过这个配置:

UPPER: flex: 0, flexGrow: 2
LOWER: flex: 1, flexGrow: 2

在此配置中,它会增长到一半,但如果更小则不会换行。

我怎样才能实现这样的行为?

非常感谢

【问题讨论】:

  • Flexbox 与 React 无关。如果您为我们提供一些 HTML 和 CSS 示例,我们可以为您提供更简洁的帮助。

标签: reactjs react-native flexbox


【解决方案1】:

使用 maxHeight 属性来限制高度。

UPPER: flex: 0, maxHeight: '50%'
LOWER: flex: 1

样式表示例

const styles = StyleSheet.create({
  container: {
    flex: 1,
    flexDirection: 'column',
  },
  upper: {
    flex: 0,
    maxHeight: '50%',
  },
  lower: {
    flex: 1,
  },
});

【讨论】:

    猜你喜欢
    • 2022-01-12
    • 2019-08-24
    • 2021-06-12
    • 2017-04-16
    • 2019-09-15
    • 2018-03-19
    • 2019-10-13
    • 2021-03-08
    • 2020-06-05
    相关资源
    最近更新 更多