1、两栏

  1. <div class="wrapper">
  2. <div class="half left">left box
    <p>自适应</p>
    </div>
  3. <div class="half right">right box 固定</div>
  4. </div>

1.1、左侧宽度固定,右侧自适应

方式一、float+margin

  1. .wrapper{
  2. width: 100%;
  3. overflow: auto; //清浮动
  4. }
  5. .left{
  6. float: left;
  7. width: 200px;
  8. background-color: #5cb85c;
  9. }
  10. .right{
  11. margin-left: 230px;
  12. background-color: #66afe9;
  13. }

方式二、float+overflow

  1. .wrapper{
  2. width: 100%;
  3. overflow: auto; //清浮动,或overflow:hidden
  4. }
  5. .left{
  6. float: left;
  7. width: 200px;
  8. margin-left: 30px;
  9. background-color: #5cb85c;
  10. }
  11. .right{
  12. overflow: hidden; //或overflow: auto
  13. background-color: #66afe9;
  14. }

方式三、float+position

  1. .wrapper{
  2. position: relative;
  3. width: 100%;
  4. overflow: auto; //清浮动,或overflow:hidden
  5. }
  6. .left{
  7. float: left;
  8. width: 200px;
  9. background-color: #5cb85c;
  10. }
  11. .right{
  12. position: absolute;
  13. left: 230px;
  14. right: 0;
  15. background-color: #66afe9;
  16. }

方式四、flex

  1. .wrapper{
  2. display: flex;
  3. flex-direction: row;
  4. width: 100%;
  5. }
  6. .left{
  7. flex: 0 0 auto;
  8. width: 200px;
  9. margin-right: 30px;
  10. background-color: #5cb85c;
  11. }
  12. .right{
  13. flex: 1;
  14. background-color: #66afe9;
  15. }

2、三栏

两边固定中间自适应

方式一、float+margin

  1. <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>
  1. //css
  2. .wrapper{
  3. width: %;
  4. overflow: auto;
  5. }
  6.  
  7. .wrapper .left{
  8. float: left;
  9. width: 200px;
  10. background-color: #5cb85c;
  11. }
  12. .wrapper .right{
  13. float: right;
  14. width: 100px;
  15. background-color: #66afe9;
  16. }
  17. .wrapper .middle{
  18. margin: 110px 230px;
  19. background-color: #A3AEFF;
  20. }

方式二、position+margin (这种方式的父元素高度取决于中间部分的高度,当两侧高度大于中间高度时,则出现高度塌陷,除非指定父元素的高度,当两侧高度小于中间部分时,可以使用。)

  1. .wrapper{
  2. position: relative;
  3. width: 100%;
  4. }
  5.  
  6. .wrapper .left{
  7. position: absolute;
  8. left: 0;
  9. width: 200px;
  10. background-color: #5cb85c;
  11. }
  12. .wrapper .right{
  13. position: absolute;
  14. right: 0;
  15. width: 100px;
  16. background-color: #66afe9;
  17. }
  18. .wrapper .middle{
  19. margin: 0 110px 0 230px;
  20. background-color: #A3AEFF;
  21. }

方式三、flex

  1. <div class="wrapper">
  2. <div class="left">left box
  3. <p>固定</p>
  4. </div>
  5. <div class="middle">中间自适应</div>
  6. <div class="right">right box
  7. <h4>ssss</h4>
  8. <h5>ddddd</h5>
  9. </div>
  10. </div>
  11.  
  12. .wrapper{
  13. display: flex;
  14. flex-direction: row;
  15. width: %;
  16. .left{
  17. width: 200px;
  18. background-color: #5cb85c;
  19. }
  20. .right{
  21. width: 100px;
  22. background-color: #66afe9;
  23. }
  24. .middle{
  25. flex: ;
  26. margin: 10px 30px;
  27. background-color: #A3AEFF;
  28. }
  29. }

css实现常用的两栏三栏布局的更多相关文章

  1. css中常用的七种三栏布局技巧总结

    三栏布局,顾名思义就是两边固定,中间自适应.三栏布局在开发十分常见,那么什么是三栏布局?例如当当网首页边商品导航和右边导航固定宽度,中间的主要内容随浏览器宽度自适应.效果如下图所示: 下面围绕的这样的 ...

  2. 【css】css2实现两列三列布局的方法

    前言 对于 flex 弹性布局相信大家都有所了解,它是 css3 中的属性,然而它具有一定的兼容性问题.楼主前几天面试时遇到了面试官需要设计一个两列布局,我当然就说父元素 flex 吧哩吧啦,然而需要 ...

  3. css实现等高布局 两栏自适应布局 三栏自适应布局

    等高布局: HTML结构如下: <div class="wrapper"> <div class="box"> <h1>.. ...

  4. 【CSS】三栏/两栏宽高自适应布局大全

    页面布局 注意方案多样性.各自原理.各自优缺点.如果不定高呢.兼容性如何 三栏自适应布局,左右两侧300px,中间宽度自适应 (1) 给出5种方案 方案一: float (左右浮动,中间不用给宽,设置 ...

  5. 如何用CSS实现左侧宽度固定,右侧自适应(两栏布局)?左右固定中间自适应(三栏布局)呢?

    在前端日常布局中,会经常遇到左侧宽度固定,右侧自适应或者左右两边固定,中间部分自适应的实用场景.本文例子中将列举出两种常用的两栏布局,左侧固定右侧自适应的常用方法以及代码和五种左右固定中间自适应的常用 ...

  6. css三栏布局方案整理

    日常开发中,经常会用到css三栏布局,现将工作中常用的css 三栏布局整理如下: 什么是三栏布局: 三栏布局,顾名思义就是两边固定,中间自适应. 一. float布局 <!DOCTYPE htm ...

  7. 从三栏自适应宽度布局到css布局的讨论

    如何实现一个三栏自适应布局,左右各100px,中间随着浏览器宽度自适应? 第一个想到的是使用table布局,设置table的宽度为100%,三个td,第1个和第3个固定宽度为100px,那么中间那个就 ...

  8. CSS布局 - 三栏布局

    CSS布局技术可谓是前端技术中最基础的技术,就是因为基础,所以我认为要更加熟练,深入的去掌握,去梳理. 一. 传统 ---> 浮动实现的三栏布局 采用浮动实现的三栏布局有以下特点及注意事项: · ...

  9. CSS布局:Float布局过程与老生常谈的三栏布局

    原文见博客主站,欢迎大家去评论. 使用CSS布局网页,那是前端的基本功了,什么两栏布局,三栏布局,那也是前端面试的基本题了.一般来说,可以使用CSSposition属性进行布局,或者使用CSSfloa ...

随机推荐

  1. CentOS 7.2安装Docker-ce

    1.Docker分类 Docker Engine改为Docker CE(社区版) 它包含了CLI客户端.后台进程/服务以及API.用户像以前以同样的方式获取.Docker Data Center改为D ...

  2. 表格(Table)隔行变色

    在ASP.NET的Repeater控件,实现隔行变色,是极简单的事情.因为它有ListItemType.Item和ListItemType.AlternatingItem模版.如果在普通的表格(Tab ...

  3. java文件下载以及中文乱码解决

    在客户端下载文件时替换下载文件的名称,但是当名称是中文时浏览器会出现乱码,解决代码如下: public org.springframework.http.ResponseEntity<Input ...

  4. PetaPoco源代码学习--1.使用的Attribute介绍

    新版本的PetaPoco使用特性进行注解的形式来代替的老版本的映射类的形式.新版本中使用的特性主要包括以下几种: 名称   用途 TableNameAttribute Class 指定POCO实体类对 ...

  5. 学习Memcached:2基本应用之控制台使用

    1.首先新建一个控制台应用. 2.将下载好需要引用的Memcached的Dll导入进来. 3.前期准备工作就结束了,其实很简单,memcache的配置使用是挺简单.下面就是写代码了. using Me ...

  6. HDU4185(KB10-G 二分图最大匹配)

    Oil Skimming Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Tota ...

  7. 解决ios10以上版本缩放问题

    <script type="text/javascript"> /*解决ios10以上版本缩放问题 20171102*/ window.onload=function ...

  8. php+xml有什么用

    很多招聘网上找php程序员的时候都说要懂xml,这个xml+php在web网站开发方面到底有什么应用呢,希望有知道的朋友能给我具体说说,谢谢了! 我说的是在网站中的实际应用有哪些,不是网上抄的xml的 ...

  9. 【代码笔记】iOS-plist获得城市列表

    一,工程图. 二,代码. - (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the ...

  10. es6 类 和构造函数