Nie powinieneś wyświetlać zarówno poziomych, jak i pionowych pasków przewijania, chyba że zawartość jest wystarczająco duża, aby ich wymagać.
Jednak zazwyczaj robisz to w IE z powodu błędu. Sprawdź w innych przeglądarkach (Firefox itp.), Aby dowiedzieć się, czy w rzeczywistości robi to tylko IE.
IE6-7 (między innymi przeglądarkami) obsługuje proponowane rozszerzenie CSS3 do niezależnego ustawiania pasków przewijania, których można użyć do zniesienia pionowego paska przewijania:
overflow: auto;
overflow-y: hidden;
W przypadku IE8 może być konieczne dodanie:
-ms-overflow-y: hidden;
ponieważ Microsoft grozi przeniesieniem wszystkich właściwości sprzed standardu CR do własnego pola „-ms” w trybie norm IE8. (Miałoby to sens, gdyby zawsze tak robili, ale teraz jest to raczej niedogodność dla wszystkich).
Z drugiej strony jest całkowicie możliwe, że IE8 i tak naprawi błąd.
Musiałem też dodać
white-space: nowrap;
do stylu, w przeciwnym razie elementy zawiną się w obszar, do którego usuwamy możliwość przewijania.źródło
white-space: nowrap;
jest kluczem, bez tego twoje elementy będą się układać / owijać.To rozwiązanie nie ma specyfikacji wysokości / szerokości dla div div, więc będzie reagować na zmianę rozmiaru okna i najbardziej przydatne, ponieważ poziome paski przewijania pojawiają się tylko w razie potrzeby.
Spójrz na DEMO
źródło
Aby pokazać oba:
Ukryj oś X:
Ukryj oś Y:
źródło
możesz to zrobić
overflow: auto
i podać maksymalną stałą wysokość i szerokość w ten sposób, gdy tekst lub cokolwiek tam jest, przepełnia się, pokaże tylko wymagany pasek przewijaniaźródło
Korzystam z właściwości CSS: 1) „
overflow-x: auto
”; 2) „overflow-y: hidden
”; 3) „white-space: nowrap
”;Nie zapomnij ustawić szerokości, zarówno dla kontenera, jak i wewnętrznych komponentów DIVS. Właściwość „white-space: nowrap” pozwala wewnętrznym DIVS nie upaść na inną linię.
Biorąc pod uwagę następujący kod HTML:
Używam następującego CSS, aby mieć tylko przewijanie w poziomie:
Fiddle: https://jsfiddle.net/qrjh93x8/ (nie działa z powyższym kodem)
źródło
Użyj następujących
źródło
źródło
CSS3 ma tę
overflow-x
właściwość, ale nie spodziewałbym się po tym wspaniałego wsparcia. W CSS2 wszystko, co możesz zrobić, to ustalić ogólnescroll
zasady i pracować nad nimi,widths
aheights
nie je popsuć.źródło
Powinniśmy ustawić
overflow: auto
i ukryć pasek przewijania, którego nie używamy do pracy z nieobsługiwaną przeglądarką CSS3. Spójrz na to przepełnienie CSS; XME.imźródło