圣杯布局三种方式

圣杯布局三种方式圣杯布局是经典的css布局,左右两栏是定宽,中间那一栏是自适应,下面将用felx、float、position三种方法进行圣杯布局,实现效果如下:圣杯布局之flexcss代码:header{ height:80px; background-color:#cccccc; } .box{ height:200px; background-color:…

大家好,又见面了,我是你们的朋友全栈君。

圣杯布局是经典的css布局,左右两栏的宽度固定不变,中间那一栏是自适应,下面将用felx、float、position三种方法进行圣杯布局

效果图:
left和right是定宽,middle是自适应的

body代码:

<body>
	<header></header>
	<div class="box">
		<div class="left"></div>
		<div class="right"></div>
		<div class="middle"></div>
	</div>
	<footer></footer>

</body>

1. 圣杯布局之flex: left和right定宽为200px,middle自适应

  • 给middle设置弹性布局display:flex;
  • left和right定宽200px,middle设置为flex:1;

css代码:

header{
			height: 80px;
			background-color: #cccccc;
		}
		.box{
			height: 200px;
			background-color: yellow;
			display: flex;
		}
		.box .middle{
			height: 200px;
			background: pink;
			flex: 1;
		}
		.box .left{
			width: 200px;
			height: 200px;
			background-color: red;
		}
		.box .right{
			width: 200px;
			height: 200px;
			background-color: purple;
		}
		footer{
			height: 100px;
			background-color: black;
			color: white;
		}

2. 圣杯布局之float
将left进行浮动靠左,将right进行浮动靠右

css代码:

header{
			height: 80px;
			background-color: #cccccc;
		}
		.box{
			height: 200px;
			background-color: yellow;
		}
		.box .left{
			width: 200px;
			height: 200px;
			background-color: red;
			float: left;
		}
		.box .right{
			width: 200px;
			height: 200px;
			background-color: purple;
			float: right;
		}
		.box .middle{
			height: 200px;
			background-color: pink;
		}
		footer{
			height: 100px;
			background-color: black;
			color: white;
		}

3. 圣杯布局之position:left和right宽度设为20%,中间60%自适应

将父元素box设为相对定位,再将left、right、middle设置为绝对定位

header{
			height: 80px;
			background-color: #cccccc;
		}
		.box{
			height: 200px;
			background-color: yellow;
			position: relative;
		}
		.box .left{
			width: 20%;
			height: 100%;
			background-color: red;
			position: absolute;
			top: 0;
			left: 0;
		}
		.box .middle{
			height: 100%;
			background-color: pink;
			position: absolute;
			top: 0;
			left: 20%;
		}
		.box .right{
			width: 20%;
			height: 100%;
			background-color: purple;
			position: absolute;
			top: 0;
			right: 0;
		}
		footer{
			height: 100px;
			background-color: black;
			color: white;
		}
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/148044.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • eplan激活码【2021最新】

    (eplan激活码)本文适用于JetBrains家族所有ide,包括IntelliJidea,phpstorm,webstorm,pycharm,datagrip等。IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.net/100143.html…

    2022年3月22日
    298
  • 网络工程师

    网络工程师

    2021年7月24日
    64
  • makefile 编译参数_gcc使用说明

    makefile 编译参数_gcc使用说明gcc编译源文件共有4个过程,预处理、编译、汇编、链接。预处理:命令:gcc-Etest.c-otest.i(-o后面指定生成文件的命名)过程:展开宏定义(#define),处理编译条件指令(#if#ifndef等),插入引用的头文件(#include),删除注释,添加行号和文件标识。结果:生成.i文件,一般的文本编辑器都能打开编译:命令:gcc-Ste…

    2022年10月13日
    1
  • NAT配置实验_隧道模型受力及模型实验理解和认识

    NAT配置实验_隧道模型受力及模型实验理解和认识Iodine介绍Iodine,直译过来就是碘。碘元素在元素周期表中序号为53,正好是DNS使用的端口号。该工具用于建立DNS隧道,其分为服务端和客户端两部分(也常称为主控端和被控端),客户端对服务器端发送DNS请求建立连接。这两部分都是用C语言编写,支持EDNS、base32、base64、base128等多种编码规范。DNS隧道常分为中继和直连两种类型,中继是指DNS通过外网DNS服务器转发到服务端,直连是指直接通过服务端IP进行连接。Iodine对这两种类型都有支持。同时,Iodine支持多种DN

    2025年8月1日
    4
  • Javascript document.all用法「建议收藏」

    Javascript document.all用法「建议收藏」代码2:    但是常常name可以相同(如:用checkbox取用户的多项爱好的情况)              alert(document.all.aaa(0).value)  //显示a1    alert(document.all.aaa(1).value)  //显示a2    alert(document.all.bbb(0

    2022年7月15日
    21
  • layui和vue的项目应用(转载)

    layui和vue的项目应用(转载)layuitable结合vue实现行新增删除修改-简书

    2022年6月25日
    27

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号