Adam W.

Adam W. senior php
developer, Symfony

Temat: wyłączenie scrollbar

cześć,

mam diva, z css:
width: 100%;
height: 100%;

chciałbym go wyświetlić na górze, ukrywając treść pod spodem.

w firefox scrollbar można wyłączyć poprzez
overflow: hidden;
.
a jak to zrobić w IE9 czy Opera11?
w operze mi się udało ukryć, ale nadal działa scroll myszki - można przewinąć stronę w dół.

czyli:
jak zablokować możliwość scrollowania strony (za pomocą scrolla myszki) oraz jak ukryć paski przewijania (scrollbar) w oknie przeglądarki?
Wojciech J.

Wojciech J. mistrz wwwujitsu

Temat: wyłączenie scrollbar

Jeśli chcesz blokować scrollowanie, to tylko jscriptem, a konkretniej eventem onmousewheel. Nie działa on we wszystkich przeglądarkach więc sprawdź kompatybilność i sugerowane rozwiązania. JQuery ma chyba gotowe funkcje dla handlerów dot. scrollowania.
Rozwiązanie jscriptowe nie poradzi jednak na przeglądarki z wyłączonym JS.

Scrollbary możesz blokować pojedynczo overflow-y i overflow-x, co działa w IE ale nie powiem Ci czy akurat w v9.

ps. jedynym sprawnym wyjściem byłoby rysowanie 3 warstw z pozycjonowaniem absolutnym.
Pierwsza: zawierająca tekst
Druga: ukrywająca suwaki zasłaniając je img, lub kolorem takim samym jak tło elementu nadrzędnego (body?)
Trzecia: przysłaniająca dwie poprzednie przezroczystym img co skutecznie zablokuje jakiekolwiek scrollowanie.

Możesz jeszcze pokombinować z zagnieżdżaniem divów i ustawianiem im overflow: hidden/auto/scroll wraz z wyświetlaniem blokowym.
Czasem to działa jak mi się przydaży wejść na aukcję, w której stosowany jest szablon z ramkami i focus przejmuje warstwa nadrzędna.

konto usunięte

Temat: wyłączenie scrollbar

Jeśli już ten div na górze zakryje treść, zrób w JS malutką funkcję, która co powiedzmy 0,5 sekundy będzie ustawiała focus na jakimś ukrytym elemencie typu input. W ten sposób trudno będzie złapać focus na treść pod spodem i scrollować ją.

konto usunięte

Temat: wyłączenie scrollbar

A czemu się tak męczyć z ukrywaniem scrolla?
Jaki masz use case? Skoro ten element z treścią i tak ma nie być widoczny, to nie lepiej go ukryć cssem całkiem, tak zeby scroll się nie pojawił?
Krzysztof Kurzawa

Krzysztof Kurzawa Web / Mobile
Developer

Temat: wyłączenie scrollbar

A jak zrobimy "fixed, width 100%, height 100%" główny kontener przy dobrym resecie wszystkich elementów to nie jest tak że główny scroll się nie pojawi nawet zablokowany?

konto usunięte

Temat: wyłączenie scrollbar

Krzysztof Kurzawa:
A jak zrobimy "fixed, width 100%, height 100%" główny kontener przy dobrym resecie wszystkich elementów to nie jest tak że główny scroll się nie pojawi nawet zablokowany?

tez o tym myslalem, body, html width i height na 100% i kontener tez na 100 i powinno grac.
Adam W.

Adam W. senior php
developer, Symfony

Temat: wyłączenie scrollbar

dziękuję wszystkim za odpowiedzi.

jeszcze mi się nie udało rozwiązać problemu.

ten element z treścią tylko na początku nie będzie widoczny. po załadowaniu się treści w tle znika.

ustawiłem body, html i loader wysokość i szerokość na 100% ale niestety, scrollbar nadal się pojawia.

póki co zrobiłem coś takiego, że na początku czcionka ma rozmiar 0.1em, a po schowaniu loadera przywracam jej 1em.
działa, ale w sytuacji gdy zamiast tekstu będą zdjęcia, nie będzie to fajne, bo wtedy trzeba zmniejszać i powiększać zdjęcia. czyli takie kombinowanie na około.

Następna dyskusja:

Scrollbar a Firefox




Wyślij zaproszenie do