这篇文章主要介绍了css如何实现全屏布局,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。
经典的全屏布局由顶部
、底部
和主体
三部分组成,其特点为三部分左右满屏拉伸
、顶部底部高度固定
和主体高度自适应
。该布局很常见,也是大部分Web应用主体的主流布局。通常使用<header>
、<footer>
和<main>
三个标签语义化排版,<main>
内还可插入<aside>
侧栏或其他语义化标签。
<div class="fullscreen-layout"> <header></header> <main></main> <footer></footer> </div>
position + left/right/top/bottom
三部分统一声明left:0
和right:0
将其左右满屏拉伸;顶部和底部分别声明top:0
和bottom:0
将其吸顶和吸底,并声明俩高度为固定值;将主体的top
和bottom
分别声明为顶部高度和底部高度。通过绝对定位的方式将三部分固定在特定位置,使其互不影响。
.fullscreen-layout { position: relative; width: 400px; height: 400px; header, footer, main { position: absolute; left: 0; right: 0; } header { top: 0; height: 50px; background-color: #f66; } footer { bottom: 0; height: 50px; background-color: #66f; } main { top: 50px; bottom: 50px; background-color: #3c9; } }
flex
使用flex
实现会更简洁。display:flex
默认会令子节点横向排列,需声明flex-direction:column
改变子节点排列方向为纵向排列;顶部和底部高度固定,所以主体需声明flex:1
让高度自适应。
.fullscreen-layout { display: flex; flex-direction: column; width: 400px; height: 400px; header { height: 50px; background-color: #f66; } footer { height: 50px; background-color: #66f; } main { flex: 1; background-color: #3c9; } }
若<main>
需表现成可滚动状态,千万不要声明overflow:auto
让容器自适应滚动,这样做有可能因为其他格式化上下文的影响而导致自适应滚动失效或产生其他未知效果。需在<main>
内插入一个<div>
并声明如下。
div { overflow: hidden; height: 100%; }
感谢你能够认真阅读完这篇文章,希望小编分享的“css如何实现全屏布局”这篇文章对大家有帮助,同时也希望大家多多支持亿速云,关注亿速云行业资讯频道,更多相关知识等着你来学习!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。