2012-04-22 15 views
21

Istnieją trzy elementy div obok siebie w pojemniku div, o mniejszej szerokości niż szerokość całkowita dzieci . Here można znaleźć skrzypce w przypadku:Sposób rozmieszczania wielu elementów obok siebie bez zawijania

Chcę dokonać przewijania kontenera div w poziomie, aby pokazać inne dzieci.

Jak mogę ustawić, aby dzieci nie owijały się w pojemnik div? Przewiń teraz w pionie, chcę, aby przewijał się w poziomie.

Odpowiedz

36

Zmień float: left na display: inline-block; i dodaj white-space: nowrap do kontenera.

+2

I bądź ostrożny, nie ma białych znaków w znacznikach :). [jsFiddle Demo] (http://jsfiddle.net/SasDh/4/) tego rozwiązania. – kapa

+0

Uwaga: to rozwiązanie nie zadziała z elementami div zawierającymi treść: http://jsfiddle.net/Jnz7e/ –

+2

@Jason Dodaj 'vertical-align: top' do bloków. –

3

Potrzebujesz kolejnego div w przewijanym pliku div, który ma całkowitą szerokość równą szerokości wszystkich jego elementów podrzędnych.

Patrz: http://jsfiddle.net/joshdavenport/SasDh/2/

Było już dodatkowy div tam tak kiedyś, że jeden

Bonus: Aby pozbyć się pionowego paska przewijania użytku overflow-y: hidden. Zobacz: http://jsfiddle.net/joshdavenport/SasDh/3/

+0

Wewnętrzna wartość div.width jest nieznana, elementy div dzieci są dynamicznie dodawane. –

0

Znacznik <span> służy do grupowania elementów śródliniowych w dokumencie.
(source)

Powiązane problemy