我有3个div,每个div都在父div中,宽度为100%。CSS:
.parentDiv {
height: 454px;
width: 100% auto;
}
.Div1, .Div2, .Div3{
display: block;
position: relative;
text-align: center;
height: 434px;
margin-top: 10px;
margin-bottom: 10px;
}
.Div1 {
margin-left: 10px;
float: left;
width: 351px;
}
.Div2 {
width: 351px;
padding: 0px;
margin: auto;
display: block;
}
.Div3 {
margin-right: 10px;
float: right;
width: 351px;
}
Div的排序方式与CSS和HTML中的排序方式相同。但是,这样做的结果是,左侧元素(Div1)在正确的位置,假定居中的元素居中(Div2),尽管它两侧的边距都充满了整个父Div。因此,我认为这会导致Div3溢出父Div并垂直“折叠”。
我真正想知道的是如何对齐div,以便在左侧有一个,在中央有一个,在右侧有一个。在这种情况下,以前有关类似问题的问题似乎对我没有帮助:/如果有一种方法可以缩短Div2的边距,以便它们可以使所有Divs在父div中保持正确对齐,我真的很乐意知道如何操作(最好不使用绝对像素测量)
这可能没有任何意义-但我真的很感谢所有建议/答案:)干杯
附加说明:此刻是这样的:Div1Div2Div3我想要的是:Div1 Div2 Div3它的长度等于parentDiv
HTML(本节内容)
<div class="parentDiv">
<div class="Div1">
<!--Insert code here-->
</div>
<div class="Div2">
<!--Insert code here-->
</div>
<div class="Div3">
<!--Insert code here-->
</div>
</div>
不用担心,设法使用一些jQuery终于解决了它:
$(document).ready(function(){
var width = $(".parentDiv").css("width")
var width = width.replace("px","");
var width = parseInt(width,10);
var val1 = width-1073;
var val2 = val1/2;
$(".Div2").css("margin-left",val2);
$(".Div2").css("margin-right",val2);
$(window).resize(function(){
var width = $(".parentDiv").css("width");
var width = width.replace("px","");
var width = parseInt(width,10);
if(1073>width) {
$(".Div3").css("display","hidden")
}
else {
var val1 = width-1073;
var val2 = val1/2;
$(".Div2").css("margin-left",val2);
$(".Div2").css("margin-right",val2);
}
});
我知道这不是有史以来最高效也不是最漂亮的代码(我对jQuery和Javascript真的很陌生)-但这确实有用:)我想向任何善意尝试解释我令人震惊的解释的人表示歉意: /
注意,我还将Child Div的定位类型设置为绝对,然后将Div1设置为左:0; Div3正确:0;
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句