双飞翼布局
2016-02-08 18:50
525 查看
双飞翼布局的意义
第一可以实现三列布局左右固定宽度,中间宽度自适应,第二个,通常三列布局都是按照左(sub)中(main)右(extra)顺序来写的,这样页面也会根据这个DOM结构来顺序加载,而如果用双飞翼布局,可以使三列布局中mian先加载,
sub和
extra后加载。
双飞翼布局的实现
双翼
html:<body> <div class="main"></div> <div class="sub"></div> <div class="extra"></div> </body>
这里如果都设置左浮动,
main就会出现在页面左边;
我们都知道,如果浮动布局一排里显示不下时,行框就会被挤到下一行;
那么如果边距为负,他会移动到页面以外,当值大于等于自身宽度时,他就会被移动到上一行。
这时就可以使用负边距来实现另外两列的布局
css:
.main{ float:left;width:100%;} .sub{ float:left;width:190px;margin-left:-100%;} .extra{float:left;width:230px;margin-left:-230px;}
效果如图:
鸟身
此时sub和
extra都定位到正常位置了,但是
main的左侧和右侧被挡住了。
因为
main,
sub,
extra都处在浮动层,而且
main是固定宽度,如果给
main设置margin或者padding值,会因为其固有的宽度而撑开飞翼布局,直接影响到
sub,
extra的位置;
所以给
main设置一个内层,为内层设置margin值
html:
<div class="main"> <div class="main-content"> </div> </div> <div class="sub"></div> <div class="extra"></div>
css:
.main-content{margin:0 230px 0 190px;}
效果图:
相关文章推荐
- Android布局的小窍门?
- Web布局连载——两栏固定布局(五)
- [div+css]晒晒最新制作专题推广页模板
- 在Windows 8.1的IE 11中屏蔽双击放大功能
- 设计更快的网页(三):字体和 CSS 调整
- 纯CSS制作的新闻网站中的文章列表
- 10条影响CSS渲染速度的写法与使用建议第1/3页
- 通过Mootools 1.2来操纵HTML DOM元素
- BS项目中的CSS架构_仅加载自己需要的CSS
- 很不错的 CSS Hack 又学了一招
- 发一个css比较清爽的写法
- CSS expression控制图片自动缩放效果代码[兼容 IE,Firefox]
- css布局网页水平居中常用方法
- CSS经典技巧十则第1/2页
- css 兼容性问题this.style.cursor=''hand''
- IE6不能正常解析CSS文件问题的解决方法及原因分析
- 欲练CSS ,必先解决IE的一些细节分析
- CSS文字截取功能实现代码