美文网首页
CSS元素水平居中

CSS元素水平居中

作者: GoFzy | 来源:发表于2019-03-13 09:22 被阅读0次

一、块级元素

1.1 margin

  这里需要说明的是外边距margin方法只适用于块级元素同时指定了宽度:因为若是非块级元素,左右外边距auto将不会起作用。同时块级元素如果没有指定宽度,默认是占据父级元素宽度的100%。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>margin居中使用</title>
    <style>
        .father {
            width: 200px;
            margin: 10px auto;
            background-color: pink;
        }
    </style>
</head>
<body>
    <div class="father">元素居中</div>
</body>
</html>

1.2 使用定位

  该定位方法对元素种类没有要求,因为会默认转换为行内块(inline-block),只不过需要知道元素的宽度,并将其参照元素设置定位属性。方法原理是首先left:50%;这样元素向左移动参照元素宽度一半的距离,此时还再向右移动回自己一般的距离就能保证元素水平居中:


定位居中原理
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>定位居中使用</title>
    <style>
        .father {
            position: relative;
        }
        .son {
            position: absolute;
            width: 200px;
            top: 0;
            left: 50%;
            margin-left: -100px;
            background-color: pink;
        }
    </style>
</head>
<body>
    <div class="father">
        <div class="son">元素居中</div>
    </div>
</body>
</html>

1.3 translate方法

  translate方法原理与定位一致,不过它使用更加方便,即不需要知道元素的宽度

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>translate居中使用</title>
    <style>
        .father {
            position: relative;
        }
        .son {
            position: absolute;
            width: 200px;
            top: 0;
            left: 50%;
            transform: translate(-50%,0);
            background-color: pink;
        }
    </style>
</head>
<body>
    <div class="father">
        <div class="son">元素居中</div>
    </div>
</body>
</html>

二、行内块与行内元素

  目前知道的方法是为父级元素添加text-align:center属性,其中父级元素不一定要求是块级元素,行内块元素亦可:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>text-align居中使用</title>
    <style>
        .father {
            display: inline-block;
            width: 500px;
            height: 500px;
            background-color: purple;
            text-align: center;
        }
        .son {
            display: inline-block;
            height: 100px;
            width: 100px;
            background-color: pink;
        }
    </style>
</head>
<body>
    <div class="father">
        <div class="son">元素居中</div>
    </div>
</body>
</html>

相关文章

  • 垂直居中,水平居中

    CSS设置行内元素的水平居中 CSS设置行内元素的垂直居中 CSS设置块级元素的水平居中 CSS设置块级元素的垂直居中

  • 2020-03-05 CSS水平垂直居中学

    1.块级元素水平居中,水平元素垂直居中 CodePen:CSS块级水平居中 2.块级元素垂直居中 CodePen:...

  • css 水平垂直居中实现方式

    css 水平垂直居中实现方式 水平垂直居中包括行内元素居中,以及块级元素居中 行内元素html结构 块级元素结构 ...

  • css 图片居中

    css图片居中(水平居中和垂直居中) css图片水平居中 块状元素直接用text-align:center, di...

  • CSS - 垂直水平居中方法

    前言 总括:整理 css 垂直水平居中方法,区分内联元素与块级元素 CSS垂直居中和水平居中 用css让一个容器水...

  • CSS之居中问题

    CSS居中主要分为两类 水平居中 (水平居中分为行内元素居中和块状元素居中 块状元素居中又分为 定宽元素 和 不...

  • css关于居中的方式

    父元素没有固定宽高 水平垂直居中 html: css: 水平居中 不确定子元素宽高 设置水平居中,先将子元素转化为...

  • CSS-居中

    CSS-居中 一. 水平居中 1. 行内元素水平居中 使用text-align属性,对行内元素定义居中 2. 块级...

  • CSS-居中

    CSS-居中 一. 水平居中 1. 行内元素水平居中 使用text-align属性,对行内元素定义居中 2. 块级...

  • CSS居中各种情况的解决情况

    CSS居中的几种情况 这里参考How to center anything with css 1. 元素水平居中 ...

网友评论

      本文标题:CSS元素水平居中

      本文链接:https://www.haomeiwen.com/subject/ydiapqtx.html