css实现常用的两栏三栏布局
1、两栏
<div class="wrapper">
<div class="half left">left box
<p>自适应</p>
</div>
<div class="half right">right box 固定</div>
</div>
1.1、左侧宽度固定,右侧自适应
方式一、float+margin
.wrapper{
    width: 100%;
    overflow: auto;    //清浮动
}
.left{
     float: left;
     width: 200px;
     background-color: #5cb85c;
}
.right{
    margin-left: 230px;
    background-color: #66afe9;
}
方式二、float+overflow
.wrapper{
    width: 100%;
    overflow: auto;    //清浮动,或overflow:hidden
}
.left{
     float: left;
     width: 200px;
     margin-left: 30px;
     background-color: #5cb85c;
}
.right{
    overflow: hidden;    //或overflow: auto
    background-color: #66afe9;
}
方式三、float+position
.wrapper{
    position: relative;
    width: 100%;
    overflow: auto;    //清浮动,或overflow:hidden
}
.left{
     float: left;
     width: 200px;
     background-color: #5cb85c;
}
.right{
    position: absolute;
    left: 230px;
    right: 0;
    background-color: #66afe9;
}
方式四、flex
.wrapper{
    display: flex;
    flex-direction: row;
    width: 100%;
}
.left{
     flex: 0 0 auto;
     width: 200px;
     margin-right: 30px;
     background-color: #5cb85c;
}
.right{
    flex: 1;
    background-color: #66afe9;
}
2、三栏
两边固定中间自适应
方式一、float+margin
<div class="wrapper">
<div class="left">left box
<p>固定</p>
</div>
<div class="right">right box
<h4>ssss</h4>
<h5>ddddd</h5>
</div>
<div class="middle">中间自适应</div>
</div>
//css
.wrapper{
width: %;
overflow: auto;
} .wrapper .left{
float: left;
width: 200px;
background-color: #5cb85c;
}
.wrapper .right{
float: right;
width: 100px;
background-color: #66afe9;
}
.wrapper .middle{
margin: 110px 230px;
background-color: #A3AEFF;
}
方式二、position+margin (这种方式的父元素高度取决于中间部分的高度,当两侧高度大于中间高度时,则出现高度塌陷,除非指定父元素的高度,当两侧高度小于中间部分时,可以使用。)
.wrapper{
  position: relative;
  width: 100%;
}
.wrapper .left{
  position: absolute;
  left: 0;
  width: 200px;
  background-color: #5cb85c;
}
.wrapper .right{
  position: absolute;
  right: 0;
  width: 100px;
  background-color: #66afe9;
}
.wrapper .middle{
  margin: 0 110px 0 230px;
  background-color: #A3AEFF;
}
方式三、flex
<div class="wrapper">
<div class="left">left box
<p>固定</p>
</div>
<div class="middle">中间自适应</div>
<div class="right">right box
<h4>ssss</h4>
<h5>ddddd</h5>
</div>
</div> .wrapper{
display: flex;
flex-direction: row;
width: %;
.left{
width: 200px;
background-color: #5cb85c;
}
.right{
width: 100px;
background-color: #66afe9;
}
.middle{
flex: ;
margin: 10px 30px;
background-color: #A3AEFF;
}
}
css实现常用的两栏三栏布局的更多相关文章
- css中常用的七种三栏布局技巧总结
		三栏布局,顾名思义就是两边固定,中间自适应.三栏布局在开发十分常见,那么什么是三栏布局?例如当当网首页边商品导航和右边导航固定宽度,中间的主要内容随浏览器宽度自适应.效果如下图所示: 下面围绕的这样的 ... 
- 【css】css2实现两列三列布局的方法
		前言 对于 flex 弹性布局相信大家都有所了解,它是 css3 中的属性,然而它具有一定的兼容性问题.楼主前几天面试时遇到了面试官需要设计一个两列布局,我当然就说父元素 flex 吧哩吧啦,然而需要 ... 
- css实现等高布局 两栏自适应布局 三栏自适应布局
		等高布局: HTML结构如下: <div class="wrapper"> <div class="box"> <h1>.. ... 
- 【CSS】三栏/两栏宽高自适应布局大全
		页面布局 注意方案多样性.各自原理.各自优缺点.如果不定高呢.兼容性如何 三栏自适应布局,左右两侧300px,中间宽度自适应 (1) 给出5种方案 方案一: float (左右浮动,中间不用给宽,设置 ... 
- 如何用CSS实现左侧宽度固定,右侧自适应(两栏布局)?左右固定中间自适应(三栏布局)呢?
		在前端日常布局中,会经常遇到左侧宽度固定,右侧自适应或者左右两边固定,中间部分自适应的实用场景.本文例子中将列举出两种常用的两栏布局,左侧固定右侧自适应的常用方法以及代码和五种左右固定中间自适应的常用 ... 
- css三栏布局方案整理
		日常开发中,经常会用到css三栏布局,现将工作中常用的css 三栏布局整理如下: 什么是三栏布局: 三栏布局,顾名思义就是两边固定,中间自适应. 一. float布局 <!DOCTYPE htm ... 
- 从三栏自适应宽度布局到css布局的讨论
		如何实现一个三栏自适应布局,左右各100px,中间随着浏览器宽度自适应? 第一个想到的是使用table布局,设置table的宽度为100%,三个td,第1个和第3个固定宽度为100px,那么中间那个就 ... 
- CSS布局 - 三栏布局
		CSS布局技术可谓是前端技术中最基础的技术,就是因为基础,所以我认为要更加熟练,深入的去掌握,去梳理. 一. 传统 ---> 浮动实现的三栏布局 采用浮动实现的三栏布局有以下特点及注意事项: · ... 
- CSS布局:Float布局过程与老生常谈的三栏布局
		原文见博客主站,欢迎大家去评论. 使用CSS布局网页,那是前端的基本功了,什么两栏布局,三栏布局,那也是前端面试的基本题了.一般来说,可以使用CSSposition属性进行布局,或者使用CSSfloa ... 
随机推荐
- UIKit 框架之UIActionSheet
			UIAlertView和UIActionSheet相似,区别很小, 很容易理解. // // ViewController.m // UIActionSheet // // Created by Ci ... 
- MFC函数—CWinApp::LoadStdProfileSettings
			从 InitInstance 成员函数内调用该函数,启用和加载最近使用的(MRU)文件和最后浏览状态的列表.void LoadStdProfileSettings( UINT nMaxMRU = ... 
- 【手记】解决Resharper 2018.x起本机license server不能用的问题
			ReSharper升级到2018版后,一直用的好好的本机license server(下称LS)不能用了,报The license server address is incorrect....在网上 ... 
- SQL Server ——用  join     on    连接多个表
			select * from table1 inner join table2 on table1.id=table2.id 其实 INNER JOIN ……ON的语法格式可以概括为: FROM ((( ... 
- 检测SQLServer复制订阅进度
			--检测复制订阅进度 --SQLSERVER2012 --创建链接服务器ReadServer,WriteServer,它们分别链接发布服务器.订阅服务器 --修改数据库名称 --在分发服务器执行 US ... 
- oracle 备份数据库,导出数据库
			导出数据库 exp hljslfh2/hljslfh@dbsvr file=d:\hljslfh2Of0426.dmp 导入数据库 imp hljslfh2/hljslfh@localhost/dbs ... 
- 撩课-Web大前端每天5道面试题-Day32
			1.module.export.import是什么,有什么作用? module.export.import是ES6用来统一前端模块化方案的设计思路和实现方案. export.import的出现统一了前 ... 
- Hadoop在启动时的坑——start-all.sh报错
			1.若你用的Linux系统是CentOS的话,这是一个坑: 它会提示你JAVA_HOME找不到,现在去修改文件: .修改hadoop配置文件,手动指定JAVA_HOME环境变量 [${hadoop_h ... 
- innerHTML在ie9有部分无法添加
			在高版本的浏览器,innerHTML就如正常时候,里面可以套任何字符串,但是在ie9下,innerHTML不能是table ,tr td等标签字符串,解决方法如下: 在table添加一个tr var ... 
- 纯小白入手 vue3.0 CLI - 2.6 - 组件的复用
			vue3.0 CLI 真小白一步一步入手全教程系列:https://www.cnblogs.com/ndos/category/1295752.html 我的 github 地址 - vue3.0St ... 
