Скакание шаблона

Заметил такую особенность на шаблоне depeloper, который берут за основу многии пользователи LS.
Если выходишь из аккаунта, если восстанавливаешь пароль наблюдается непонятное скакание шаблона. Все сдвигается вправа на несколько пикселей, причем в css ничего такого не прописано.

Далеко даже ходить не надо, возьмите и разлогиньтесь с livestreet.ru/ — шаблон сдвинется вправо)) В чем суть?

Никто такого не замечал?

13 комментариев

avatar
Исчезает полоса прокрутки
avatar
Stepan истину глаголишь.
avatar
Далеко даже ходить не надо, возьмите и разлогиньтесь с livestreet.ru/ — шаблон сдвинется вправо)) В чем суть?
обновлялка комментов исчезла?
  • PSNet
  • 0
avatar
неужели никто не замечает этого? где ответ разработчиков? Не баг ли это, друзья?
avatar
Это не баг, как уже писал «stepan», при нажатии на «выход» исчезает вертикальный скроллбар так как высота сайта становится маленькой, и из-за этого шаблон немного сдвигается направо. Это 100% факт!
avatar
что за вертикальный скоролбар, не поуму что-то? где он в шаблоне?
avatar
Скролбар = полоса прокрутки

Она не в шаблоне, она в браузере.
avatar
ну и как добиться, чтобы скоролбар на системных страницах типа результат поиска и т.п. появился, чтобы избавиться от этого скакания?
avatar
html {
overflow-y:scroll;
}
avatar
Или

body {
overflow-y:scroll;
}
avatar
заработало вроде, спасибо!
avatar
Не за что.

Есть ещё вариант с JavaScript'om
После тега «Body» добавить;
<script type="text/javascript">
    (function(w, d){
        // ширина scrollbar
        var scrollbar_width = 18;
        
        var currentStyle = (d.body.currentStyle ? d.body.currentStyle : w.getComputedStyle(d.body, null));
        
        // убрать margin справа
        if(parseInt(currentStyle.marginRight) > 0)
        {
            d.body.style.marginRight = 0;
        }
        
        var marginLeft = parseInt(currentStyle.marginLeft);
        if(marginLeft > 0)
        {
            scrollbar_width += marginLeft;
        }
        
        // выполняет код при изменении размеров окна
        (d.body.onresize = function()
        {
            d.body.style.width = (w.innerWidth - scrollbar_width)+'px';
        })(); // сразу же и выполнить его
    
    })(window, document);
</script>
avatar
Да, это от полосы прокрутки. В файле base.css в стилях body дописать overflow: scroll; можно и без -y. Тогда полоска будет всегда и дергаться ничего не будет.
  • aex
  • 0
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.