Для этого я использую jQuery для добавления класса после того, как окно прокручивается по высоте 'x'.
JS: после прокрутки 100px добавьте класс 'scrolled', если меньше 100, удалите класс 'прокрутите '
$(window).scroll(function() {
if ($(window).scrollTop() > 100) {
$('.menu').addClass('scrolled')
} else {
$('.menu').removeClass('scrolled')
}
});
, затем управляйте им, используя CSS
.menu {
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100px;
background-color: red;
transition: height 500ms;
}
.menu.scrolled {
height: 50px;
}
Fiddle