资讯专栏INFORMATION COLUMN

css实现垂直居中的几种方式

187J3X1 / 2177人阅读

摘要:单行文本使用我是垂直居中文本使用我是垂直居中文本父元素子元素高度确定高度确定将设置为本元素高度的一半父元素子元素高度不确定我会绝对居中额外元素与上两个原理一样多设置了一个额外元素,使额外元素的为为元素的高度的负一半使用

1.单行文本使用line-height

</>复制代码

  1. 我是垂直居中文本
  2. //css
  3. child{
  4. line-height: 100px;
  5. }

2.使用table-cell+vertical-align

</>复制代码

  1. 我是垂直居中文本
  2. //css
  3. .parent{
  4. display: table-cell;
  5. height: 100px;
  6. vertical-align: middle;
  7. }

3.父元素、子元素高度确定高度确定position+margin

</>复制代码

  1. //css 将margin-top设置为本元素高度的一半
  2. .parent{
  3. position: relative;
  4. width: 200px;
  5. height: 100px;
  6. background: red;
  7. }
  8. .child{
  9. position: absolute;
  10. width: 100%;
  11. height: 30px;
  12. top: 50%;
  13. margin-top: -15px;
  14. background: green;
  15. }

4.父元素、子元素高度不确定

</>复制代码

  1. 我会绝对居中
  2. //css
  3. .parent{
  4. position: relative;
  5. background: red;
  6. width: 200px;
  7. height: 100px;
  8. }
  9. .child{
  10. position: absolute;
  11. top: 50%;
  12. left: 50%;
  13. transform: translate(-50%, -50%);
  14. color: green;
  15. }

5.额外元素+margin,与上两个原理一样;多设置了一个额外元素,使额外元素的height为50%,margin-bottom为center元素的高度的负一半-(height + padding)/2

</>复制代码

  1. //css
  2. .parent{
  3. width: 200px;
  4. height: 100px;
  5. background: green;
  6. }
  7. .floater{
  8. height: 50%;
  9. margin-bottom: -25px;
  10. }
  11. .child{
  12. width: 50px;
  13. height: 50px;
  14. background: red;
  15. }

6.使用flex

</>复制代码

  1. .parent{
  2. display: flex;
  3. flex-flow: column nowrap;
  4. justify-content: center;
  5. }

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/115341.html

相关文章

  • (面试题)垂直居中几种实现方式

    摘要:尤其是在实际页面中,有很多特殊的场景,导致水平居中实现起来比较麻烦。这篇文章旨在纪录一些我知道的居中方式。以一道经典面试题为例一个的在一个水平垂直居中,用实现。首先定义元素层和垂直居中无关的样式直接定义在里。 相比较水平居中,垂直居中比较复杂点。尤其是在实际页面中,有很多特殊的场景,导致水平居中实现起来比较麻烦。这篇文章旨在纪录一些我知道的居中方式。以一道经典面试题为例:一个200*2...

    cheukyin 评论0 收藏0
  • CSS - 实现垂直居中几种方式

    摘要:元素为未知宽高的元素和元素为为定宽定高自身包含尺寸的元素的元素绝对定位和负边距绝对定位和原理当一个绝对定位元素,其对立定位方向属性同时有具体定位数值的时候,流体特性,具有流体特性绝对定位元素的的填充规则和普通流体元素一模一样参考 1. 元素为未知宽高的元素flexhttp://www.ruanyifeng.com/blo... display: flex; justify-conten...

    light 评论0 收藏0
  • CSS实现垂直居中几种方法

    摘要:垂直居中是布局中十分常见的效果之一,为实现良好的兼容性,端实现垂直居中的方法一般是通过绝对定位,,负边距等方法。有了,针对移动端的垂直居中就更加多样化。方法这实际上是方法的变形,移位是通过来实现的。 垂直居中是布局中十分常见的效果之一,为实现良好的兼容性,PC端实现垂直居中的方法一般是通过绝对定位,table-cell,负边距等方法。有了css3,针对移动端的垂直居中就更加多样化。 方...

    FullStackDeveloper 评论0 收藏0
  • CSS实现垂直居中几种方法

    摘要:垂直居中是布局中十分常见的效果之一,为实现良好的兼容性,端实现垂直居中的方法一般是通过绝对定位,,负边距等方法。有了,针对移动端的垂直居中就更加多样化。方法这实际上是方法的变形,移位是通过来实现的。 垂直居中是布局中十分常见的效果之一,为实现良好的兼容性,PC端实现垂直居中的方法一般是通过绝对定位,table-cell,负边距等方法。有了css3,针对移动端的垂直居中就更加多样化。 方...

    sourcenode 评论0 收藏0
  • 使一个div垂直+水平居中几种方法

    摘要:前几天去一家互联网公司面试,面试官问到了这个应该算是比较简单的问题,在我自认为回答正确时,才知道这道题的答案有很多种,下面就让我们一起来探讨一下这个问题思路绝对定位居中原始版这个是我回答出来的,也是被各位所熟知的一种方法,设外层相对定位,内 前几天去一家互联网公司面试,面试官问到了这个应该算是比较简单的问题,在我自认为回答正确时,才知道这道题的答案有很多种,下面就让我们一起来探讨一下这...

    joyqi 评论0 收藏0

发表评论

0条评论

187J3X1

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<