Как убрать с сайта вертикальную полосу прокрутки?
Можно ли убрать, скрыть на сайте методами css или javascript вертикальную прокрутку, но чтобы при этом скролл работал как обычно? К body, например, можно применить overflow-y:hidden , но, естественно, скролл перестает работать.
Отслеживать
67.9k 216 216 золотых знаков 77 77 серебряных знаков 219 219 бронзовых знаков
задан 1 сен 2015 в 8:11
Вадим Авлочинский Вадим Авлочинский
85 1 1 золотой знак 3 3 серебряных знака 9 9 бронзовых знаков
Есть куча плагинов для этого, можно сделать самому — ловить нужные события и скролить контент
1 сен 2015 в 8:20
1 сен 2015 в 9:06
3 ответа 3
Сортировка: Сброс на вариант по умолчанию
Привет, если речь идет именно о body то ему необходимо присвоить значение overflow-y:hidden а уже в body вставить div с контентом, например вот таким образом клик или клик там уже скрыть скролл у diva без последствий не работы прокрутки, если речь идет о простом div(например, меню):
Допустим есть левый блок меню. В этом блоке идет нумерованный список пунктов, на 100 примерно.
div.LeftScrollBlock < width: 200px; height: 320px; overflow:auto; border:1px solid grey; >div.parent
- ссылка-1
- ссылка-2
- ссылка-3
- ссылка-4
- ссылка-5
- ссылка-6
- ссылка-7
- ссылка-8
- ссылка-9
- ссылка-10
- ссылка-11
- ссылка-12
- ссылка-13
- ссылка-14
- ссылка-15
- ссылка-16
- ссылка-17
- ссылка-18
- ссылка-19
- ссылка-20
- ссылка-21
- ссылка-22
- ссылка-23
- ссылка-24
- ссылка-25
- ссылка-26
- ссылка-27
- ссылка-28
- ссылка-29
- ссылка-30
Отслеживать
ответ дан 1 сен 2015 в 8:52
Ильгам Каримов Ильгам Каримов
167 12 12 бронзовых знаков
Предположим, так. С шириной и кроссбраузерностью разберёшься сам. Ещё, выделением текста можно проскроллить вправо.
А вообще, скрывать скролл — это плохая идея.
html, body < overflow: hidden; height: 100%; box-sizing: border-box; margin: 0; >body
Здравствуйте. Можно ли убрать, скрыть на сайте методами css или javascript вертикальную прокрутку, но , чтобы при этом скролл работал как обычно? К body, например, можно применить overflow-y:hidden, но естественно скролл перестает работать.
Здравствуйте. Можно ли убрать, скрыть на сайте методами css или javascript вертикальную прокрутку, но , чтобы при этом скролл работал как обычно? К body, например, можно применить overflow-y:hidden, но естественно скролл перестает работать.
Здравствуйте. Можно ли убрать, скрыть на сайте методами css или javascript вертикальную прокрутку, но , чтобы при этом скролл работал как обычно? К body, например, можно применить overflow-y:hidden, но естественно скролл перестает работать.
Здравствуйте. Можно ли убрать, скрыть на сайте методами css или javascript вертикальную прокрутку, но , чтобы при этом скролл работал как обычно? К body, например, можно применить overflow-y:hidden, но естественно скролл перестает работать.
Здравствуйте. Можно ли убрать, скрыть на сайте методами css или javascript вертикальную прокрутку, но , чтобы при этом скролл работал как обычно? К body, например, можно применить overflow-y:hidden, но естественно скролл перестает работать.
Здравствуйте. Можно ли убрать, скрыть на сайте методами css или javascript вертикальную прокрутку, но , чтобы при этом скролл работал как обычно? К body, например, можно применить overflow-y:hidden, но естественно скролл перестает работать.
Здравствуйте. Можно ли убрать, скрыть на сайте методами css или javascript вертикальную прокрутку, но , чтобы при этом скролл работал как обычно? К body, например, можно применить overflow-y:hidden, но естественно скролл перестает работать.
Здравствуйте. Можно ли убрать, скрыть на сайте методами css или javascript вертикальную прокрутку, но , чтобы при этом скролл работал как обычно? К body, например, можно применить overflow-y:hidden, но естественно скролл перестает работать.
Здравствуйте. Можно ли убрать, скрыть на сайте методами css или javascript вертикальную прокрутку, но , чтобы при этом скролл работал как обычно? К body, например, можно применить overflow-y:hidden, но естественно скролл перестает работать.
Здравствуйте. Можно ли убрать, скрыть на сайте методами css или javascript вертикальную прокрутку, но , чтобы при этом скролл работал как обычно? К body, например, можно применить overflow-y:hidden, но естественно скролл перестает работать.
Здравствуйте. Можно ли убрать, скрыть на сайте методами css или javascript вертикальную прокрутку, но , чтобы при этом скролл работал как обычно? К body, например, можно применить overflow-y:hidden, но естественно скролл перестает работать.
Здравствуйте. Можно ли убрать, скрыть на сайте методами css или javascript вертикальную прокрутку, но , чтобы при этом скролл работал как обычно? К body, например, можно применить overflow-y:hidden, но естественно скролл перестает работать.
Здравствуйте. Можно ли убрать, скрыть на сайте методами css или javascript вертикальную прокрутку, но , чтобы при этом скролл работал как обычно? К body, например, можно применить overflow-y:hidden, но естественно скролл перестает работать.
Здравствуйте. Можно ли убрать, скрыть на сайте методами css или javascript вертикальную прокрутку, но , чтобы при этом скролл работал как обычно? К body, например, можно применить overflow-y:hidden, но естественно скролл перестает работать.
Здравствуйте. Можно ли убрать, скрыть на сайте методами css или javascript вертикальную прокрутку, но , чтобы при этом скролл работал как обычно? К body, например, можно применить overflow-y:hidden, но естественно скролл перестает работать.
Здравствуйте. Можно ли убрать, скрыть на сайте методами css или javascript вертикальную прокрутку, но , чтобы при этом скролл работал как обычно? К body, например, можно применить overflow-y:hidden, но естественно скролл перестает работать.
Здравствуйте. Можно ли убрать, скрыть на сайте методами css или javascript вертикальную прокрутку, но , чтобы при этом скролл работал как обычно? К body, например, можно применить overflow-y:hidden, но естественно скролл перестает работать.
Здравствуйте. Можно ли убрать, скрыть на сайте методами css или javascript вертикальную прокрутку, но , чтобы при этом скролл работал как обычно? К body, например, можно применить overflow-y:hidden, но естественно скролл перестает работать.
Здравствуйте. Можно ли убрать, скрыть на сайте методами css или javascript вертикальную прокрутку, но , чтобы при этом скролл работал как обычно? К body, например, можно применить overflow-y:hidden, но естественно скролл перестает работать.
Вариант без calc с использованием фиксированного позиционирования. Решает проблему с горизонтальной прокруткой при выделении.
html < overflow: hidden; >body
Здравствуйте. Можно ли убрать, скрыть на сайте методами css или javascript вертикальную прокрутку, но , чтобы при этом скролл работал как обычно? К body, например, можно применить overflow-y:hidden, но естественно скролл перестает работать.
Здравствуйте. Можно ли убрать, скрыть на сайте методами css или javascript вертикальную прокрутку, но , чтобы при этом скролл работал как обычно? К body, например, можно применить overflow-y:hidden, но естественно скролл перестает работать.
Здравствуйте. Можно ли убрать, скрыть на сайте методами css или javascript вертикальную прокрутку, но , чтобы при этом скролл работал как обычно? К body, например, можно применить overflow-y:hidden, но естественно скролл перестает работать.
Здравствуйте. Можно ли убрать, скрыть на сайте методами css или javascript вертикальную прокрутку, но , чтобы при этом скролл работал как обычно? К body, например, можно применить overflow-y:hidden, но естественно скролл перестает работать.
Здравствуйте. Можно ли убрать, скрыть на сайте методами css или javascript вертикальную прокрутку, но , чтобы при этом скролл работал как обычно? К body, например, можно применить overflow-y:hidden, но естественно скролл перестает работать.
Здравствуйте. Можно ли убрать, скрыть на сайте методами css или javascript вертикальную прокрутку, но , чтобы при этом скролл работал как обычно? К body, например, можно применить overflow-y:hidden, но естественно скролл перестает работать.
Здравствуйте. Можно ли убрать, скрыть на сайте методами css или javascript вертикальную прокрутку, но , чтобы при этом скролл работал как обычно? К body, например, можно применить overflow-y:hidden, но естественно скролл перестает работать.
Здравствуйте. Можно ли убрать, скрыть на сайте методами css или javascript вертикальную прокрутку, но , чтобы при этом скролл работал как обычно? К body, например, можно применить overflow-y:hidden, но естественно скролл перестает работать.
Здравствуйте. Можно ли убрать, скрыть на сайте методами css или javascript вертикальную прокрутку, но , чтобы при этом скролл работал как обычно? К body, например, можно применить overflow-y:hidden, но естественно скролл перестает работать.
Здравствуйте. Можно ли убрать, скрыть на сайте методами css или javascript вертикальную прокрутку, но , чтобы при этом скролл работал как обычно? К body, например, можно применить overflow-y:hidden, но естественно скролл перестает работать.
Здравствуйте. Можно ли убрать, скрыть на сайте методами css или javascript вертикальную прокрутку, но , чтобы при этом скролл работал как обычно? К body, например, можно применить overflow-y:hidden, но естественно скролл перестает работать.
Здравствуйте. Можно ли убрать, скрыть на сайте методами css или javascript вертикальную прокрутку, но , чтобы при этом скролл работал как обычно? К body, например, можно применить overflow-y:hidden, но естественно скролл перестает работать.
Здравствуйте. Можно ли убрать, скрыть на сайте методами css или javascript вертикальную прокрутку, но , чтобы при этом скролл работал как обычно? К body, например, можно применить overflow-y:hidden, но естественно скролл перестает работать.
Здравствуйте. Можно ли убрать, скрыть на сайте методами css или javascript вертикальную прокрутку, но , чтобы при этом скролл работал как обычно? К body, например, можно применить overflow-y:hidden, но естественно скролл перестает работать.
Здравствуйте. Можно ли убрать, скрыть на сайте методами css или javascript вертикальную прокрутку, но , чтобы при этом скролл работал как обычно? К body, например, можно применить overflow-y:hidden, но естественно скролл перестает работать.
Здравствуйте. Можно ли убрать, скрыть на сайте методами css или javascript вертикальную прокрутку, но , чтобы при этом скролл работал как обычно? К body, например, можно применить overflow-y:hidden, но естественно скролл перестает работать.
Здравствуйте. Можно ли убрать, скрыть на сайте методами css или javascript вертикальную прокрутку, но , чтобы при этом скролл работал как обычно? К body, например, можно применить overflow-y:hidden, но естественно скролл перестает работать.
Здравствуйте. Можно ли убрать, скрыть на сайте методами css или javascript вертикальную прокрутку, но , чтобы при этом скролл работал как обычно? К body, например, можно применить overflow-y:hidden, но естественно скролл перестает работать.
Здравствуйте. Можно ли убрать, скрыть на сайте методами css или javascript вертикальную прокрутку, но , чтобы при этом скролл работал как обычно? К body, например, можно применить overflow-y:hidden, но естественно скролл перестает работать.
Ещё вариант для хромиумовов:
::-webkit-scrollbar
Здравствуйте. Можно ли убрать, скрыть на сайте методами css или javascript вертикальную прокрутку, но , чтобы при этом скролл работал как обычно? К body, например, можно применить overflow-y:hidden, но естественно скролл перестает работать.
Здравствуйте. Можно ли убрать, скрыть на сайте методами css или javascript вертикальную прокрутку, но , чтобы при этом скролл работал как обычно? К body, например, можно применить overflow-y:hidden, но естественно скролл перестает работать.
Здравствуйте. Можно ли убрать, скрыть на сайте методами css или javascript вертикальную прокрутку, но , чтобы при этом скролл работал как обычно? К body, например, можно применить overflow-y:hidden, но естественно скролл перестает работать.
Здравствуйте. Можно ли убрать, скрыть на сайте методами css или javascript вертикальную прокрутку, но , чтобы при этом скролл работал как обычно? К body, например, можно применить overflow-y:hidden, но естественно скролл перестает работать.
Здравствуйте. Можно ли убрать, скрыть на сайте методами css или javascript вертикальную прокрутку, но , чтобы при этом скролл работал как обычно? К body, например, можно применить overflow-y:hidden, но естественно скролл перестает работать.
Здравствуйте. Можно ли убрать, скрыть на сайте методами css или javascript вертикальную прокрутку, но , чтобы при этом скролл работал как обычно? К body, например, можно применить overflow-y:hidden, но естественно скролл перестает работать.
Здравствуйте. Можно ли убрать, скрыть на сайте методами css или javascript вертикальную прокрутку, но , чтобы при этом скролл работал как обычно? К body, например, можно применить overflow-y:hidden, но естественно скролл перестает работать.
Здравствуйте. Можно ли убрать, скрыть на сайте методами css или javascript вертикальную прокрутку, но , чтобы при этом скролл работал как обычно? К body, например, можно применить overflow-y:hidden, но естественно скролл перестает работать.
Здравствуйте. Можно ли убрать, скрыть на сайте методами css или javascript вертикальную прокрутку, но , чтобы при этом скролл работал как обычно? К body, например, можно применить overflow-y:hidden, но естественно скролл перестает работать.
Здравствуйте. Можно ли убрать, скрыть на сайте методами css или javascript вертикальную прокрутку, но , чтобы при этом скролл работал как обычно? К body, например, можно применить overflow-y:hidden, но естественно скролл перестает работать.
Здравствуйте. Можно ли убрать, скрыть на сайте методами css или javascript вертикальную прокрутку, но , чтобы при этом скролл работал как обычно? К body, например, можно применить overflow-y:hidden, но естественно скролл перестает работать.
Здравствуйте. Можно ли убрать, скрыть на сайте методами css или javascript вертикальную прокрутку, но , чтобы при этом скролл работал как обычно? К body, например, можно применить overflow-y:hidden, но естественно скролл перестает работать.
Здравствуйте. Можно ли убрать, скрыть на сайте методами css или javascript вертикальную прокрутку, но , чтобы при этом скролл работал как обычно? К body, например, можно применить overflow-y:hidden, но естественно скролл перестает работать.
Здравствуйте. Можно ли убрать, скрыть на сайте методами css или javascript вертикальную прокрутку, но , чтобы при этом скролл работал как обычно? К body, например, можно применить overflow-y:hidden, но естественно скролл перестает работать.
Здравствуйте. Можно ли убрать, скрыть на сайте методами css или javascript вертикальную прокрутку, но , чтобы при этом скролл работал как обычно? К body, например, можно применить overflow-y:hidden, но естественно скролл перестает работать.
Здравствуйте. Можно ли убрать, скрыть на сайте методами css или javascript вертикальную прокрутку, но , чтобы при этом скролл работал как обычно? К body, например, можно применить overflow-y:hidden, но естественно скролл перестает работать.
Здравствуйте. Можно ли убрать, скрыть на сайте методами css или javascript вертикальную прокрутку, но , чтобы при этом скролл работал как обычно? К body, например, можно применить overflow-y:hidden, но естественно скролл перестает работать.
Здравствуйте. Можно ли убрать, скрыть на сайте методами css или javascript вертикальную прокрутку, но , чтобы при этом скролл работал как обычно? К body, например, можно применить overflow-y:hidden, но естественно скролл перестает работать.
Здравствуйте. Можно ли убрать, скрыть на сайте методами css или javascript вертикальную прокрутку, но , чтобы при этом скролл работал как обычно? К body, например, можно применить overflow-y:hidden, но естественно скролл перестает работать.
Как убрать полосу прокрутки с сайта, но оставить возможность прокрутки

Если Вы хотите убрать полосу прокрутки с сайта и оставить возможность прокручивания страницы, то эта короткая статья для Вас.
Казалось бы, элементарный технический нюанс, иногда встречающийся при создании сайтов. Однако, порывшись в поисковиках, был удивлён, что не нашёл простого решения этого вопроса на css.
Пришлось более глубже копнуть, и на данный момент пришёл к выводу, что кроссбраузерного решения на css не существует.
В основном, все кроссбраузерные способы сводятся либо к изменению архитектурной конструкции HTML, либо же к использованию JavaScript.
Упорядочив информацию, привожу ниже в все три способа скрытия полосы прокрутки: на CSS, с помощью HTML конструкций и с помощью JavaScript.
1-ый способ (css):
Ключевой момент — использование псевдоэлемента -webkit-scrollbar с шириной равной нулю.
Конструкция HTML будет иметь следующий вид:
Контент.
CSS стили будут иметь следующий вид:
.sposob-1 < width: 250px; height: 342px; margin: 0 25px; overflow-x: hidden; overflow-y: scroll; >.sposob-1-inside < width: 100%; margin: 0 0px; background: #008C00; >.sposob-1::-webkit-scrollbar
Первый способ скрытия полосы прокрутки будет работать только для браузеров на движке WebKit.
2-ой способ (HTML+CSS):
Ключевой момент — ширину внутреннего контейнера задаём больше на 20px относительно внешнего контейнера, что примерно равно ширине полосы прокрутки.
Конструкция HTML будет иметь следующий вид:
Контент.
CSS стили будут иметь следующий вид:
.sposob-2 < width: 250px; height: 342px; margin: 0 25px; overflow: hidden; >.sposob-2-outside < width: 270px; height: 100%; padding-right: 0px; overflow-x: hidden; overflow-y: scroll; >.sposob-2-inside
Говоря о скрытии скроллбара с помощью HTML-конструкций необходимо донести читателю, что кроме вышеприведённого способа, в котором полоса прокрутки скрывается за счёт увеличения свойства width относительно внешнего контейнера, существуют и другие подходы. Это и увеличение горизонтальных отступов и изменение свойств позиционирования и возможно другие. Здесь уже как мысль развернётся.
3-ий способ (JavaScript):
Ключевой момент — с помощью js-скрипта задаём правый отступ (padding-Right) внутреннего контейнера, что бы увеличить его ширину для скрытия полосы прокрутки.
Конструкция HTML будет иметь следующий вид:
Контент.
CSS стили будут иметь следующий вид:
.sposob-3 < width: 250px; height: 342px; margin: 0 25px; overflow: hidden; >.sposob-3-inside
JavaScript код будет следующим:
var parent = document.getElementById('spb-1'); var child = document.getElementById('spb-2'); child.style.paddingRight = child.offsetWidth - child.clientWidth + "px";
Третий способ — это по сути второй, только в данном случае мы увеличиваем ширину внутреннего контейнера относительно внешнего за счёт задания правого внутреннего отступа (padding-Right) с помощью js-скрипта.
Как отключить прокрутку страницы, когда открыто меню?

Мне больше нравиться вариант с добавлением класса.
Например:
В css добавляем
.no_scroll
А в js При открытии меню
$(‘body’).addClass(‘no_scroll’)
При закрытии
$(‘body’).removeClass(‘no_scroll’)
Если нужно чтобы документ не прыгал когда у body исчезает скролл можно использовать функцию.
function calcScroll()
И при открытии добавить еще
$(‘body’).css(‘margin-right’, calcScroll()+’px’)
При закрытии убрать
$(‘body’).css(‘margin-right’, ‘0px’)
Как программно отключить прокрутку страницы с помощью jQuery
Используя jQuery, я бы хотел отключить прокрутку тела:
Моя идея состоит в том, чтобы:
- Устанавливать body
- Захватить текущий scrollTop();/scrollLeft()
- Привязать к событию прокрутки тела, установите scrollTop / scrollLeft в захваченное значение.
Есть ли способ лучше?
Пожалуйста, посмотрите мой пример и причину, по которой, на http://jsbin.com/ikuma4/2/edit
Я знаю, что кто-то подумает: «Почему он не просто использует position: fixed панель?».
Пожалуйста, не предлагайте это, поскольку у меня есть другие причины.
«Есть ли способ лучше?» — кроме как позволить браузеру вести себя нормально?
«театрально»?
Возможно, подразумевается программно? Так как это предложение Firefox по исправлению орфографии для «программно»
Эта тема собирается \ b \
@ Sohnee отключить прокрутку! == плохо
Единственный способ сделать это похож на то, что вы описали:
- Возьмите текущую позицию прокрутки (не забудьте горизонтальную ось!).
- Установите переполнение скрытым (вероятно, хотите сохранить предыдущее значение переполнения).
- Прокрутите документ до сохраненной позиции прокрутки с помощью scrollTo ().
Затем, когда вы будете готовы снова разрешить прокрутку, отмените все это.
Изменить: нет причин, я не могу дать вам код, так как я попытался выкопать его .
// lock scroll position, but retain settings for later var scrollPosition = [ self.pageXOffset || document.documentElement.scrollLeft || document.body.scrollLeft, self.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop ]; var html = jQuery('html'); // it would make more sense to apply this to body, but IE7 won't have that html.data('scroll-position', scrollPosition); html.data('previous-overflow', html.css('overflow')); html.css('overflow', 'hidden'); window.scrollTo(scrollPosition[0], scrollPosition[1]); // un-lock scroll position var html = jQuery('html'); var scrollPosition = html.data('scroll-position'); html.css('overflow', html.data('previous-overflow')); window.scrollTo(scrollPosition[0], scrollPosition[1])
пожалуйста, посмотрите jsbin.com/ikuma4/2/edit и объясните мне причину, что ваша лучше? я что-то упускаю (я спрашиваю, потому что не вижу причин для длины вашего ответа по сравнению с моим примером)
Ваш подход не работает в IE7. Я тоже сначала попробовал. Проблема в том, что он не реагирует на событие прокрутки достаточно быстро. Он позволяет документу прокручиваться, а затем привязывает его обратно, когда ваш JS сбрасывает позицию прокрутки туда, куда вы хотите.
Кроме того, если тело имеет переполнение чего-либо другого auto , оно будет перезаписано. Мне нужно было сохранить существующую настройку, так что это добавляет некоторые накладные расходы.
Кто-нибудь знает, почему просто стиль html и body с overflow: hidden недостаточно? Нам все еще нужен обработчик событий.
Это фантастический ответ. И чтобы заставить его работать на сенсорных устройствах, проверьте этот ответ.
Это полностью отключит прокрутку:
$('html, body').css( overflow: 'hidden', height: '100%' >);
$('html, body').css( overflow: 'auto', height: 'auto' >);
Протестировал его на Firefox и Chrome.
работает как положено. Спасибо! Это должен был быть принятый ответ!
Все еще прокручивает с помощью средней кнопки мыши на хром.
Это теряет текущую позицию прокрутки. OP явно упомянул о захвате позиции прокрутки, так что я предполагаю, что он требовал этого. В любом случае, я нуждаюсь в этом, так что это ограниченное использование для меня
PS Опускание height: 100% эффективно блокирует прокрутку в текущей позиции без прыжков — по крайней мере, на последнем Chrome.
Это НЕ правильный ответ. Положение свитка не захвачено
$('#element').on('scroll touchmove mousewheel', function(e) e.preventDefault(); e.stopPropagation(); return false; >)
только то, что я искал . почти. Во всяком случае, чтобы отключить его во время клавиш со стрелками?
@Cody — объедините это с переполнением CSS: скрыто
@ Куббиу, как повернуть его вспять?
Вы можете использовать $(‘#element’).off(‘scroll touchmove mousewheel’);
Отличное решение. Хотя как бы вы отключили только body прокрутку, но разрешить прокрутку внутри других дочерних элементов overflow: scroll ?
Я просто привожу небольшую настройку решения от tfe . В частности, я добавил некоторые дополнительные элементы управления, чтобы гарантировать отсутствие смещения содержимого страницы (или сдвига страницы ), когда полоса прокрутки установлена в hidden .
Две функции Javascript lockScroll() и unlockScroll() могут быть определены, соответственно, для блокировки и разблокировки прокрутки страницы.
function lockScroll() $html = $('html'); $body = $('body'); var initWidth = $body.outerWidth(); var initHeight = $body.outerHeight(); var scrollPosition = [ self.pageXOffset || document.documentElement.scrollLeft || document.body.scrollLeft, self.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop ]; $html.data('scroll-position', scrollPosition); $html.data('previous-overflow', $html.css('overflow')); $html.css('overflow', 'hidden'); window.scrollTo(scrollPosition[0], scrollPosition[1]); var marginR = $body.outerWidth()-initWidth; var marginB = $body.outerHeight()-initHeight; $body.css('margin-right': marginR,'margin-bottom': marginB>); > function unlockScroll() $html = $('html'); $body = $('body'); $html.css('overflow', $html.data('previous-overflow')); var scrollPosition = $html.data('scroll-position'); window.scrollTo(scrollPosition[0], scrollPosition[1]); $body.css('margin-right': 0, 'margin-bottom': 0>); >
где я предположил, что не имеет начальной маржи.
Обратите внимание, что, хотя вышеупомянутое решение работает в большинстве практических случаев, оно не является окончательным, поскольку оно требует некоторой дополнительной настройки для страниц, которые включают, например, заголовок с position:fixed . Давайте перейдем к этому частному случаю с примером. Предположим, чтобы иметь
id="header">My fixedheader
#header
Затем следует добавить следующее в функции lockScroll() и unlockScroll() :
function lockScroll() //Omissis $('#header').css('margin-right', marginR); > function unlockScroll() //Omissis $('#header').css('margin-right', 0); >
Наконец, позаботьтесь о возможном начальном значении полей или отступов.