布局思路:
外面一个大div,里面三个小div(都是浮动)。实现左右两栏宽度固定,中间宽度自适应。中间栏优先渲染。node
1.基本布局布局
外面一个大div,里面三个小div。注意中间栏写在前面,优先渲染。spa
2.外面大div设置左右padding值,分别是左右两栏的宽度(两栏之间如有空隙可适当增长margin值)。中间的width让Main所有充满。因为Main占据整个父元素width,Left和Right则被挤到下一行显示(注意此时Left和Main是对齐的)。.net
CSS以下:3d
效果以下:blog
3.将左右两栏移至上一行,此时要用到margin-left的负值效果。
代码以下:it
此时Left和Right分别移到了Main的首尾位置。(此时的字母Main已看不见)io
效果以下:ejs
4.因为此时的Left和Right都遮挡住了部分Main,因此还须要作调整。用position:relative来进行微调。渲染
代码以下:
也能够用负值:
#left {position:relative;left:-200px;}
#right {position:relative;right:-200px;}
效果以下:
此时圣杯布局完成。
资料参考:https://blog.csdn.net/yinmazuo/article/details/50218657
http://cnodejs.org/topic/56d70d5f4dfa4031185aabbf