三行布局(头尾定高主栏自适应)

2023-10-24 12:20

本文主要是介绍三行布局(头尾定高主栏自适应),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

 

<div class="layout"><section class="demo1"><header class="h50 orange">方法一:calc</header><main><div class="blue h400">main</div></main><footer class="h50 black">footer</footer></section><section class="demo2"><header class="h50 orange">方法二:absolute</header><main><div class="blue h400">main</div></main><footer class="h50 black">footer</footer></section><section class="flex"><header class="h50 orange">方法三:flex</header><main><div class="blue h400">main</div></main><footer class="black h50">footer</footer></section><section class="grid"><header class="orange">方法四:grid</header><main><div class="blue h400">main</div></main><footer class="black">footer</footer></section>
</div>
html,
body,
.layout {height: 100%;
}
body {margin: 0;
}
.layout {color: #fff;text-align: center;display: flex;justify-content: space-around;
}
main {overflow-y: auto;
}
section {width: 20%;margin: 20px 0;
}
.h50 {height: 50px;line-height: 50px;
}
.orange {background-color: orange;
}
.blue {background-color: #31aff9;
}
.black {background-color: black;
}
.demo1 main {height: calc(100% - 100px);overflow: auto;
}
.h400 {height: 400px;
}
.demo2 {position: relative;
}
.demo2 header {position: absolute;left: 0;top: 0;
}
.demo2 header {width: 100%;position: absolute;left: 0;top: 0;
}
.demo2 main {height: 100%;padding: 50px 0;box-sizing: border-box;
}
.demo2 footer {width: 100%;position: absolute;left: 0;bottom: 0;
}
.flex {display: flex;flex-direction: column;
}
.flex main {flex: 1;
}
.grid {display: grid;grid-template-rows: 50px 1fr 50px;
}
.grid header {line-height: 50px;
}
.grid footer {line-height: 50px;
}

 

这篇关于三行布局(头尾定高主栏自适应)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/275114

相关文章

OFD格式文件及如何适应Python将PDF转换为OFD格式文件

《OFD格式文件及如何适应Python将PDF转换为OFD格式文件》OFD是中国自主研发的一种固定版式文档格式,主要用于电子公文、档案管理等领域,:本文主要介绍OFD格式文件及如何适应Python... 目录前言什么是OFD格式文档?使用python easyofd库将PDF转换为OFD第一步:安装 eas

Qt实现删除布局与布局切换功能

《Qt实现删除布局与布局切换功能》在Qt应用开发中,动态管理布局是一个常见需求,比如根据用户操作动态删除某个布局,或在不同布局间进行切换,本文将详细介绍如何实现这些功能,并通过完整示例展示具体操作,需... 目录一、Qt动态删除布局1. 布局删除的注意事项2. 动态删除布局的实现步骤示例:删除vboxLay

CSS3 布局样式及其应用举例

《CSS3布局样式及其应用举例》CSS3的布局特性为前端开发者提供了无限可能,无论是Flexbox的一维布局还是Grid的二维布局,它们都能够帮助开发者以更清晰、简洁的方式实现复杂的网页布局,本文给... 目录深入探讨 css3 布局样式及其应用引言一、CSS布局的历史与发展1.1 早期布局的局限性1.2

全解析CSS Grid 的 auto-fill 和 auto-fit 内容自适应

《全解析CSSGrid的auto-fill和auto-fit内容自适应》:本文主要介绍了全解析CSSGrid的auto-fill和auto-fit内容自适应的相关资料,详细内容请阅读本文,希望能对你有所帮助... css  Grid 的 auto-fill 和 auto-fit/* 父元素 */.gri

html5的响应式布局的方法示例详解

《html5的响应式布局的方法示例详解》:本文主要介绍了HTML5中使用媒体查询和Flexbox进行响应式布局的方法,简要介绍了CSSGrid布局的基础知识和如何实现自动换行的网格布局,详细内容请阅读本文,希望能对你有所帮助... 一 使用媒体查询响应式布局        使用的参数@media这是常用的

前端CSS Grid 布局示例详解

《前端CSSGrid布局示例详解》CSSGrid是一种二维布局系统,可以同时控制行和列,相比Flex(一维布局),更适合用在整体页面布局或复杂模块结构中,:本文主要介绍前端CSSGri... 目录css Grid 布局详解(通俗易懂版)一、概述二、基础概念三、创建 Grid 容器四、定义网格行和列五、设置行

Python中__new__()方法适应及注意事项详解

《Python中__new__()方法适应及注意事项详解》:本文主要介绍Python中__new__()方法适应及注意事项的相关资料,new()方法是Python中的一个特殊构造方法,用于在创建对... 目录前言基本用法返回值单例模式自定义对象创建注意事项总结前言new() 方法在 python 中是一个

CSS3 最强二维布局系统之Grid 网格布局

《CSS3最强二维布局系统之Grid网格布局》CS3的Grid网格布局是目前最强的二维布局系统,可以同时对列和行进行处理,将网页划分成一个个网格,可以任意组合不同的网格,做出各种各样的布局,本文介... 深入学习 css3 目前最强大的布局系统 Grid 网格布局Grid 网格布局的基本认识Grid 网

CSS弹性布局常用设置方式

《CSS弹性布局常用设置方式》文章总结了CSS布局与样式的常用属性和技巧,包括视口单位、弹性盒子布局、浮动元素、背景和边框样式、文本和阴影效果、溢出隐藏、定位以及背景渐变等,通过这些技巧,可以实现复杂... 一、单位元素vm 1vm 为视口的1%vh 视口高的1%vmin 参照长边vmax 参照长边re

CSS3中使用flex和grid实现等高元素布局的示例代码

《CSS3中使用flex和grid实现等高元素布局的示例代码》:本文主要介绍了使用CSS3中的Flexbox和Grid布局实现等高元素布局的方法,通过简单的两列实现、每行放置3列以及全部代码的展示,展示了这两种布局方式的实现细节和效果,详细内容请阅读本文,希望能对你有所帮助... 过往的实现方法是使用浮动加