设置元素水平、垂直居中有哪两种方式

一个新手
Lepaskan: 2017-10-20 09:14:17
asal
1220 orang telah melayarinya

  做一个水平和垂直居中的模态弹框这么一个小需求,对于我们这些前端来说,应该是常事。

  在css3出来以前,我们要想让元素既水平居中又要垂直居中只有一个办法(我能想到的),就是通过js计算,把它们定位到屏幕中间位置。这方法比较笨,也麻烦。

  下面两种方式,可以让元素快速定位到屏幕中间。 

  flex布局


<style>
    .flex-mask {
        display: flex;
        position: fixed;
        z-index: 1;
        top: 0;
        left: 0;
        bottom: 0;
        right: 0;
        align-items: center;  // 垂直居中
        justify-content: center;  // 水平居中
        background: rgba(0,0,0,.5);
    }
    .flex-box {
        width: 500px;
        height: 300px;
        background-color: #fff;
        border-radius: 10px;
    }
</style>

<!-- 元素 -->
<p class="flex-mask">
    <p class="flex-box"></p>
</p>
Salin selepas log masuk

  使用translate


<style>
    .transform-box {
        position: fixed;
        z-index: 2;
        top: 50%;
        left: 50%;
        width: 300px;
        height: 150px;
        background-color: red;
        border-radius: 10px;
        transform: translate(-50%, -50%);
    }
</style>
<p class="transform-box"></p>
Salin selepas log masuk

Atas ialah kandungan terperinci 设置元素水平、垂直居中有哪两种方式 . Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan