CSS布局

简单介绍几种CSS布局方式

左右布局

实现的方式:

1.float + margin:


左右布局1

2.position的absolute :


左右布局2

三栏布局

实现的方式:

三栏布局

水平居中

  • 行内或类行内元素(比如文本和链接)
    在块级父容器中让行内元素居中,只需使用 text-align: center;
    这种方法可以让 inline/inline-block/inline-table/inline/flex 等类型的元素实现居中。

  • 块级元素
    让块级元素居中的方法就是设置 margin-leftmargin-rightauto(前提是已经为元素设置了适当的 width 宽度,否则块级元素的宽度会被拉伸为父级容器的宽度)。

  • 多个块级元素
    如果要让多个块级元素在同一水平线上居中,那么可以修改它们的 display 值。

    多个块级元素居中

垂直居中

  • 行内或类行内元素(比如文本和链接)

单行

对于单行行内或者文本元素,只需为它们添加等值的 padding-toppadding-bottom 就可以实现垂直居中:

.link { padding-top: 30px; padding-bottom: 30px; }

如果因为某些原因我们不能使用 padding 属性来实现垂直居中,而且已知文本不会换行,那么就可以让 line-heightcenter 相等,从而实现垂直居中:

.center-text-trick {
  height: 100px;
  line-height: 100px;
  white-space: nowrap;
}

多行

多行文字垂直居中

你还可以使用 flexbox 实现垂直居中,对于父级容器为 display: flex 的元素来说,它的每一个子元素都是垂直居中的:

.flex-center-vertically {
  display: flex;
  justify-content: center;
  flex-direction: column;
  height: 400px;
}

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

推荐阅读更多精彩内容

  • 1. 前言 前端圈有个“梗”:在面试时,问个css的position属性能刷掉一半人,其中不乏工作四五年的同学。在...
    YjWorld阅读 4,598评论 5 15
  • 问答题47 /72 常见浏览器兼容性问题与解决方案? 参考答案 (1)浏览器兼容问题一:不同浏览器的标签默认的外补...
    _Yfling阅读 13,840评论 1 92
  • 前端布局非常重要的一环就是页面框架的搭建,也是最基础的一环。在页面框架的搭建之中,又有居中布局、多列布局以及全局布...
    一个敲代码的前端妹子阅读 822评论 0 12
  • CSS布局解决方案(终结版) 前端布局非常重要的一环就是页面框架的搭建,也是最基础的一环。在页面框架的搭建之中,又...
    杀个程序猿祭天阅读 596评论 0 2
  • 现在想来,虽然这份实习,并没有真正做特别多的业务。但仍然尝试着做了一个产品经理的基础工作,用户需求调研,数据分析,...
    一面天使一面魔阅读 170评论 0 0