display: flex实现元素居中,以及各种居中方法


近项目开发过程中需要实现元素居中布局,自己前端水平不是很高很是头痛,问题最终解决。自己记录下解决过程,以便下次查阅。

1、display :flex 布局(针对chrome浏览器和ie11)

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>display detail</title>
    <style>
        html,body {
            width: 100%;
            height: 100%;
            display: flex;
            flex-direction: row;/*这里可以不写,flex布局默认方向横向即row*/
            justify-content: center;
            align-items: center;
        }

        .div1 {
            display: flex;
            justify-content: center;
            align-items: center;
            width: 30em;
            height: 30em;
            border: 2px solid green;
        }
        .div2 {
            width: 10em;
            height: 5em;
            border: 2px solid red;
        }
        .div3 {
            width: 10em;
            height: 5em;
            border: 2px solid purple;
        }

    </style>
</head>
<body>
    <div class="div1">
        div1
        <div class="div2">
            div2
        </div>
        <div class="div3">
            div3
        </div>

    </div>
</body>
</html>

最终结果:

flex布局是我在开发中最新换使用的一种布局手段。

2、通过css的margin等计算来定位(这种本人不是很喜欢,很繁琐)

.div1 {
            width: 30em;
            height: 30em;
            border: 2px solid green;
            position: absolute;
            left: 50%;
            top: 50%;
            margin-top: -15em;
            margin-left: -15em;
        }

结果:

 

以后会不定期更新

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM