• 实现圣杯布局的5种方法


    实现圣杯布局

    1、浮动 float

    .content>.left+.center+.right

    <!DOCTYPE html>
    <html>
    	<head>
    		<meta charset="utf-8">
    		<title></title>
    	</head>
    	<style type="text/css">
    		*{
    			margin: 0;
    			padding: 0;
    		}
    		div{
    			min-height: 40px;
    		}
    		.header{
    			 100%;
    			background-color: skyblue;
    			text-align: center;
    		}
    		.footer{
    			 100%;
    			background-color: #f2f2f2;
    			text-align: center;
    		}
    		.left{
    			float: left;
    			 200px;
    			background-color: pink;
    		}
    		.right{
    			float: right;
    			 200px;
    			background-color: orange;
    		}
    		.center{
    			background-color: forestgreen;
    		}
    	</style>
    	<body>
    		<div class="header">头部</div>
    		<div class="content">
    			<div class="left"></div>			
    			<div class="right"></div>
    			<div class="center">
    				<h2>float 布局</h2>
    			</div>
    		</div>
    		<div class="footer">页尾</div>
    	</body>
    </html>
    
    

    .content>.left+.conter+.right 方式的话需要修改一点

    <!DOCTYPE html>
    <html>
    	<head>
    		<meta charset="utf-8">
    		<title></title>
    	</head>
    	<style type="text/css">
    		*{
    			margin: 0;
    			padding: 0;
    		}
    		div{
    			min-height: 40px;
    		}
    		.header{
    			 100%;
    			background-color: skyblue;
    			text-align: center;
    		}
    		.footer{
    			 100%;
    			background-color: #f2f2f2;
    			text-align: center;
    		}
    		.left{
    			float: left;
    			 200px;
    			background-color: pink;
    		}
    		.right{
    			float: right;
    			 200px;
    			background-color: orange;
    		}
    		.center{
    			background-color: forestgreen;
    			/* 跟我下面理解的绝对定位原理一样 */
    			position: absolute;
    			left: 200px;
    			right: 200px;
    		}
    	</style>
    	<body>
    		<div class="header">头部</div>
    		<div class="content">
    			<div class="left"></div>	
    			<div class="center">
    				<h2>float 布局</h2>
    			</div>
    			<div class="right"></div>
    		</div>
    		<div class="footer">页尾</div>
    	</body>
    </html>
    
    
    2、绝对定位 position
    <!DOCTYPE html>
    <html>
    	<head>
    		<meta charset="utf-8">
    		<title></title>
    	</head>
    	<style type="text/css">
    		*{
    			margin: 0;
    			padding: 0;
    		}
    		div{
    			min-height: 40px;
    		}
    		.content>div{
    			position: absolute;
    		}
    		.header{
    			 100%;
    			background-color: skyblue;
    			text-align: center;
    		}
    		.footer{
    			 100%;
    			background-color: #f2f2f2;
    			text-align: center;
    		}
    		.left{
    			 200px;
    			background-color: pink;
    			left: 0;
    		}
    		.right{
    			 200px;
    			background-color: orange;
    			right: 0;
    		}
    		.center{
    			background-color: forestgreen;
    			left: 200px;
    			right: 200px;
    			
    		}
    	</style>
    	<body>
    		<div class="header">头部</div>
    		<div class="content">
    			<div class="left"></div>
    			<div class="center">
    				<h2>绝对定位布局</h2>
    			</div>
    			<div class="right"></div>		
    		</div>
    		<div class="footer">页尾</div>
    	</body>
    </html>
    
    
    /*绝对定位理解,当元素设定绝对定位的时候,元素脱离了文档流,左右两个元素刚好靠在两边,.center元素left:200px——在外界(视图)看来就是你的右边多了200px空位置,这200px的位置刚好把挡住的.left元素显示出来,右边同理*/
    
    3、flex

    浮动布局很好理解,就一个,两边定宽,中间的设置flex:1,(占据剩余空间)

    <!DOCTYPE html>
    <html>
    	<head>
    		<meta charset="utf-8">
    		<title></title>
    	</head>
    	<style type="text/css">
    		*{
    			margin: 0;
    			padding: 0;
    		}
    		.header{
    			height: 50px;
    			 100%;
    			background-color: skyblue;
    			text-align: center;
    		}
    		.footer{
    			height: 50px;
    			 100%;
    			background-color: #f2f2f2;
    			text-align: center;
    		}
            
            /* 此处是实现区 */
    		.content{
    			 100%;
    			display: flex;
    		}
            
    		.left{
    			 200px;
    			height: 200px;
    			background-color: pink;
    		}
    		.right{
    			 200px;
    			height: 200px;
    			background-color: orange;
    		}
    		.center{
    			flex: 1;
    			height: 200px;
    			background-color: forestgreen;
    		}
    	</style>
    	<body>
    		<div class="header">头部</div>
    		<div class="content">
    			<div class="left float"></div>
    			<div class="center float"></div>
    			<div class="right float"></div>
    		</div>
    		<div class="footer">页尾</div>
    	</body>
    </html>
    
    
    4、表格布局table-cell
    <!DOCTYPE html>
    <!DOCTYPE html>
    <html>
    	<head>
    		<meta charset="utf-8">
    		<title></title>
    	</head>
    	<style type="text/css">
    		*{
    			margin: 0;
    			padding: 0;
    		}
    		div{
    			min-height: 40px;
    		}
    		.header{
    			 100%;
    			background-color: skyblue;
    			text-align: center;
    		}
    		.footer{
    			 100%;
    			background-color: #f2f2f2;
    			text-align: center;
    		}
    		
            /* 此处是实现区 */
    		.content{
    			display: table;
    			 100%;
    		}
    		.content>div{
    			display: table-cell;
    		}
            
           
    		.left{
    			 200px;
    			background-color: pink;
    		}
    		.right{
    			 200px;
    			background-color: orange;
    		}
    		.center{
    			background-color: forestgreen;
    			
    		}
    	</style>
    	<body>
    		<div class="header">头部</div>
    		<div class="content">
    			<div class="left"></div>
    			<div class="center">
    				<h2>table 布局</h2>
    			</div>
    			<div class="right"></div>		
    		</div>
    		<div class="footer">页尾</div>
    	</body>
    </html>
    
    
    5、网格布局grid
    <!DOCTYPE html>
    <!DOCTYPE html>
    <html>
    	<head>
    		<meta charset="utf-8">
    		<title></title>
    	</head>
    	<style type="text/css">
    		*{
    			margin: 0;
    			padding: 0;
    		}
    		div{
    			min-height: 40px;
    		}
    		.header{
    			 100%;
    			background-color: skyblue;
    			text-align: center;
    		}
    		.footer{
    			 100%;
    			background-color: #f2f2f2;
    			text-align: center;
    		}
    		
            /* 此处是实现区 */
    		.content{
    			 100%;
    			display: grid;		
    			grid-template-columns: 200px auto 200px;
    		}
    		
    		.left{
    			 200px;
    			background-color: pink;
    		}
    		.right{
    			 200px;
    			background-color: orange;
    		}
    		.center{
    			background-color: forestgreen;
    			
    		}
    	</style>
    	<body>
    		<div class="header">头部</div>
    		<div class="content">
    			<div class="left"></div>
    			<div class="center">
    				<h2>float 布局</h2>
    			</div>
    			<div class="right"></div>		
    		</div>
    		<div class="footer">页尾</div>
    	</body>
    </html>
    
    
  • 相关阅读:
    IO流-----写到输出流
    MyBatis中collection (一对一,一对多)
    POI导出Excel并下载
    篇二:MySQL存储过程
    篇三:访问JSON静态文件
    ajax同步处理(使得JS按顺序执行)
    篇二:JSON解析
    篇一:MySQL中case when then
    乱码问题
    解决spring配置中的bean类型的问题:BeanNotOfRequiredTypeException
  • 原文地址:https://www.cnblogs.com/uzi666/p/15261875.html
Copyright © 2020-2023  润新知