Chciałbym body
całkowicie wyłączyć przewijanie w HTML . Wypróbowałem następujące opcje:
overflow: hidden;
(nie działa, nie wyłącza przewijania, po prostu ukrywa pasek przewijania)position: fixed;
(to zadziałało, ale przewinęło się całkowicie do góry, co jest niedopuszczalne w tej konkretnej aplikacji)
Nie mogłem znaleźć żadnej alternatywy dla tych dwóch opcji, czy są jakieś więcej?
Odpowiedzi:
Ustaw
height
ioverflow
:html, body {margin: 0; height: 100%; overflow: hidden}
http://jsfiddle.net/q99hvawt/
źródło
HTML css działa dobrze, jeśli tag body nie robi nic, co również możesz napisać
<body scroll="no" style="overflow: hidden">
W takim przypadku nadpisywanie powinno znajdować się na tagu body, jest łatwiejsze do kontrolowania, ale czasami powoduje ból głowy.
źródło
scroll
Atrybut nie jest prawidłowy w<body>
tagu. Nie jest wymieniony jako ważny w żadnej specyfikacji, którą mogę znaleźć. w3schools ; MDN ; QuackitTen post był pomocny, ale chciałem tylko podzielić się niewielką alternatywą, która może pomóc innym:
Ustawienie
max-height
zamiastheight
również załatwia sprawę. W moim przypadku wyłączam przewijanie na podstawie przełącznika klas. Ustawienie,.someContainer {height: 100%; overflow: hidden;}
kiedy wysokość kontenera jest mniejsza niż wysokość widoku, spowodowałoby rozciągnięcie kontenera, co nie byłoby tym, czego byś chciał. Ustawieniemax-height
kont w tym celu, ale jeśli wysokość kontenera jest większa niż widoczna w momencie zmiany zawartości, nadal wyłącza przewijanie.źródło
Aby to osiągnąć, dodaj 2 właściwości CSS do
<body>
elementu.body { height: 100%; overflow-y: hidden; }
Obecnie istnieje wiele serwisów informacyjnych, które wymagają od użytkowników założenia konta. Zwykle zapewniają pełny dostęp do strony na około sekundę, a następnie wyświetlają wyskakujące okienko i uniemożliwiają użytkownikom przewijanie w dół.
źródło