zoukankan      html  css  js  c++  java
  • css布局:定宽,自适应

    css三栏布局:1、中自:float,absolute,margin三种方法。2、中固:margin,table两种方法。

    两边定宽,中间自适应:

    float:

    #left{
    		float:left;
    		220px;
    		height:200px;
    		background-color: red;
    	}
    	#right{
    		float:right;
    		220px;
    		height:200px;
    		background-color: red;
    	}
    	#main{
    		margin:0 230px;
    		height:200px;
    		background-color: olive
    	}
    
    <div id='left'>left</div>
    <div id='right'>right</div>
    <div id='main'>mian</div>
    

    absolute:

    html,
    	body{
    		margin:0;
    		padding:0;
    		height:100%;
    	}
    	#left,
    	#right{
    		position:absolute;
    		top:0;
    		220px;
    		height: 100%;
    		background-color: red
    	}
    	#left{
    		left:0;
    	}
    	#right{
    		right:0;
    	}
    	#main{
    		margin:0 230px;
    		height:100%;
    		background-color: olive
    	}
    
    <div id='left'>left</div>
    	<div id='right'>right</div>
    	<div id='main'>mian</div>
    

    前两种方法html中,中间列一定要放在左右两列的后面。

    margin:-px:

    #main{
    		float:left;
    		100%;
    	}
    	#main_con{
    		margin:0 230px;
    		height:220px;
    		background-color: green;
    	}
    	#left{
    		float:left;
    		margin-left:-100%;   /*由main的width决定*/
    		230px;
    	}
    	#right{
    		float:left;
    		margin-left:-230px;  /*自身宽度的负值*/
    		230px;
    	}
    	#left .inner,
    	#right .inner{
    		background-color: orange;
    		margin:0 10px;   /*控制边栏与主内容的间距*/
    		height:220px;
    	}
    
    <div id='main'>
    		<div id='main_con'>main</div>
    	</div>
    	<div id='left'>
    		<div id='left_con' class='inner'>left</div>
    	</div>
    	<div id='right'>
    		<div id='right_con' class='inner'>right</div>
    	</div>
    

    中间定宽,两边自适应:

    方法一:margin:-px

    #main{
    		float:left;
    		540px;		
    		background-color: olive;
    	}
    	#left, #right{
    		margin-left: -271px;
    		float:left;
    		50%;		
    	}	
    	.inner{
    		padding:20px;
    	}
    	#left .inner,
    	#right .inner{
    		margin-left:271px;
    		background-color:orange 
    	}
    
    <div id='left'>
    		<div class='inner'>left</div>
    	</div>
    	<div id='main'>
    		<div class='inner'>main</div>
    	</div>
    	<div id='right'>
    		<div class='inner'>right</div>
    	</div>
    

    方法二:挺简单的。

    .left{
    		background-color: red;
    	}
    	.main{
    		background-color: orange;
    	}
    	.right{
    		background-color: red;
    	}
    
    <table width='100%'>
    		<tr>
    			<td class='left'>左边自适应</td>
    			<td class='main' width='500'>中间固定宽度</td>
    			<td class='right'>右边自适应</td>
    		</tr>
    	</table>
    

      

  • 相关阅读:
    使用jQuery实现伪分页
    使用jQuery实现option的上移和下移
    理解Flux架构
    React 入门学习笔记1
    ES6新特性6:模块Module
    ES6新特性5:类(Class)和继承(Extends)
    ES6新特性4:字符串的扩展
    ES6新特性3:函数的扩展
    ES6新特性2:变量的解构赋值
    ES6新特性1:let和const
  • 原文地址:https://www.cnblogs.com/wang-jing/p/4304877.html
Copyright © 2011-2022 走看看