我有一个div,宽度为100%。
我想在其中居中一个按钮,我该怎么做呢?
< div风格= "宽度:100%;高度:100%;边框:1px实心"> <按钮type = "按钮" >你好> < /按钮 < / div >
我有一个div,宽度为100%。
我想在其中居中一个按钮,我该怎么做呢?
< div风格= "宽度:100%;高度:100%;边框:1px实心"> <按钮type = "按钮" >你好> < /按钮 < / div >
当前回答
假设div是#div, button是#button:
#div {
display: table-cell;
width: 100%;
height: 100%;
text-align: center;
vertical-align: center;
}
#button {}
然后像往常一样将按钮嵌套到div中。
其他回答
更新后的答案
更新是因为我注意到这是一个积极的答案,但现在Flexbox将是正确的方法。
现场演示
垂直和水平对齐。
#wrapper {
display: flex;
align-items: center;
justify-content: center;
}
只是水平(只要主伸缩轴是水平的,这是默认的)
#wrapper {
display: flex;
justify-content: center;
}
原来的答案使用固定宽度和不灵活
如果原来的海报想要垂直和中心对齐,它很容易固定宽度和高度的按钮,尝试以下
现场演示
CSS
button{
height:20px;
width:100px;
margin: -20px -50px;
position:relative;
top:50%;
left:50%;
}
对于水平对齐使用任何一种
button{
margin: 0 auto;
}
or
div{
text-align:center;
}
遇到这个,我想我也会留下我使用的解决方案,它利用line-height和text-align: center来做垂直和水平的居中:
点击这里使用JSFiddle
响应式CSS选项,将按钮垂直和水平居中,而不考虑父元素大小(使用数据属性挂钩的清晰度和分离问题):
HTML
<div data-element="card">
<div data-container="button"><button>CTA...</button></div>
</div>
CSS
[data-container="button"] {
position: absolute;
top: 50%;
text-align: center;
width: 100%;
}
小提琴:https://jsfiddle.net/crrollyson/zebo1z8f/
使用flexbox
.Center {
display: flex;
align-items: center;
justify-content: center;
}
然后将类添加到按钮中。
<button class="Center">Demo</button>
想起来:
button {
width: 100px; // whatever your button's width
margin: 0 auto; // auto left/right margins
display: block;
}
更新:如果OP正在寻找水平和垂直中心,这个答案将做一个固定的宽度/高度元素。