Generator spinera CSS do nakładki

Dalej

Nakładka ładowania przykrywa stronę półprzezroczystą warstwą i spinnerem pośrodku. Wygeneruj tutaj spinner, a następnie dodaj poniżej krótki CSS opakowania, aby wyśrodkować go nad treścią.

Jak zbudować spinner nakładki

  1. 1

    Wybierz większy rozmiar

    Wpisz 70 do 90 w polu Rozmiar (px) i 6 do 8 w polu Grubość, aby spinner był dobrze widoczny na całej stronie.

  2. 2

    Wybierz mocny kolor

    Wybierz kolor łuku, który wyróżnia się na tle nakładki.

  3. 3

    Skopiuj wygenerowany CSS

    Użyj przycisku Kopiuj dla reguł spinera i keyframes.

  4. 4

    Dodaj opakowanie

    Wklej reguły nakładki z tej strony i umieść spinner wewnątrz opakowania.

Dwie części: spinner i nakładka

Generator tworzy spinner: klasę .loader i regułę @keyframes spin. Nakładka to osobne opakowanie, które dodajesz sam. Obejmuje cały obszar widoku i centruje swój element potomny. Taki podział jest przydatny, bo ten sam spinner możesz użyć w przycisku lub karcie, a opakowania potrzebujesz tylko wtedy, gdy trzeba zablokować interfejs.

CSS opakowania

Wklej to po wygenerowanych regułach:

.overlay {
  position: fixed;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(255, 255, 255, 0.75);
  z-index: 1000;
}
<div class="overlay" role="status" aria-label="Ładowanie">
  <div class="loader"></div>
</div>

position: fixed z inset: 0 rozciąga warstwę do wszystkich czterech krawędzi ekranu. Ustawienia flex centrują spinner w obu kierunkach. z-index utrzymuje warstwę nad zwykłą treścią, więc zwiększ go, jeśli nagłówek lub okno modalne nadal znajduje się na wierzchu.

Przykryj jeden obszar zamiast całej strony

Jeśli ładuje się tylko karta lub tabela, nadaj jej kontenerowi position: relative, a opakowanie zmień na position: absolute:

.panel { position: relative; }
.panel .overlay { position: absolute; }

Reszta strony pozostaje używalna, a przyciemniony zostaje tylko ten panel.

Dobierz kolor nakładki do strony

Tło strony Tło nakładki Kolor łuku
Białe rgba(255, 255, 255, 0.75) Kolor marki
Ciemne rgba(0, 0, 0, 0.6) Jasny lub intensywny kolor

Na ciemnej stronie zmień też kolor toru #eee we wklejonym CSS spinera, aby pierścień nie świecił zbyt mocno.

Dobre praktyki

  • Usuń nakładkę, gdy tylko praca się zakończy, inaczej strona pozostanie zablokowana.
  • Używaj jej przy krótkich oczekiwaniach. Przy długich operacjach pokaż tekst wyjaśniający, co się dzieje.
  • Nakładka i obsługa fokusu to Twój własny kod. Narzędzie tworzy tylko spinner.

Zablokuj przewijanie strony

Stała nakładka zasłania stronę, ale strona pod nią nadal może się przewijać kółkiem myszy lub dotykiem. Jeśli to ważne, dodaj overflow: hidden; do body, gdy nakładka jest widoczna, i usuń to, gdy nakładka znika. Powiąż regułę z tym samym momentem pokazywania i ukrywania nakładki, aby nigdy nie wypadły z synchronizacji.

Najczęściej zadawane pytania

Nie. Generuje CSS spinera. Opakowanie nakładki to kilka dodatkowych linii CSS pokazanych na tej stronie, które wklejasz obok.

Ustaw opakowanie jako fixed z inset: 0 i użyj display: flex z align-items: center oraz justify-content: center. Spinner znajdzie się wtedy na środku.

Inny element ma wyższą kolejność nakładania. Podnieś z-index nakładki powyżej niego.

Tak. Stała warstwa przykrywająca ekran przejmuje kliknięcia zamiast elementów pod spodem, co zwykle jest pożądane podczas ładowania.

Powiązane narzędzia

Narzędzie jest dostępne w innych językach

Poradniki i zastosowania