
CSS左右两栏布局:固定宽度与自适应宽度完美结合
许多网页设计都需要实现这样的效果:页面分为左右两栏,左侧栏宽度固定,右侧栏自动填充剩余空间。本文将深入探讨如何使用CSS高效优雅地实现此布局。
上图展示了目标效果:左侧为固定宽度div,右侧div自适应剩余空间。 那么,如何用CSS代码实现呢?
最推荐、最简洁高效的方法是使用Flexbox布局。只需将父容器设置为Flex布局,并设置右侧div的flex: auto属性,即可让其自动填充剩余空间。
立即学习“前端免费学习笔记(深入)”;
当然,还有其他几种方法可以实现相同效果,但相对复杂:
- Grid布局: Grid布局也能轻松实现此布局。通过定义列宽,可指定左侧栏固定宽度,右侧栏自动填充剩余空间。
-
Padding + Absolute定位: 为左侧div设置固定宽度和padding,然后使用absolute定位右侧div,并设置其
left值等于左侧div宽度加上padding值。这种方法需要精确计算,相对复杂。 -
浮动 (不推荐): 让左侧div浮动,右侧div设置
margin-left值等于左侧div宽度。这种方法在现代布局中已不推荐,容易出现问题。 - 纯Absolute定位 (不推荐): 通过绝对定位精确控制div位置和大小。此方法需要精确计算元素尺寸,维护性较差。
综上所述,Flexbox是实现此布局最简洁、高效且推荐的方式。其他方法虽然可行,但相对繁琐,维护成本更高。










