【发布时间】:2018-09-17 01:45:13
【问题描述】:
作为一个练习,我正在使用 Flex Box 来实现以下布局:
┌───────────────────────────────┐
│ header │
└───────────────────────────────┘
┌─────┐ ┌───────────────────────┐
│ nav │ │ main │
│ │ │ │
└─────┘ └───────────────────────┘
┌───────────────────────────────┐
│ footer │
└───────────────────────────────┘
我最初的想法是使用:
body {
display: flex;
flex-direction: row;
flex-wrap: wrap;
}
但我不确定如何处理其余部分。目前我使用:
header,footer {
width: 100%;
}
nav {
flex-basis: 0;
flex-grow: 1;
}
main {
flex-basis: 0;
flex-grow: 4;
}
进行一些额外的微调。
这可行,但似乎做作。
另一种解决方案是将nav 和main 元素包装在div 中,但我试图避免这种情况,因为它会降低灵活性。
问题是,在某些行上具有一个元素,而在其他行上具有多个元素的布局最合适的方式是什么?
【问题讨论】: