你可以这样做,Flexbox但你需要使用固定height的Flex容器.这是小提琴
基本上你用flex-wrap: wrap用flex-direction: column,让第一个项目采取100%的高度,并设置width在%.然后使用媒体查询和高度更改顺序.
* {
box-sizing: border-box;
}
main,
div {
display: flex;
padding: 1rem;
}
.desktop {
flex-direction: column;
flex-wrap: wrap;
height: 400px;
width: 100%;
}
div {
flex: 1;
width: 30%;
}
[orange] {
background-color: #FFAD77;
flex: 0 0 70%;
}
[yellow] {
background-color: #FFE377;
flex: 0 0 100%;
width: 70%;
}
[purple] {
background-color: #FF77C8;
}
@media(max-width: 480px) {
.desktop div {
flex: 1;
width: 100%;
}
div[orange] {
order: -1;
flex: 2;
}
div[yellow] {
flex: 5;
}
div[purple] {
flex: 1;
}
}Run Code Online (Sandbox Code Playgroud)
<div class="desktop">
<div yellow>lorem</div>
<div orange>lorem</div>
<div purple>lorem</div>
</div>Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
16261 次 |
| 最近记录: |