整合營銷服務(wù)商

          電腦端+手機端+微信端=數(shù)據(jù)同步管理

          免費咨詢熱線:

          css動畫-未知寬高盒子居中方法

          css動畫-未知寬高盒子居中方法

          知寬高盒子居中方法

          相信很多人都知道怎樣讓一個已知寬高的盒子在瀏覽器水平和垂直都居中,那么如何讓一個未知寬高的盒子水平和垂直都居中呢?

          設(shè)置已知寬高的盒子水平和垂直都居中的方式,只需要設(shè)置盒子絕對定位的坐標是50%,然后再通過margin給負的一半寬度和高度即可實現(xiàn)。

          代碼如下:

          <!doctype html>

          <html>

          <head>

          <meta charset="utf-8">

          <title>水平和垂直居中方式</title>

          <style>

          .box{width:400px; height:200px; background:pink;}

          .box{

          position:absolute;

          left: 50%;

          top: 50%;

          margin-left: -200px;

          margin-top: -100px;

          }

          </style>

          </head>

          <body>

          <div class="box">已知寬高的盒子水平和垂直居中</div>

          </body>

          </html>

          現(xiàn)在來看看如何讓一個未知寬高的盒子在瀏覽器水平和垂直都居中,先來了解下css3轉(zhuǎn)換模塊的transform:translate(x,y);位移屬性。

          觀察以下代碼,第一個盒子為位移盒子的參照物,第二第三個盒子分別設(shè)置了位移的水平方向為不同的百分比的值。

          <!doctype html>

          <html>

          <head>

          <meta charset="utf-8">

          <title>盒子水平垂直居中方法</title>

          <style>

          *{padding: 0; margin: 0; list-style: none;}

          .sport{width: 400px; line-height: 30px; background:#f10180; color:#fff; margin-left: 500px;}

          .canzhao{background:blue; transform:translate(0,0);}

          .weiyi01{ transform:translate(-50%,0);}

          .weiyi02{ transform:translate(-100%,0); background:purple;}

          </style>

          </head>

          <body>

          <div class="sport canzhao">寬度400px盒 transform:translate(0,0);</div>

          <div class="sport weiyi01">寬度400px盒 transform:translate(-50%,0);</div>

          <div class="sport weiyi02">寬度400px盒 transform:translate(-100%,0);</div>

          </body>

          </html>

          顯示效果如圖:

          通過上面代碼和效果,可以得到一個結(jié)論:transform:translate(x,y); 如果 x 和 y 的值是百分比,則位移距離的參照物是自身元素的寬度和高度。

          那么通過上面的結(jié)論,就可以讓一個未知寬高的盒子實現(xiàn)水平和垂直都居中了,設(shè)置元素絕對定位和定位坐標值為50%后,只需要設(shè)置盒子水平和垂直方向位移的值都是-50%即可。

          代碼如下:

          <!doctype html>

          <html>

          <head>

          <meta charset="utf-8">

          <title>盒子水平垂直居中方法</title>

          <style>

          *{padding: 0; margin: 0; list-style: none;}

          .box01{width: 200px; height: 200px; background:blue; color:#fff;

          position:absolute;

          left: 50%; top: 50%;

          margin-left: -100px;

          margin-top: -100px;

          }

          .box02{background:#f10180; color:#fff; font-size:30px; padding: 20px;

          position:absolute;

          left: 50%;

          top: 50%;

          transform:translate(-50%,-50%);

          }

          </style>

          </head>

          <body>

          <div class="box01">已知知寬高的小水平垂直都居中盒子</div>

          <div class="box02">未知寬高的小盒子水平垂直都居中</div>

          </body>

          </html>

          效果對比如圖:

          需要注意的問題是現(xiàn)在css3屬性在低版本瀏覽器是存在兼容性為問題的,如果是一些移動端項目或者是一些不要求兼容低版本瀏覽器的項目可以使用此方法對盒子進行居中。

          皮皮蝦,我們走——bbs.520it.com

          lexbox

          通常首選方法是使用flexbox居中內(nèi)容。只需三行代碼即可:display:flex,然后使用 align-items:center justify-content:center 將子元素垂直和水平居中。

          如下代碼:

          html:

          <div class="flexbox-centering">
            <div>Centered content.</div>
          </div>

          css:

          .flexbox-centering {
            display: flex;
            justify-content: center;
            align-items: center;
            height: 100px;
          }

          Grid

          使用grid(網(wǎng)格)與flexbox非常相似,也是一種常見的技術(shù),尤其是布局中已經(jīng)使用網(wǎng)格的情況下。與前一種flexbox技術(shù)的唯一區(qū)別是它顯示為柵格。

          如下代碼:

          html:

          <div class="grid-centering">
            <div class="child">Centered content.</div>
          </div>

          css:

          、盒子里的字,默認是位于盒子內(nèi)的左上角,如何讓它水平居中,垂直居中呢。

          1. text-align: center;/* 這是讓內(nèi)容水平居中 */
          2. line-height: 200px; /* 這是讓內(nèi)容垂直居中,只要把行高設(shè)置得和盒子的高度一樣 */

          圖1

          圖2

          以下是我在vscode下做的代碼:

          圖3


          主站蜘蛛池模板: 精品理论片一区二区三区| 一区二区三区内射美女毛片| 濑亚美莉在线视频一区| 日韩精品无码一区二区三区AV| 午夜视频一区二区三区| 国产91精品一区二区麻豆网站| 免费日本一区二区| jizz免费一区二区三区| 国产成人精品一区二三区熟女 | 精品乱子伦一区二区三区高清免费播放 | 中文字幕精品无码一区二区三区| 无码av免费毛片一区二区| 国产无线乱码一区二三区| 97久久精品午夜一区二区| 一区二区三区精品视频| 日韩A无码AV一区二区三区| 性盈盈影院免费视频观看在线一区| 亚洲高清美女一区二区三区| 91在线看片一区国产| 国产乱码一区二区三区四| 亚洲国产精品综合一区在线 | 成人区精品一区二区不卡| 亚洲国产高清在线一区二区三区 | 久久久一区二区三区| 亚洲国产老鸭窝一区二区三区| 国产在线不卡一区二区三区| 国产在线视频一区| 免费av一区二区三区| 亚洲午夜在线一区| 国产一区二区不卡老阿姨| 国产一区二区三区无码免费 | 国模无码一区二区三区| 少妇人妻精品一区二区| 精品一区二区三区在线观看l | 日韩人妻一区二区三区蜜桃视频| 国产99精品一区二区三区免费| 中文字幕亚洲一区二区va在线| 亚洲无线码一区二区三区| 亚洲电影唐人社一区二区| 精品国产一区二区三区香蕉事| 一区二区在线视频免费观看|