Wpis z mikrobloga

#frontend #webdev #css #html #javascript
Potrzebuję zachowania jak przy overflow-y: scroll - ALE - gdy scroll niepotrzebny, to nie ma być widoczny nieaktywny scrollbar, tylko ma pozostać przeźroczysty margines o szerokości scrollbara.
Da się to zrobić samym CSS i HTML? Jak?
  • 5
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

  • Doceń
@pomarancza_: To jest domyślne zachowanie. Scrollbar wtedy pojawia się i znika, ale jak znika, to nie zajmuje miejsca, treść zmienia przez to szerokość.
Dlatego chcę coś, co pozostawi margines szerokości scrollbar-a, gdy scrollbar znika.

Mogę obserwować czy treść się "przelewa" i dodawać ten margines dynamicznie, gdy znika scrollbar. Metoda pobrania szerokości scrollbara też jest mi znana.

Ale pytam o rozwiązanie bez JS.
  • Odpowiedz
@pomarancza_: W JS mam takie coś, no ale chodzi czy da się bez JS i ewentualnie trzeba by zgłosić dodatkowe właściwości do CSS overflow, np. overflow: auto-margin;, która by robiła to samo. Nie wykluczone że podobna propozycja gdzieś istnieje, tylko nie znam nazwy.

function getScrollbarWidth () {
// Creating invisible container
const outer = document.createElement('div');
  • Odpowiedz