Альтернатива body {overflow: scroll;} Что предотвратит толкание страниц? - PullRequest
2 голосов
/ 17 февраля 2011

Я вырывал волосы примерно 30 минут, пытаясь понять, почему моя веб-страница сдвигалась на несколько пикселей при переходе между страницами. В конце концов я понял, что это произошло потому, что на длинных страницах всплывала правая полоса прокрутки, и все переворачивалось.

Я нашел решение, которое выглядит следующим образом.

body{
    overflow: scroll;
}

Это заставляет каждую страницу иметь полосу прокрутки, поэтому появление / исчезновение полосы прокрутки не толкает элементы страницы назад и вперед на несколько пикселей при навигации по сайту.

Есть ли лучший способ выполнить то, что я хочу, без рендеринга бесполезной полосы прокрутки с правой стороны? Я полагаю, что вы могли бы компенсировать страницы, которые не имеют очень длинного контента, на несколько пикселей, чтобы компенсировать это, но тогда вам, похоже, придется отслеживать, какие страницы имеют определенную длину, и переключать их CSS в зависимости от того, насколько содержание, которое у них было бы ужасно раздражающим.

Спасибо за любой совет:)

1 Ответ

3 голосов
/ 17 февраля 2011

К сожалению, я думаю, что принудительное отображение полосы прокрутки - единственный способ избежать смещения страниц ... просто попробуйте только "overflow-y", так как вам не нужны горизонтальные полосы прокрутки

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...