圣杯布局_html/css_WEB-ITnose
圣杯布局它的目标是左右两栏定宽,中间那一行流式。首先是html代码(为了简便处理这里就用位置命名ID,实际操作上还是使用语义化的词命名ID):
一、圣杯布局需要比较多的数学计算,这里我设left的宽度为X,right的宽度为Y。这里先不考虑padding和margin。
第一步,设置container的padding-left为left的宽度,padding-right为right的宽度。(图片来自 a list apart,假设了left宽为200px,right宽为150px)
#container{ padding-left:Xpx; padding-right:Ypx;}
第二步,将每一列都设定好宽度。
#container .column{ float:left;}#center{ width:100%;}#left{ width:Xpx;}#right{ width:Ypx;}#footer{ clear:both;}
第三步,设置负边距,把left放到应该到的位置上,就是center的左边。
#left{ width:Xpx; margin-left:-100%;}
第四步,使用相对定位,跟它自己的位置相距离它的宽,将left层移到padding-left的位置那边。
#container .column{ float:left; position:relative;}#left{ width:Xpx; margin-left:-100%; right:Xpx;}
第五步,把right层移到padding-right的那个位置上
#right{ width:Ypx; margin-right:-Ypx;}
最后一步,可用性的修改。由于中间center层是流式的,当窗口大小缩小到X+Y的时候,center就没有了,所以应该给#container设置一个最小宽度
body{ min-width:(2X+Y)px;}
接着就是修改IE6以下的bug了,margin负值在IE6上会失效把left层弄到很远的地方,需要把它拉回来
* html #left { left: Ypx;}
转自:http://blog.csdn.net/cui_angel/article/details/8306470
上一篇: 谈PHP学习方法
下一篇: 简单的移动设备检测PHP脚本
推荐阅读
-
利用css sprites减少图片请求_html/css_WEB-ITnose
-
HTML的checkbox和radio的美化_html/css_WEB-ITnose
-
HTML标签没闭合,可能导致 Chrome 崩溃_html/css_WEB-ITnose
-
HTML无刷新下载文件方法总汇_html/css_WEB-ITnose
-
如何布局 求思路_html/css_WEB-ITnose
-
bootstrap左侧导航 手风琴效果如何实现_html/css_WEB-ITnose
-
HTML代码优化注意要点同网站结构、布局、内容一样重要
-
利用CSS制作脸书_html/css_WEB-ITnose
-
求教,QQ和YY那个弹窗结构是用什么语言结构?html?xml?结合的是c c++ 还是?_html/css_WEB-ITnose
-
CSS兼容性总结_html/css_WEB-ITnose