How to use CSS to center a box horizontally and vertically (8 methods)

How to use CSS to center a box horizontally and vertically (8 methods)

Original code:

center.html :

<!DOCTYPE html>
<html lang="Zh">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Center</title>
    <link rel="stylesheet" href="center.css">
</head>

<body>
    <div class="father">
        <div class="son"></div>
    </div>
</body>

</html>

center.css :

body {
    background-color: #6ed0ff;
}

.father {
    background-color: #be33ec;
    border-radius: 20px;
    box-shadow: 0 0 15px rgb(0, 0, 0);
    margin: 100px auto;
    width: 300px;
    height: 300px;
}

.son {
    background-color: #fcff00;
    border-radius: 20px;
    box-shadow: 0 0 10px rgb(0, 0, 0);
    width: 100px;
    height: 100px;
}

Original effect:

insert image description here

To achieve the vertical centering effect of the child box relative to the parent box:

insert image description here

1. grid

.father {
    display: grid;
}

.son {
    align-self: center;
    justify-self: center;
}

2. absolute + negative margin

.father {
    position: relative;
}

.son {
    position: absolute;
    left: 50%;
    top: 50%;
    margin-left: -50px;
    margin-top: -50px;
}

3. absolute + transform

.father {
    position: relative;
}

.son {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
}

4. absolute + margin: auto

.father {
    position: relative;
}

.son {
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    margin: auto;
}

5. flex

.father {
    display: flex;
    justify-content: center;
    align-items: center;
}

6. margin + transfrom

.father {
    overflow: hidden;
}

.son {
    margin: 50% auto;
    transform: translateY(-50%);
}

7. table-cell

.father {
    display: table-cell;
    text-align: center;
    vertical-align: middle;
}

.son {
    display: inline-block;
}

8. inline-block + vertical-align

.father {
    text-align: center;
    line-height: 300px;
}

.son {
    display: inline-block;
    vertical-align: middle;
}

This concludes this article on 8 ways to use CSS to center a box horizontally and vertically. For more information on how to center a box horizontally and vertically with CSS, please search previous articles on 123WORDPRESS.COM or continue browsing the related articles below. I hope you will support 123WORDPRESS.COM in the future!

<<:  Specific use of MySQL internal temporary tables

>>:  How to set a fixed IP address for a VMware virtual machine (graphic tutorial)

Recommend

Summary of 50+ Utility Functions in JavaScript

JavaScript can do a lot of great things. This art...

Example of ellipsis when CSS multi-line text overflows

Ellipses appear when multi-line text overflows Th...

Tomcat8 uses cronolog to split Catalina.Out logs

background If the catalina.out log file generated...

Summary of methods to check whether the port is open in Linux

Method 1: Use lsof command We can use the lsof co...

Installation tutorial of mysql8.0rpm on centos7

First, download the diagram 1. First uninstall th...

JavaScript Canvas implements Tic-Tac-Toe game

This article shares the specific code of JavaScri...

How to build a standardized vmware image for kubernetes under rancher

When learning kubernetes, we need to practice in ...

Detailed explanation of the difference between uniapp and vue

Table of contents 1. Simple page example 2.uni-ap...

Install and configure MySQL 5.7 under CentOS 7

This article tests the environment: CentOS 7 64-b...

Summary of basic knowledge points of Linux group

1. Basic Introduction of Linux Group In Linux, ev...

How to use JS to check if an element is within the viewport

Preface Share two methods to monitor whether an e...

How to install multiple mysql5.7.19 (tar.gz) files under Linux

For the beginner's first installation of MySQ...

MySQL 8.0.19 Installation Tutorial

Download the installation package from the offici...