Wie kann ich meinem div automatisch eine vertikale Bildlaufleiste hinzufügen?


110

Ich möchte eine vertikale Bildlaufleiste zu meiner hinzufügen <div>. Ich habe es versucht overflow: auto, aber es funktioniert nicht. Ich habe meinen Code in Firefox und Chrome getestet.

Ich füge hier den div-Style-Code ein:

float: left;
width: 1000px;
overflow: auto;

eine jsfiddle oder mehr CSS mit Ihrem Markup
Ritabrata Gautam

12
Versuchen Sie dies: overflow-y:scrollund etwas Höhe . Gehen Sie diese Dokumente durch .
Mr_Green

Vielen Dank, Mr_Green, für Ihre Antwort. Aber dieser Code funktioniert bei mir nicht.
Jay

Damit der Bildlauf funktioniert, sollte der interne Inhalt überlaufen .
Mr_Green

Veröffentlichen Sie hier Ihren HTML- und CSS-Code.
Mr_Green

Antworten:


144

Sie müssen eine gewisse Höhe zuweisen, damit die overflow: auto;Eigenschaft funktioniert.
Fügen Sie zu Testzwecken hinzu height: 100px;und überprüfen Sie.
und auch wird es besser sein , wenn Sie geben overflow-y:auto;statt overflow: auto;, weil dies das Element macht nur vertikal zu bewegen , aber nicht horizontal.

float:left;
width:1000px;
overflow-y: auto;
height: 100px;

Wenn Sie die Höhe des Containers nicht kennen und die vertikale Bildlaufleiste anzeigen möchten, wenn der Container eine feste Höhe erreicht 100px, verwenden Sie max-heightstattdessen anstelle vonheight Eigenschaft.

Weitere Informationen finden Sie in diesem MDN-Artikel .


Ja, ich habe verstanden und getestet, es funktioniert gut in Chrome, aber nicht in FireFox. Eine weitere verwirrende Sache ist, dass die vertikale Bildlaufleiste beim Laden der Seite in FF angezeigt wird, aber nach Abschluss des Ladens der Seite verschwindet!
Jay

"Sie müssen etwas Höhe zuweisen" genau mein Problem, danke! : P
Wagner da Silva

51

Sie müssen eine max-heightEigenschaft hinzufügen .

.ScrollStyle
{
    max-height: 150px;
    overflow-y: scroll;
}
<div class="ScrollStyle">
  Scrollbar Test!<br/>
  Scrollbar Test!<br/>
  Scrollbar Test!<br/>
  Scrollbar Test!<br/>
  Scrollbar Test!<br/>
  Scrollbar Test!<br/>
  Scrollbar Test!<br/>
  Scrollbar Test!<br/>
  Scrollbar Test!<br/>
  Scrollbar Test!<br/>
</div>


20

Sie können einstellen:

overflow-y: scroll;height: XX px

2
Dies wurde durch frühere Antworten vorgeschlagen.
UmNyobe

14

Ich habe einen erstaunlichen Scroller auf meinem div-popup. Fügen Sie diesen Stil Ihrem div-Element hinzu, um ihn anzuwenden:

overflow-y: scroll;
height: XXXpx;

Das von heightIhnen angegebene ist die Höhe des Div. Wenn der Inhalt diese Höhe überschreitet, müssen Sie ihn scrollen.

Danke dir.


13

Um die vertikale Bildlaufleiste in Ihrem Div anzuzeigen, müssen Sie hinzufügen

height: 100px;   
overflow-y : scroll;

oder

height: 100px; 
overflow-y : auto;

10

Ich bin mir nicht ganz sicher, wofür Sie das div verwenden möchten, aber dies ist ein Beispiel mit zufälligem Text.

Mr_Green gab die richtigen Anweisungen, als er sagte, hinzuzufügen overflow-y: auto da dies das vertikale Scrollen einschränkt. Dies ist ein JSFiddle-Beispiel:

JSFiddle


Zunächst einmal @Mr_Green Ihr Vorschlag funktioniert gut in Chrome, aber nicht in FF. Und gibt es eine Alternative zum Hinzufügen von Höhe, weil ich meiner Div für meine Designstruktur keine Höhe hinzufügen kann?
Jay

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.