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实现常用的两栏三栏布局的更多相关文章

  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. 分布式理论(三)—— 一致性协议之 2PC

    前言 为了使系统尽量能够达到 CAP,于是有了 BASE 协议,而 BASE 协议是在可用性和一致性之间做的取舍和妥协. 人们往往需要在系统的可用性和数据一致性之间反复的权衡.于是呢,就产生我们标题中 ...

  2. MVC初级教程(一)

    演示产品源码下载地址:http://www.jinhusns.com/Products/Download 

  3. 几种流行的AJAX框架对比:Jquery,Mootools,Dojo,ExtJs,Dwr

    1:Jquery 主页:http://jquery.com/ 设计思想:简洁的方案思想,几乎所有操作都是以选择DOM元素(有强大的Selector)开始,然后是对其的操作(Chaining等特性). ...

  4. JS 定时器 setTimeout 与 setInterval 的区别和用法

    定时器: window.setTimeout(function(){},间隔时间毫秒); -- 定时炸弹,延迟执行,只执行一次 window.setInterval(function(){},间隔的时 ...

  5. 使用whiptail写linux字符界面ssh链接工具2.0

    先看一下效果 选择分组 选择服务器 开始链接 为什么写 之前写过一个字符界面的链接工具,但是看起来比较简陋,他是这个样子的: 看起来十分不好看.后来在网上看到shell中有一个whiptail工具可以 ...

  6. java数组创建

    java数组创建:int[] number = new int[10]; int[]:表明这是一个数组 new int[10]:给前面的数组类型的number变量分配10个int类型的空间大小

  7. ubuntu16.04下安装mysql,并开启远程访问

    一.安装 apt-get install mysql-server 二.本地连接 mysql默认开启了本地连接 直接通过mysql -uuser -p,然后输入密码访问 三.开启远程访问 3.1.创建 ...

  8. MVC--初步理解(01)

    一.一般意义上的MVC模式 MVC模式(Model-View-Controller)是软件工程中的一种软件架构模式,把软件系统分为以下三个基本部分: 模型(Model):模型用于封装与应用程序的业务逻 ...

  9. 一些减少代码量、提高开发效率的利器(Java)

    Spring Boot mybatis-plus代码生成器和自带CRUD接口 lombok 库: Apache Commons & guava AOP Java8: stream & ...

  10. LeetCode DB: Duplicate Emails

    Write a SQL query to find all duplicate emails in a table named Person. +----+---------+ | Id | Emai ...