博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
css 元素居中
阅读量:7096 次
发布时间:2019-06-28

本文共 1356 字,大约阅读时间需要 4 分钟。

一:水平居中

1、行内元素水平居中

在父元素上设置 text-align: center 使文字/图片水平居中。

.container {  text-align: center;}

2、块级元素水平居中

  • 先给块级元素设置宽度(不设置宽度,块级元素自己占据一整行,何谈居中)
  • 再给块级元素设置margin:0 auto;(当上下margin不一定是0,可以按照需求来设置)
.container {  width: 200px;  margin:  0 auto;}

二、垂直居中

1、块级元素内部垂直居中

原理:设置块级元素上下padding相等

前提:没有设置高度,高度由内容撑开。块级元素如果设置了高度,就不知道如何设置padding的数值

 

好好学习

天天向上

执行结果

clipboard.png

2、绝对定位实现垂直居中

(1),

使用前提是块级元素的宽高固定

我是标题
我是内容

(2)解析:

使用绝对定位 position: absolute,让dialog起点偏移到页面的中央

clipboard.png

通过负margin,偏移dialog宽高的一半,让dialog处于正中。不用relative的原因是已经用了绝对定位了,所以只好用负margin。结果如图

clipboard.png

(3)块级元素的宽高不固定,就不能用负margin了(margin使用百分比是相对于父元素的宽度)。我们可以用css3的一个transform的属性,transform是相对自身的宽高来做偏移的。

clipboard.png

3、vertical-align实现水平垂直居中

原理:

  • 通过text-align:center 实现水平居中
  • 通过伪元素设置一个内容为空的元素,设置高度为100%,通过vertical-align实现基线对齐。

使用环境:块级元素中设置行内元素水平垂直居中

代码:
结果:

clipboard.png

遇坑:1、当然使用绝对定位也可以实现这个效果

2、伪元素设置display:block是有问题,需要设置为inline-block

clipboard.png

3、使用伪元素是为了减少标签

clipboard.png

4、table-cell实现居中

原理:把box设置为表格元素(display: table-cell),通过vertical-align: middle对里面的元素做垂直居中

缺点:把box设置为display: table-cell,box不再是块级元素,如果不设置宽度就会收缩。

clipboard.png

代码:
结果:

clipboard.png

5、display: flex实现

代码:

.space { width: 100vw; height: 100vh; /* 设置宽高以显示居中效果 */ display: flex; /* 弹性布局 */ align-items: center; /* 垂直居中 */ justify-content: center; /* 水平居中 */}body { margin: 0; background: rgba(0, 0, 0, .95);}.earth::after { content: '?'; font-size: 85px;}

转载地址:http://psaql.baihongyu.com/

你可能感兴趣的文章
tapestry显示image
查看>>
memcached
查看>>
nginx+多个tomcat的负载均衡
查看>>
初识HDFS(10分钟了解HDFS、NameNode和DataNode)
查看>>
再谈互联网为何需要人文关怀?
查看>>
美团“反黑”:是矫情还是刷存在感?
查看>>
通过 http post 方式上传多张图片
查看>>
【新书推荐】“上海高校精品课程”立体化教材《数据库原理及应用》第3版出版发行...
查看>>
我的友情链接
查看>>
linux配置双网卡双路由
查看>>
TextField输入时被Keyboard挡住的解决办法
查看>>
iOS 键盘遮挡输入框的解决方案
查看>>
POJ -- 3087 Shuffle'm Up
查看>>
cocospods使用
查看>>
简单模拟STL库中string的实现
查看>>
redis集群详细配置
查看>>
Python smtplib使用实例:网易邮箱向QQ邮箱发送邮件
查看>>
Google Protobuf在Netty中的使用
查看>>
今年以来的美国重大信息泄漏事件回顾
查看>>
TCP/IP 3.1动态路由选择协议
查看>>