CSS实现三栏自适应布局(两边宽度固定,中间自适应)
2018-05-30 22:46
447 查看
所谓三列自适应布局指的是两边定宽,中间block宽度自适应。这道题在今年网易内推前端工程师面试的时候也被问到。 我这里主要分为两大类,一类是基于position传统的实现,一类是基于css3新特性弹性盒模型布局实现。
1. 基于传统的position和margin等属性进行布局
这里也分为三种方法,分别为绝对定位法,圣杯布局,自身浮动法。1).绝对定位法
绝对定位法原理是将左右两边使用absolute定位,因为绝对定位使其脱离文档流,后面的center会自然流动到他们上面,然后使用margin属性,留出左右元素的宽度,既可以使中间元素自适应屏幕宽度。 代码如下: 文档代码:[html] view plain copy print?
- <!DOCTYPE html>
- <html>
- <head>
- <meta charset=“UTF-8”>
- <title>layout_box</title>
- <link rel=“stylesheet” type=“text/css” href=“../css/layout_box.css”>
- </head>
- <body>
- <h3>实现三列宽度自适应布局</h3>
- <div id = “left”>我是左边</div>
- <div id = “right”>我是右边</div>
- <div id = “center”>我是中间</div>
- </body>
- </html>
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>layout_box</title> <link rel="stylesheet" type="text/css" href="../css/layout_box.css"> </head> <body> <h3>实现三列宽度自适应布局</h3> <div id = "left">我是左边</div> <div id = "right">我是右边</div> <div id = "center">我是中间</div> </body> </html>css代码:
[css] view plain copy print?
- html,body{ margin: 0px;width: 100%; }
- h3{height: 100px;margin:20px 0 0;}
- #left,#right{width: 200px;height: 200px; background-color: #ffe6b8;position: absolute;top:120px;}
- #left{left:0px;}
- #right{right: 0px;}
- #center{margin:2px 210px ;background-color: #eee;height: 200px; }
html,body{ margin: 0px;width: 100%; } h3{height: 100px;margin:20px 0 0;}
相关文章推荐
- 使用CSS实现三栏自适应布局(两边宽度固定,中间自适应)
- 使用CSS实现三栏自适应布局(两边宽度固定,中间自适应)
- 使用CSS实现三栏自适应布局(两边宽度固定,中间自适应)
- 使用CSS实现三栏自适应布局(两边宽度固定,中间自适应)
- 使用CSS实现三栏自适应布局--两边宽度固定,中间自适应
- 纯CSS实现三列布局(两边固定,中间自适应)
- CSS三栏布局探讨——中间固定宽度两边自适应宽度
- CSS实现自适应高度布局:头部底部固定,中间自适应铺满屏幕剩余高度,中间盒子里左盒子固定右盒子自适应宽度
- DIV+CSS实现两边固定宽度,中间自适应宽度
- 记一道css面试题 : 三栏布局两边宽度固定,中间宽度自适应,并且布局随屏幕大小改变。
- CSS三栏布局(两边固定中间自适应宽度)的方法
- 纯CSS实现三列布局(两边固定,中间自适应)
- CSS三栏布局——中间固定两边自适应宽度
- CSS三栏布局(两边固定中间自适应宽度)的方法
- html中散列布局的实现,中间自适应大小,两边固定宽度
- CSS三栏布局——中间固定两边自适应宽度
- CSS三栏布局(两边固定中间自适应宽度)的方法
- CSS自适应布局(包括两边宽度固定中间宽度自适应与中间宽度固定两边宽度自适应)
- CSS布局:三栏布局,中间栏固定宽度,左右两边自适应
- 前端经典面试题之CSS实现三栏布局,左右宽度固定,中间宽度自适应