Check out the code here http://codepen.io/kongakong/pen/wMQrBR
Javascript Section:
$(document).ready(function () {
init();
});
function init() {
$('#test').on('click', function () {
$('.answer').animate({width: "hide"}, 1000, 'swing');
});
}
CSS Section:
.row {
position: relative;
overflow-x: hidden;
}
.hidden {
display: none;
}
.answer {
font-size: 40px;
color: red;
width:100%;
opacity: 1;
z-index: 100;
border: 1px solid red;
text-align: center;
background-color: #fff;
}
.answer-new {
font-size: 40px;
/* to make answer-new on top and cover answer */
position: absolute;
border: 1px solid blue;
width: 100%;
z-index: 1;
text-align: center;
}
HTML Section:
<div class="contrainer">
<div>
<input id='test' type='button' value="test"></input>
</div>
<div class="row">
<div class="answer-new">Under
</div>
<div class="answer">Top
</div>
</div>
<div class="row">
<div class="answer-new">Under1
</div>
<div class="answer">Top1
</div>
</div>
</div>
Here is a screenshot of the page before animation starts
https://i.sstatic.net/xlkjH.png
When the button is clicked, the animation runs smoothly. I anticipate that divs with css class answer-new
remain visible. However, in the end, all the divs disappear.
I experimented with using '0' instead of 'hidden'. In this scenario, the text of the answer
div remains visible - not completely hidden.
Why does this happen?