注意:是左栏宽度不固定,右栏宽固定。
网上讲的大部分都是左栏宽度固定,要是右栏宽度固定,就用CSS把真实的左栏显示为右栏。由于SEO里,在HTML里先出现的内容被认为是重要的,所以,左栏的内容一定要先于右栏输出。这样就不能通过把右栏先输出,运用 position:absolute, right:0 的方法来做了。
要达到上面的要求,对我来说确实是一个难题,设定了 右栏为 absolute ,right:0, 左栏设 margin-right 后,虽然表现为两栏, 但是右栏却不能撑开父容器的高度,搞的页脚出现在不正确的位置上。因为 absolute 是不影响父容器的大小的。
废话不说了,先上别人的代码(原网址打不开了):
简单的叙述一下作者的思路,可能跟他说的不一样:左栏 leftColumn, 右栏 rightColumn
leftColumn : width:100%;float:right;margin-left:-200px;
rightColumn : width:200px;float:right;
左栏里在套一层: leftColumnWrapper
leftColumnWrapper: margin-left:200px;
左栏的宽度是 100% ,就是说它的宽度不固定,margin-left:-200px ,就是让它在 -200px 的位置上开始,不设置 padding-left:-200px 是因为 padding-left 好像不接受负值。不设置 left ,是因为它的 position 不是 absolute 的。
这样一来,leftColumn 的前 200px 的内容就被遮住了,所以设置个 leftColumnWrapper。
就这样。
IE6下可能会有些问题。没有IE6,暂时不考虑。
| < Prev | Next > |
|---|



