明輝手游網(wǎng)中心:是一個(gè)免費(fèi)提供流行視頻軟件教程、在線學(xué)習(xí)分享的學(xué)習(xí)平臺(tái)!

設(shè)置元素水平、垂直居中有哪2種方式

[摘要]做一個(gè)水平和垂直居中的模態(tài)彈框這么一個(gè)小需求,對(duì)于我們這些前端來(lái)說(shuō),應(yīng)該是常事。  在css3出來(lái)以前,我們要想讓元素既水平居中又要垂直居中只有一個(gè)辦法(我能想到的),就是通過(guò)js計(jì)算,把它們定位到屏幕中間位置。這方法比較笨,也麻煩! ∠旅鎯煞N方式,可以讓元素快速定位到屏幕中間。   flex布...
做一個(gè)水平和垂直居中的模態(tài)彈框這么一個(gè)小需求,對(duì)于我們這些前端來(lái)說(shuō),應(yīng)該是常事。

  在css3出來(lái)以前,我們要想讓元素既水平居中又要垂直居中只有一個(gè)辦法(我能想到的),就是通過(guò)js計(jì)算,把它們定位到屏幕中間位置。這方法比較笨,也麻煩。

  下面兩種方式,可以讓元素快速定位到屏幕中間!

  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>

  使用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>

以上就是設(shè)置元素水平、垂直居中有哪兩種方式 的詳細(xì)內(nèi)容,更多請(qǐng)關(guān)注php中文網(wǎng)其它相關(guān)文章!


網(wǎng)站建設(shè)是一個(gè)廣義的術(shù)語(yǔ),涵蓋了許多不同的技能和學(xué)科中所使用的生產(chǎn)和維護(hù)的網(wǎng)站。