Generator separatorów CSS

CSS
Treść powyżej

Treść poniżej
Dalej

Separatory sekcji to poziome linie oddzielające bloki strony docelowej, na przykład subtelna linia między dwiema sekcjami albo linia zamykająca tabelę cen. Ten generator tworzy prosty poziomy separator: wybierz styl linii (ciągła, przerywana, kropkowana, podwójna lub rowkowana), ustaw kolor, grubość i margines, podejrzyj efekt między dwiema przykładowymi sekcjami i skopiuj wygenerowany CSS.

Jak zbudować separator

  1. 1

    Wybierz styl linii

    Wybierz spośród ciągła, przerywana, kropkowana, podwójna lub rowkowana, styl `border-top` użyty w separatorze.

  2. 2

    Wybierz kolor

    Dopasuj linię do tła sekcji lub koloru marki.

  3. 3

    Ustaw grubość i margines

    Grubość wynosi od 1 do 20 pikseli; margines kontroluje pionową przestrzeń nad i pod linią.

  4. 4

    Podejrzyj między sekcjami

    Separator jest pokazywany między dwiema przykładowymi sekcjami, aby sprawdzić wyrównanie i odstępy.

  5. 5

    Skopiuj CSS

    Skopiuj gotową regułę `.divider` i wklej ją do arkusza stylów.

Proste separatory liniowe

/* Subtle horizontal rule */
.divider {
  height: 1px;
  background: #e5e7eb;
  border: 0;
  margin: 3rem 0;
}

/* With text in the middle */
.divider-text {
  display: flex;
  align-items: center;
  gap: 1rem;
  color: #6b7280;
}
.divider-text::before,
.divider-text::after {
  content: "";
  flex: 1;
  height: 1px;
  background: #e5e7eb;
}

Ukośne przejście między sekcjami

Sztuczka z clip-path:

.hero {
  background: #0f172a;
  color: white;
  padding: 4rem 1rem;
  clip-path: polygon(0 0, 100% 0, 100% 100%, 0 calc(100% - 48px));
}

Lewy dolny róg jest podciągnięty o 48px, tworząc ukośne nachylenie. Aby przejście było czyste, kolejna sekcja powinna zaczynać się tuż przy nachyleniu, bez białej przerwy.

Aby przekątna szła w drugą stronę, zamień, który dolny róg jest uniesiony. Dla wcięcia lub zygzaka dodaj więcej wierzchołków.

Separatory falowe SVG

SVG to najczystszy sposób na organiczne krzywe:

<div class="hero">…</div>
<svg class="wave" viewBox="0 0 1440 80" preserveAspectRatio="none">
  <path d="M0 80 C 360 0, 1080 0, 1440 80 L 1440 80 L 0 80 Z"
        fill="white"/>
</svg>
.wave {
  display: block;
  width: 100%;
  height: 60px;
  margin-top: -1px; /* close any subpixel gap */
}

preserveAspectRatio="none" pozwala SVG rozciągnąć się do szerokości kontenera niezależnie od wymiarów źródłowych. margin-top: -1px zamyka cienką szczelinę, jaką zostawiają niektóre silniki renderujące.

Biblioteka typowych separatorów

Przydatne fragmenty:

Wzór Styl
Linia przerywana border-top: 1px dashed currentColor
Linia kropkowana border-top: 2px dotted currentColor; opacity: .4
Linia gradientowa background: linear-gradient(to right, transparent, #999, transparent)
Ozdobna Linia + ornament SVG wyśrodkowany za pomocą ::before/::after
Ukośne nachylenie clip-path: polygon(...) na sekcji powyżej
Fala SVG ze ścieżką Béziera trzeciego stopnia
Odwrócona fala SVG ze szczytami wznoszącymi się w sekcję
Zygzak SVG z naprzemiennymi punktami

Wskazówki

  • Dopasowanie szwu. Tło separatora (wypełnienie SVG lub kolor ukośnej sekcji) musi dokładnie odpowiadać tłu kolejnej sekcji. Odcień różniący się o 1px psuje efekt.
  • Unikaj mocnych krzywych na wąskich ekranach. Fala, która wygląda elegancko przy 1440px, może przypominać spłaszczoną sinusoidę przy 360px. Na urządzeniach mobilnych użyj mniejszej amplitudy przez media queries lub innej ścieżki SVG.
  • Nie nakładaj wielu separatorów. Jeden szew na granicę sekcji wystarczy.
  • Wydajność. Wbudowane separatory SVG są znikome; separatory oparte na obrazach kosztują żądanie sieciowe. Wbudowany SVG wygrywa.

Najczęściej zadawane pytania

SVG. CSS potrafi czysto wykonać proste ukośne przycięcia, ale krzywe wymagają przybliżeń z wieloma wierzchołkami wielokąta lub obejść. Ścieżki SVG natywnie obsługują gładkie krzywe i skalują się do dowolnej szerokości.

To zaokrąglanie subpikselowe. Dodaj margin-top: -1px (lub -2px w niektórych przeglądarkach) do fali albo użyj display: block, by uniknąć białych znaków elementu inline. Obie sztuczki niezawodnie zamykają szew.

Tak, wizualnie. Jeśli jednak sekcja powyżej jest interaktywna (przycisk w dolnym rogu), ukośny clip-path usuwa widoczną treść tego obszaru, zachowując jednocześnie obszar trafienia, co może zaskoczyć użytkowników. Zostaw wewnętrzny padding w ukośnej sekcji, aby elementy interaktywne były z dala od przyciętej krawędzi.

Nie. Separatory są prezentacyjne i nie wpływają na treść strony, którą indeksują wyszukiwarki. Dla SEO liczy się struktura semantyczna (nagłówki, sekcje); ozdobny separator między nimi nie ma znaczenia.

Powiązane narzędzia

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