ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

Flex布局实现简单的弹性盒样式

2022-01-05 10:32:45  阅读:162  来源: 互联网

标签:body Flex flex 样式 标签 弹性 height order grow


样式描述

布局实现头部和底部高度固定,中间内容实现自动填充剩余空间;

中间区域分为三部分,根据媒体查询修改flex布局主轴的对齐方向等。


以body标签开始

标签内设置为flex布局,主轴改为纵轴y

body{
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
}
html{
    height: 100%;
}

这里html和body标签设置高度height为100%是为了能够更好的实现中间内容flex-grow的扩展

body内标签

<header>header</header>
<div id="middle">
    <div class="nav">nav</div>
    <div class="article">article</div>
    <div class="aside">aside</div>
</div>
<footer>footer</footer>

头部和底部标签样式

header,footer{
    min-height: 100px;
    border: 3px solid antiquewhite;
    border-radius: 10px;
}

中间内容样式

#middle{
    flex-grow: 1;
    display: flex;
    min-height: 500px;
}

//这里的flex-grow是相对于body标签的flex布局设置为扩展比率为1,如果没有这个flex-grow,middle的内容高度仅为设置的500px

然后将middle内设置为flex布局(默认主轴对齐方式为row)

nav、article、aside样式

.nav{
    order: 1;
    flex-grow: 1;
    background-color: #ffba41;
}
.article{
    order: 2;
    flex-grow: 3;
    background-color: #719dca;
}
.aside{
    order: 3;
    flex-grow: 1;
    background-color: #ffba41;
}

媒体查询

@media screen and (max-width:640px){
    #middle{
        flex-direction: column;
    }
    header,footer{
        min-height: 50px;
    }
    .nav{
        order: 2;
    }
    .article{
        order: 1;
    }
}

flex-direction 属性规定弹性盒中项目的方向。

flex-grow 属性用于设置或检索弹性盒子的扩展比率。

order 属性设置或检索弹性盒模型对象的子元素出现的顺序。

标签:body,Flex,flex,样式,标签,弹性,height,order,grow
来源: https://www.cnblogs.com/wweebb/p/flex_simple-box_body-elastic.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有