$('.child_1').click(function(){
$(this).toggleClass('left').siblings().toggleClass('left');
});
* {box-sizing: border-box;}
.parent {
width: 500px;
position: relative;
border: 1px solid #ccc;
overflow: hidden;
}
.child_1 {
background-color: rgba(255,255,0,.6);
width: 100%;
float: left;
height: 100px;
z-index: 1;
transition: all .5s;
}
.child_1.left {
width: 30%;
}
.child_2 {
width: 70%;
padding-left: 15px;
left: 100%;
transition: all .5s;
}
.child_2.left {
left: 30%;
}
.child_2 > div {
background-color: rgba(0,255,255,.6);
height: 200px;
}
.child_2 > div > div {
overflow: hidden;
}
.relative {
position: relative;
}
.absolute {
position: absolute;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js"></script>
<p>Relative</p>
<div class="parent">
<div class="child_1"></div>
<div class="child_2 relative">
<div>Content of child_2<div></div></div>
</div>
</div>
<hr />
<p>Absolute</p>
<div class="parent">
<div class="child_1"></div>
<div class="child_2 absolute">
<div>Content of child_2<div></div></div>
</div>
</div>
父DIV必須有隱躲的時候child_2被移出母體的child_2溢出;
父div不能有一個聲明的高度,因爲child_2的高度是未知的(認爲它在我的例子中給出)。
要隱藏child_2格,我已經嘗試了兩種方式:
第一種是相對定位child_2,而你可以看到,child_2的內容推到一個錯誤的位置;
第二個是絕對定位的child_2,但絕對定位的元素不能擴展父元素的高度,所以當父div被賦予一個隱藏的溢出值時,child_2的內容被切斷。
能否請您提供更多的細節?我三次讀你的問題,沒有得到你的要求。 –
@CharanKumar我編輯了我的問題。 – jasonxia23