@mindx

Как сделать динамичный header?

Очень часто вижу, что на многих сайтах после прокрутки страницы header в котором навигация position: fixed, но при этом сам header меняется в размерах.
Те если в нормальном состоянии он 50px, то после прокрутки он +-25px.
Как сделать такой header? Как я понимаю, нужен новый стиль, но как сделать правило, что после прокрутки он будет изменяться?
  • Вопрос задан
  • 579 просмотров
Решения вопроса 1
LenovoId
@LenovoId
svg, css,js
window scroll function header addClass fixed
где мы получим верхнюю точку и ту точку откуда он получит нужный class
ну и в .fixed описать как он будет выглядеть после того как получит этот class

$(window).scroll(function() {

    if ($(this).scrollTop() > 1){  

        $('header').addClass("fixed");

    }  else{

        $('header').removeClass("fixed");
    }

});


но с css3 появилось новое свойство position:sticky; но работает так себе из за поддержки
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
politon
@politon
HTML5,CSS3,JS,PHP,SQL,API,canvas,animation...
Ответ написан
Комментировать
leni_m
@leni_m
ЧупаКобрус
на javascript примерно так: если прокрутили на 50 px сверху, то заменяем на новый хедер.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы