三列布局 ?

在看 imooc使用CSS布局 的时候遇到这样的设定:三列布局,左右定宽,中间要求自适应,做了一下,感觉要考虑几个点:

  • 重点是中间的自适应,在两端定宽的前提下要实现中间自适应,视频给出的方案是使用水平外边距实现,即左右外边距分别设置为为左右两列预留宽度;
  • 如果选择使用外边距实现自定义,则左右两列不能使用浮动,否则会因浮动框的特性变成多行;
  • 此时要保证三列同行,则左右两列只能选择绝对定位,将其从普通文档流中释放以避免互相影响;
  • 再来就是一些细节,比如左右两列定宽以后,如果直接应用padding,就会出现内容相交的情况,使用嵌套容器在内层设置padding则不会,为什么?
    又比如页面缩放到一定程度可能出现内容挤到一起,使用overflow可以解决么?
    设置了背景色的话,可能出现三列高度不一致的情况,对于设置了相同高度的列则可能会出现内容溢出的情况,有没有方法可以实现自动基于最高列的高度的等高分列呢?
    找到一种解决方案是 张鑫旭 - 纯CSS实现侧边栏/分栏高度自动相等
    高度不一致

    内容溢出
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 问答题47 /72 常见浏览器兼容性问题与解决方案? 参考答案 (1)浏览器兼容问题一:不同浏览器的标签默认的外补...
    _Yfling阅读 13,809评论 1 92
  • 圣杯布局 圣杯布局是典型的 CSS 布局问题,有着众多的解决方案。 圣杯布局是一种非常经典和常用的布局方式,其所指...
    调皮的小卷羊阅读 785评论 0 0
  • 如何在兼容所有浏览器的前提下,实现一个不定宽度的容器被分为左中右三列,左右两列定宽100px,中间列自适应剩余宽度...
    UolCano阅读 1,201评论 0 1
  • 今天是猴年的第一天班,也是新的起点。分享一个如何用css实现我们在工作中常见的两列布局:1.左侧固定宽度,高度自适...
    webCoder阅读 4,279评论 5 13
  • 1.如果是两列布局,就使用float :left; float:right; 来使其两列在一行上面2.三列布局:...
    吧啦啦小汤圆阅读 373评论 0 0