Может быть, вам нужен этот код здесь
Описание: когда вы нажимаете кнопку, тогда блок отображения стиля notification-panel
устанавливается функцией переключения jquery.блочный элемент обычно не вводится в его выигрышную область другими элементами.Таким образом, вы можете говорить, что абсолютный элемент notification-panel
position : { absolute}
a не влияет на внутреннюю высоту другого элемента.Я также добавляю простую анимацию toggle
к slideToggle(300)
слайду и переключаю анимацию на 300 миллисекунд.может, это решило твою проблему.
$('#someBtn').on('click', function(){
$('.notification-panel').slideToggle(300);
});
.wrapper {
height: 100%;
width: 100%;
}
.notification-panel {
background: green;
width: 100%;
display: none;
position:fixed;
top: 0;
width: 100%;
}
.content {
background: yellow;
width: 100%;
height: 100px;
overflow: auto;
}
.footer {
background: blue;
width: 100%;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/2.2.4/jquery.min.js"></script>
<div class='wrapper'>
<div class='notification-panel'>
Some notification
</div>
<div class='content'>
Scaling to screen using vh and vw <br>
Line 2 <br>
Line 3 <br>
Line 4 <br>
Line 5 <br>
Line 6 <br>
Line 7 <br>
Line 8 <br>
Line 9 <br>
Line 10 <br>
Line 11 <br>
Line 12 <br>
Line 13 <br>
Line 14 <br>
Line 15 <br>
Line 16 <br>
Line 17 <br>
Line 18 <br>
Line 19 <br>
Line 20 <br>
Line 21 <br>
Line 22 <br>
Line 23 <br>
Line 24 <br>
<button id ="someBtn">
Click me
</button>
</div>
<div class='footer'>
Footer
</div>
</div>