首页 > 代码库 > 模态框中水平垂直居的问题
模态框中水平垂直居的问题
大家好,今天我们来说一下在写模态框的时候怎么使里面的内容垂直水平居中,我们先把目光放得简单一点,
这个问题其实就等同于怎么让一个div垂直水平居中,那我们怎么来实现这个问题呢?有5种解决办法。
首先,第一种情况,我们知道div1宽高的情况下:
<div id="div1"></div #div1{
width: 200px;
height: 100px;
background: #54fa45;
position: absolute;
left:50%;
top:50%;
margin-left:-100px; //设置div1的左边距为宽度的一半
margin-top:-50px; //设置div1的上边距为高度的一半
}
第二种情况下:不知道div1的宽高,就好比设置图片的垂直水平居中:
<img src="http://www.mamicode.com/img.png" >
img{
position: absolute;
left: 0;
top: 0;
right: 0;
bottom: 0;
margin: auto;
}
这种情况其实很简单,给图片一个绝对定位,然后上下左右都为0,最后margin:auto;
第三种情况:利用display:table
<div id="box">
<div id="div1">
<img src="http://www.mamicode.com/img/map-pin.png" >
</div>
</div>
html,body{
height: 100%;
overflow:hidden;
}
#box{
width:100%;
height:100%;
background: #dbffd8;
display:table;
}
#div1{
height:100%;
width:100%;
display:table-cell;
text-align:center;
vertical-align:middle;
}
第四种情况:利用display:table-cell;
<div id="box">
<div id="div1">
<img src="http://www.mamicode.com/img/map-pin.png" >
</div>
</div>
html,body{
height: 100%;
overflow:hidden;
}
#box{
width:100%;
height:100%;
background: #dbffd8;
display:table;
}
#div1{
height:100%;
width:100%;
display:table-cell;
text-align:center;
vertical-align:middle;
}
最后一种就是利用盒子的怪异盒模型了
<div id="box">
<img src="http://www.mamicode.com/img/map-pin.png" >
</div>
html,body{
height: 100%;
overflow:hidden;
}
#box{
width:100%;
height:100%;
display:-webkit-box;
-webkit-box-align:center;
-webkit-box-pack:center;
}
这就是我对元素水平居中的理解,你们学会了吗?
模态框中水平垂直居的问题
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。