我遇到一个问题,我在父div中有三个div需要居中对齐。我不明白为什么文本的中心对齐不是通常的魔术?
重新创建了这个问题
<div class="container_alt">
<div class="pricing_options_col">
<div class="pck1">pck1</div>
<div class="pck2">pck2</div>
<div class="pck3">pck3</div>
</div>
</div>
.container_alt{
max-width: 1000px;
margin: 0 auto;
}
.pricing_options{
width: 100%;
background-color: #fff;
height: auto;
overflow:auto;
text-align:center;
display:inline-block;
}
.pricing_options_col{
width: 100%;
max-width:1000px;
margin: 0 auto;
text-align:center;
padding:100px 0;
display:inline-block;
}
.pck1{
float: left;
margin: 0 auto;
width: 200px;
background-color: green;
border-radius: 6px;
box-sizing:border-box;
padding: 20px;
}
.pck2{
float: left;
margin: 0 auto;
width: 400px;
background-color: red;
border-radius: 6px;
box-sizing:border-box;
padding: 20px;
-webkit-box-shadow: 0px 0px 20px 0px rgba(50, 50, 50, 0.75);
-moz-box-shadow: 0px 0px 20px 0px rgba(50, 50, 50, 0.75);
box-shadow: 0px 0px 20px 0px rgba(50, 50, 50, 0.75);
z-index: 999999;
}
.pck3{
float: left;
margin: 0 auto;
width: 200px;
background-color: pink;
border-radius: 6px;
box-sizing:border-box;
padding: 20px;
}
答案 0 :(得分:2)
从css中移除float: left;
.pck1 .pck2 .pck3
更新:我想这就是您要找的内容:
.pricing_options_col{
width: 800px;
margin-left:auto;
margin-right:auto;
max-width:1000px;
margin: 0 auto;
text-align:center;
padding:100px 0;
display:inline-block;
}
答案 1 :(得分:1)
对于.pck1
,pck2
和pck3
,请移除float:left
并添加display:inline-block
。
浮动元素用于将其一直移动到一侧或另一侧(显然与嵌入相反)。防止&#34;堆叠&#34;是其中的副产品,但还有其他方法可以防止元素堆叠。默认情况下,div有display:block
,这意味着他们每个人都会在自己的行上显示(&#34;堆叠&#34;)。通过将其更改为display:inline-block
,它们会在线显示。
这是demo。
答案 2 :(得分:0)