To
<div id="" style="overflow:scroll; height:400px;">
daje div
użytkownikowi możliwość przewijania zarówno w poziomie, jak i w pionie. Jak to zmienić, aby div mógł być przewijany tylko w pionie?
To
<div id="" style="overflow:scroll; height:400px;">
daje div
użytkownikowi możliwość przewijania zarówno w poziomie, jak i w pionie. Jak to zmienić, aby div mógł być przewijany tylko w pionie?
overflow-x
ioverflow-y
w CSS3, które robią, co chcesz.Odpowiedzi:
Masz to ubezpieczone oprócz korzystania z niewłaściwej właściwości. Pasek przewijania może być wyzwolony z wszelkich nieruchomości
overflow
,overflow-x
albooverflow-y
i każdy z nich może być ustawiony jeden zvisible
,hidden
,scroll
,auto
, lubinherit
. Obecnie patrzysz na te dwa:auto
- Ta wartość będzie patrzeć na szerokość i wysokość pudełka. Jeśli są zdefiniowane, nie pozwoli, aby pole przekroczyło te granice. Zamiast tego (jeśli treść przekracza te granice), utworzy pasek przewijania dla dowolnej granicy (lub obu), która przekracza jej długość.scroll
- Te wartości wymuszają pasek przewijania, bez względu na wszystko, nawet jeśli zawartość nie przekracza zestawu granic. Jeśli zawartość nie musi być przewijana, pasek pojawi się jako „wyłączony” lub nieinteraktywny.Jeśli zawsze chcesz, aby pionowy pasek przewijania pojawiał się:
Powinieneś użyć
overflow-y: scroll
. Te siły pasek przewijania do pojawiają się na osi pionowej, czy nie jest to potrzebne. Jeśli nie możesz przewinąć kontekstu, pojawi się on jako „wyłączony” pasek przewijania.Jeśli chcesz, aby pasek przewijania pojawiał się tylko wtedy, gdy możesz przewinąć pole:
Po prostu użyj
overflow: auto
. Ponieważ treść domyślnie po prostu przechodzi do następnego wiersza, gdy nie może zmieścić się w bieżącym wierszu, poziomy pasek przewijania nie zostanie utworzony (chyba że dotyczy elementu z wyłączonym zawijaniem słów). W przypadku paska pionowego zawartość będzie się rozszerzać do określonej wysokości. Jeśli przekroczy tę wysokość, wyświetli pionowy pasek przewijania, aby wyświetlić resztę zawartości, ale nie wyświetli paska przewijania, jeśli nie przekroczy wysokości.źródło
Spróbuj tak
źródło
Dla 100% wysokości rzutni użyj:
źródło
Użyj
overflow-y: auto;
na div.Powinieneś także ustawić szerokość.
źródło
auto
domyślnie. Zwykle oznacza to 100% szerokości rodzica, ale nie zawsze.Zamiast tego możesz użyć tego kodu.
overflow-x : Właściwość overflow-x określa, co zrobić z lewą / prawą krawędzią treści - jeśli przepełni obszar zawartości elementu.
overflow-y : Właściwość overflow-y określa, co zrobić z górną / dolną krawędzią treści - jeśli przepełni obszar zawartości elementu. Widoczne
wartości : wartość domyślna. Treść nie jest przycinana i może być renderowana poza polem zawartości. ukryty : treść jest obcięta - i nie ma mechanizmu przewijania. przewijanie : treść jest obcinana i zapewniony jest mechanizm przewijania. auto : Powoduje udostępnienie mechanizmu przewijania dla przepełnionych pól. initial : Ustawia tę właściwość na wartość domyślną.
inherit Dziedziczy tę właściwość po elemencie nadrzędnym.
źródło
Możesz użyć
overflow-y: scroll
do przewijania w pionie.źródło
Problem z tymi wszystkimi odpowiedziami był taki, że nie reagowały. Musiałem mieć ustaloną wysokość dla rodzica div, czego nie chciałem. Nie chciałem też spędzać dużo czasu, grzebiąc w mediach. Jeśli używasz kątowego, możesz użyć zestawu startowego, który wykona za ciebie całą ciężką pracę. Będziesz mógł przewijać zawartość wewnętrzną, a ona będzie reagować. Po skonfigurowaniu karty wykonaj następujące czynności:
$scope.tab = { title: '', url: '', theclass: '', ative: true };
... chodzi o to, że nie chcesz ikony tytułu ani obrazu. następnie ukryj kontur karty w cs w następujący sposób:a także to
.nav-tabs > li.active > a, .nav-tabs > li.active > a:hover, .nav-tabs > li.active > a:focus {border:none;}
i wreszcie, aby usunąć niewidoczną kartę, którą możesz kliknąć, jeśli nie zaimplementujesz tego:.nav > li > a {padding:0px;margin:0px;}
źródło