Maison  >  Article  >  interface Web  >  Comment centrer le contenu verticalement et horizontalement lors de l'écriture d'une boîte modale ?

Comment centrer le contenu verticalement et horizontalement lors de l'écriture d'une boîte modale ?

PHP中文网
PHP中文网original
2017-06-20 09:45:372677parcourir

Bonjour à tous, aujourd'hui nous allons parler de comment centrer le contenu verticalement et horizontalement lors de l'écriture d'une boîte modale. Restons simples d'abord,

<.> Ce problème est en fait équivalent à la façon de centrer un div verticalement et horizontalement. Alors, comment résoudre ce problème ? Il existe 5 solutions.

D'abord, dans le premier cas, quand on connaît la largeur et la hauteur de div1 :

  <div id="div1"></div  #div1{
<span style="font-size: 18px">      width: 200px;</span><br/><span style="font-size: 18px">      height: 100px;</span><br/><span style="font-size: 18px">      background: #54fa45;</span><br/><span style="font-size: 18px">      position: absolute;</span><br/><span style="font-size: 18px">      left:50%;</span><br/><span style="font-size: 18px">      top:50%;</span><br/><span style="font-size: 18px">      margin-left:-100px;  //设置div1的左边距为宽度的一半</span><br/><span style="font-size: 18px">      margin-top:-50px; //设置div1的上边距为高度的一半</span><br/><span style="font-size: 18px">  }<br/>  第二种情况下:不知道div1的宽高,就好比设置图片的垂直水平居中:<br/></span>
    
<span style="font-size: 18px">    img{</span><br/><span style="font-size: 18px">        position: absolute;</span><br/><span style="font-size: 18px">        left: 0;</span><br/><span style="font-size: 18px">        top: 0;</span><br/><span style="font-size: 18px">        right: 0;</span><br/><span style="font-size: 18px">        bottom: 0;</span><br/><span style="font-size: 18px">        margin: auto;</span><br/><span style="font-size: 18px">     }</span>
<span style="font-size: 18px">    这种情况其实很简单,给图片一个绝对定位,然后上下左右都为0,最后margin:auto;<br/>    第三种情况:利用display:table<br/></span>
      
<span style="font-size: 18px">        html,body{</span><br/><span style="font-size: 18px">            height: 100%;</span><br/><span style="font-size: 18px">            overflow:hidden;</span><br/><span style="font-size: 18px">        }</span><br/><span style="font-size: 18px">        #box{</span><br/><span style="font-size: 18px">            width:100%;</span><br/><span style="font-size: 18px">            height:100%;</span><br/><span style="font-size: 18px">            background: #dbffd8;</span><br/><span style="font-size: 18px">            display:table;</span><br/><span style="font-size: 18px">        }</span><br/><span style="font-size: 18px">        #div1{</span><br/><span style="font-size: 18px">            height:100%;</span><br/><span style="font-size: 18px">            width:100%;</span><br/><span style="font-size: 18px">            display:table-cell;</span><br/><span style="font-size: 18px">            text-align:center;</span><br/><span style="font-size: 18px">            vertical-align:middle;</span><br/><span style="font-size: 18px">        }<br/>   第四种情况:利用display:</span><span style="font-size: 18px"><em style="line-height: 1.5">table-cell;<br/></em></span>
      
<span style="font-size: 18px">    html,body{</span><br/><span style="font-size: 18px">        height: 100%;</span><br/><span style="font-size: 18px">        overflow:hidden;</span><br/><span style="font-size: 18px">    }</span><br/><span style="font-size: 18px">    #box{</span><br/><span style="font-size: 18px">        width:100%;</span><br/><span style="font-size: 18px">        height:100%;</span><br/><span style="font-size: 18px">        background: #dbffd8;</span><br/><span style="font-size: 18px">        display:table;</span><br/><span style="font-size: 18px">    }</span><br/><span style="font-size: 18px">    #div1{</span><br/><span style="font-size: 18px">        height:100%;</span><br/><span style="font-size: 18px">        width:100%;</span><br/><span style="font-size: 18px">       <span style="color: #ccffff"> <span style="color: #000000">display:table-cell;</span></span></span><br/><span style="font-size: 18px; color: #000000">        text-align:center;</span><br/><span style="font-size: 18px; color: #000000">        vertical-align:middle;</span><br/><span style="font-size: 18px">      }<br/>  最后一种就是利用盒子的怪异盒模型了<br/></span>
<span style="font-size: 18px">    <div id="box"><br><span style="font-size: 18px">        <img src="img/map-pin.png" alt=""></span><br><span style="font-size: 18px">    </div><br></span>
<span style="font-size: 18px">      html,body{</span><br><span style="font-size: 18px">          height: 100%;</span><br><span style="font-size: 18px">          overflow:hidden;</span><br><span style="font-size: 18px">       }</span><br><span style="font-size: 18px">     #box{</span><br><span style="font-size: 18px">          width:100%;</span><br><span style="font-size: 18px">          height:100%;</span><br><span style="font-size: 18px">          display:-webkit-box;</span><br><span style="font-size: 18px">          -webkit-box-align:center;</span><br><span style="font-size: 18px">          -webkit-box-pack:center;</span><br><span style="font-size: 18px">      }<br>这就是我对元素水平居中的理解,你们学会了吗?</span>

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn