Ok, aus irgendeinem Grund scrollt meine Webseite von links nach rechts und zeigt viel hässlichen Platz.
Ich habe nach Ergebnissen gesucht, aber sie haben gerade die Bildlaufleiste versteckt
Das ist jetzt, was ich will, ich möchte die horizontale Bildlauffunktion physisch deaktivieren . Ich möchte nicht, dass der Benutzer auf meiner Seite von links nach rechts nur nach oben und unten scrollen kann!
Ich habe versucht: overflow-x:hidden
in CSS auf meinem html
Tag, aber es hat nur die Bildlaufleiste ausgeblendet und den Bildlauf nicht deaktiviert.
Bitte hilf mir!
Hier ist ein Link zur Seite: http://www.green-panda.com/usd309bands/ (Defekter Link)
Dies könnte Ihnen eine bessere Vorstellung davon geben, wovon ich spreche:
Dies ist, wenn die ersten Seiten geladen werden:
Und das ist, nachdem ich nach rechts gescrollt habe:
Antworten:
Versuchen Sie, dies Ihrem CSS hinzuzufügen
quelle
Das ist das böse Kind deines Codes :)
Ersetzen Sie es durch
quelle
Um dies richtig zu beheben, habe ich das getan, was andere hier getan haben, und CSS verwendet, um die horizontale Symbolleiste auszublenden:
Dann habe ich in js einen Ereignis-Listener erstellt, um nach Bildlauf zu suchen, und dem versuchten horizontalen Bildlauf des Benutzers entgegengewirkt.
Ich habe gesehen, wie jemand etwas Ähnliches gemacht hat, aber anscheinend hat das nicht funktioniert. Dies funktioniert jedoch einwandfrei für mich.
quelle
Ich weiß, dass es zu spät ist , aber es gibt einen Ansatz in Javascript, mit dem Sie erkennen können, dass das HTML-Element den horizontalen Überlauf verursacht -> Bildlaufleiste
Hier ist ein Link zum Beitrag über CSS-Tricks
es könnte so etwas zurückgeben:
Dann entfernen Sie einfach die zusätzliche Breite von der
div
oder stellen sie einmax-width:100%
Hoffe das hilft!
Es hat das Problem für mich behoben:]
quelle
Versuchen Sie dies, um das Scrollen in der Breite nur für den Text zu deaktivieren. Das gesamte Dokument ist nur der Text
body{overflow-x: hidden;}
quelle
koala_dev antwortete, dass dies funktionieren wird:
Und MarkWPiper kommentiert: ": - / Touch- / Momentum-Scrolling verursacht, um die Arbeit am iPhone zu beenden."
Die Lösung, um Touch / Momentum auf dem iPhone zu erhalten, besteht darin, diese Zeile innerhalb des CSS-Blocks für HTML, Body, hinzuzufügen:
quelle
Die Antwort von Koala_dev wird funktionieren, aber falls Sie sich fragen, ist dies der Grund, warum es funktioniert:
.
quelle
Verwenden Sie diesen Code, wenn Sie das horizontale Scrollen über die gesamte Bildschirmbreite deaktivieren möchten.
Dies funktioniert besser als "100%", da die übergeordnete Breite ignoriert und stattdessen das Ansichtsfenster verwendet wird.
quelle
Sie können diese Methode auf unserer HTML-Seite ausprobieren.
1. Weg
2. Weg Sie können Folgendes in Ihrem CSS-Body-Tag verwenden:
Dadurch wird Ihre Bildlaufleiste entfernt.
3. Weg
5. Weg
6. Weg
4. Weg ..
Jetzt bin ich auf der Suche nach mehr .. !!!!
quelle
Ich musste mich nur selbst darum kümmern. Immerhin fand ich diese Methode am einfachsten und nützlichsten. Einfach hinzufügen
An deine äußeren Eltern. In meinem Fall sieht es so aus:
Sie müssen verwenden,
overflow-x
denn wenn Sie einfach verwendenoverflow
, deaktivieren Sie auch das vertikale Scrollen, nämlichoverflow-y
Wenn das vertikale Scrollen immer noch deaktiviert ist, können Sie es explizit aktivieren mit:
Ich weiß, dass es etwas nicht richtig ist, denn wenn alles gut eingerichtet wäre, müsste man diese schnelle und schmutzige Methode nicht anwenden.
quelle
Sie wenden den obigen Stil an oder können eine Funktion in JavaScript erstellen , um dieses Problem zu lösen
quelle
Sie können das Body-Scroll-Ereignis mit JavaScript überschreiben und den horizontalen Scroll auf 0 zurücksetzen.
Ich rate davon ab, da dies die Funktionalität für Benutzer mit kleinen Bildschirmen einschränkt.
quelle