При нажатии на кнопку вся страница сдвигается на несколько пикселей влево

Я пытаюсь исправить проблему, из-за которой, когда пользователь нажимает кнопку, вся страница сдвигается влево. Проблема появляется только тогда, когда браузер развернут на максимум.

Вы можете попробовать сами здесь: https://professionalspeaking.oct.ca/exemplary.aspx

Нажмите кнопку «Великие учителя — по алфавиту +», чтобы увидеть изменение в действии.

я ничего не вижу?

Mosia Thabo 27.05.2019 21:57

Что значит ничего не видишь? Страница не загружается?

Dpuiatti 27.05.2019 21:58

Вы не создали отзывчивый сайт, это все, что я вижу. Я уже много раз нажимал эту кнопку.

Mosia Thabo 27.05.2019 21:58

Когда я нажимаю, все остается как есть. Страница загружена. Но страница не перемещается влево.

Mosia Thabo 27.05.2019 21:58

Это потому, что длина страницы увеличивается и появляется полоса прокрутки

j08691 27.05.2019 22:00

@Dpuiatti, страница не смещается, когда я нажимаю эту кнопку, как указано в вашем вопросе выше. Кнопка просто переключает отображение некоторого содержимого.

Mosia Thabo 27.05.2019 22:01

Странный. @ j08691 предполагает, что это связано с горизонтальной прокруткой. Я попробовал максимальную ширину: 100%; переполнение-x: скрыто; ни к чему успеху. Вы пытались нажать кнопку с развернутым браузером и выключенной консолью разработчика?

Dpuiatti 27.05.2019 22:07

Нет, я говорю, что это из-за вертикальной полосы прокрутки, появляющейся в правой части браузера из отображаемого списка. Установка ширины на странице или скрытие горизонтального переполнения не остановит этого. А зачем тебе это? Как кто-нибудь сможет прокручивать страницу вниз, если вы скрыли полосу прокрутки?

j08691 27.05.2019 22:09

@ j08691 большое спасибо за разъяснение. Это такая глупая оплошность с моей стороны. Спасибо!

Dpuiatti 27.05.2019 22:11
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Введение в CSS
Введение в CSS
CSS является неотъемлемой частью трех основных составляющих front-end веб-разработки.
Как выровнять Div по центру?
Как выровнять Div по центру?
Чтобы выровнять элемент <div>по горизонтали и вертикали с помощью CSS, можно использовать комбинацию свойств и значений CSS. Вот несколько методов,...
Навигация по приложениям React: Исчерпывающее руководство по React Router
Навигация по приложениям React: Исчерпывающее руководство по React Router
React Router стала незаменимой библиотекой для создания одностраничных приложений с навигацией в React. В этой статье блога мы подробно рассмотрим...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
CSS: FlexBox
CSS: FlexBox
Ранее разработчики использовали макеты с помощью Position и Float. После появления flexbox сценарий полностью изменился.
2
9
370
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Страница смещалась из-за появления вертикальной полосы прокрутки. Спасибо @ j08691 за указание на это. Я решил проблему, применив overflow-y: прокрутите до html:

html {
overflow-y: scroll;
}

Как правило, не рекомендуется стилизовать тег html, вместо этого используйте body. HTML представляет собой сам документ, тогда как body является элементом отображения самого высокого уровня. Однако изо всех сил пытаюсь найти хорошую ссылку для этого ...

slynagh 27.05.2019 22:36
Ответ принят как подходящий

Страница добавляет вертикальную полосу прокрутки, когда высота содержимого превышает высоту окна браузера. Это поведение по умолчанию, но если смещение кажется вам странным, единственный способ «исправить» это — принудительно включить полосу прокрутки на <body>, когда содержимое не заполняет страницу, добавив следующий css:

body{
  overflow-y: scroll;
}

Другие вопросы по теме