it-swarm.com.de

Deaktivieren Sie das Scrollen auf dem Körper

Ich möchte das Scrollen im HTML body vollständig deaktivieren. Ich habe die folgenden Optionen ausprobiert:

  • overflow: hidden; (funktioniert nicht, hat das Scrollen nicht deaktiviert, es hat nur die Bildlaufleiste ausgeblendet)

  • position: fixed; (dies hat funktioniert, aber es wurde vollständig nach oben gescrollt, was für diese spezielle Anwendung nicht akzeptabel ist)

Ich konnte keine Alternativen zu diesen beiden Optionen finden. Gibt es noch weitere?

94
user4532193

Stellen Sie height und overflow ein:

html, body {margin: 0; height: 100%; overflow: hidden}

http://jsfiddle.net/q99hvawt/

182
panther

HTML-CSS funktioniert einwandfrei, wenn Body-Tag nichts tut, was Sie auch schreiben können

<body scroll="no" style="overflow: hidden">

In diesem Fall sollte das Überschreiben auf dem Body-Tag erfolgen, es ist einfacher zu kontrollieren, aber manchmal bereitet es Kopfschmerzen.

15
Lalo

Dieser Beitrag war hilfreich, wollte aber nur eine kleine Alternative mitteilen, die anderen helfen könnte:

Die Einstellung von max-height anstelle von height reicht ebenfalls aus. In meinem Fall deaktiviere ich das Scrollen basierend auf einer Klassenumschaltung. Wenn Sie .someContainer {height: 100%; overflow: hidden;} einstellen, wenn die Höhe des Containers kleiner als die des Ansichtsfensters ist, wird der Container gedehnt. Dies wäre nicht das, was Sie möchten. Das Festlegen von max-height trägt dem Rechnung, aber wenn die Höhe des Containers größer ist als die des Ansichtsfensters, wenn sich der Inhalt ändert, wird das Scrollen dennoch deaktiviert.

11
joebjoe