Gradienty

Frontend SELF PL
Poziom 18 , Lekcja 5
Dostępny

5.1 Gradienty liniowe

Gradienty to potężne narzędzie w web designie, pozwalające na tworzenie płynnych przejść między kolorami bez użycia obrazków. CSS oferuje dwa główne typy gradientów: liniowe (linear-gradient) i radialne (radial-gradient). Gradienty te używane są do tła elementów, tworzenia przycisków i innych efektów wizualnych.

Gradienty liniowe (linear-gradient)

Gradient liniowy tworzy płynne przejście między dwoma lub więcej kolorami wzdłuż określonej linii (osi). Linia może być pozioma, pionowa lub pod dowolnym kątem.

Składnia

    
      background: linear-gradient( direction, color-stop1, color-stop2, ...);
    
  

Wartości

  • direction: kierunek gradientu. Może być określony w stopniach (np. 90deg), za pomocą słów kluczowych (np. to right, to bottom left)
  • color-stop: przystanek kolorystyczny, określający kolor i jego pozycję w gradiencie

Przykłady użycia

Gradient poziomy:

CSS
    
      .linear-gradient-horizontal {
        width: 200px;
        height: 200px;
        background: linear-gradient(to right, red, yellow);
      }
    
  
HTML
    
      <body>
        <div class="linear-gradient-horizontal">Gradient poziomy</div>
      </body>
    
  

Gradient pionowy:

CSS
    
      .linear-gradient-vertical {
        width: 200px;
        height: 200px;
        background: linear-gradient(to bottom, blue, green);
      }
    
  
HTML
    
      <body>
        <div class="linear-gradient-vertical">Gradient pionowy</div>
      </body>
    
  

Gradient diagonalny:

CSS
    
      .linear-gradient-diagonal {
        width: 200px;
        height: 200px;
        background: linear-gradient(45deg, purple, pink);
      }
    
  
HTML
    
      <body>
        <div class="linear-gradient-diagonal">Gradient diagonalny</div>
      </body>
    
  

Gradient wielokolorowy:

CSS
    
      .linear-gradient-multi {
        width: 200px;
        height: 200px;
        background: linear-gradient(to right, red, yellow, green, blue);
      }
    
  
HTML
    
      <body>
        <div class="linear-gradient-multi">Gradient wielokolorowy</div>
      </body>
    
  

Wyjaśnienie kodu:

  • to right: gradient biegnie z lewej do prawej
  • to bottom: gradient biegnie z góry na dół
  • 45deg: gradient biegnie pod kątem 45 stopni
  • red, yellow, green, blue: kilka przystanków kolorystycznych do stworzenia gradientu wielokolorowego

5.2 Gradienty radialne

radial-gradient tworzy płynne przejście między kolorami, wychodzące z centrum i rozprzestrzeniające się do krawędzi okręgu lub elipsy. Gradienty radialne mogą tworzyć interesujące efekty wizualne, takie jak imitacja trójwymiarowości.

Składnia:

    
      background: radial-gradient( direction, color-stop1, color-stop2, ...);
    
  

Wartości:

  • shape: kształt gradientu, może być circle (koło) lub ellipse (elipsa) (wartość domyślna)
  • size: rozmiar gradientu, może być closest-side, closest-corner, farthest-side, farthest-corner
  • position: pozycja centrum gradientu, może być określona w procentach, pikselach lub za pomocą słów kluczowych (np. center, top left)
  • color-stop: przystanek kolorystyczny, określający kolor i jego pozycję w gradiencie

Przykłady użycia

Gradient okrągły:

CSS
    
      .radial-gradient-circle {
        width: 200px;
        height: 200px;
        background: radial-gradient(circle, red, yellow);
      }
    
  
HTML
    
      <body>
        <div class="radial-gradient-circle">Gradient okrągły</div>
      </body>
    
  

Gradient eliptyczny:

CSS
    
      .radial-gradient-ellipse {
        width: 200px;
        height: 200px;
        background: radial-gradient(ellipse, blue, green);
      }
    
  
HTML
    
      <body>
        <div class="radial-gradient-ellipse">Gradient eliptyczny</div>
      </body>
    
  

Gradient z centrum:

CSS
    
      .radial-gradient-at-center {
        width: 200px;
        height: 200px;
        background: radial-gradient(circle at center, purple, pink);
      }
    
  
HTML
    
      <body>
        <div class="radial-gradient-at-center">Gradient z centrum</div>
      </body>
    
  

Gradient z rogu:

CSS
    
      .radial-gradient-at-corner {
        width: 200px;
        height: 200px;
        background: radial-gradient(circle at top left, red, blue, green);
      }
    
  
HTML
    
      <body>
        <div class="radial-gradient-at-corner">Gradient z rogu</div>
      </body>
    
  

Wyjaśnienie kodu:

  • circle: tworzy gradient okrągły
  • ellipse: tworzy gradient eliptyczny
  • at center: gradient zaczyna się z centrum
  • at top left: gradient zaczyna się z górnego lewego rogu
  • red, blue, green: kilka przystanków kolorystycznych do stworzenia gradientu wielokolorowego

5.3 Dodatkowe ustawienia gradientów

Powtarzające się gradienty

1. Powtarzające się gradienty liniowe (repeating-linear-gradient)

Powtarzające się gradienty liniowe tworzą powtarzający się wzór z gradientem liniowym.

CSS
    
      background: repeating-linear-gradient(45deg, red, yellow 10%, green 20%);
    
  

2. Powtarzające się gradienty radialne (repeating-radial-gradient)

CSS
    
      background: repeating-radial-gradient(circle, red, yellow 10%, green 20%);
    
  

3. Przezroczyste przystanki kolorystyczne

Przystanki kolorystyczne mogą zawierać przezroczystość, umożliwiając tworzenie bardziej złożonych efektów wizualnych.

CSS
    
      background: linear-gradient(to right, rgba(255, 0, 0, 0.5), rgba(0, 0, 255, 0.5));
    
  

4. Wspólne użycie kilku gradientów

Można użyć kilku gradientów do tworzenia skomplikowanych tł.

CSS
    
      background: linear-gradient(to right, red, yellow), radial-gradient(circle, blue, green);
    
  
1
Zadanie
Frontend SELF PL, poziom 18, lekcja 5
Niedostępne
Gradient liniowy
Gradient liniowy
1
Zadanie
Frontend SELF PL, poziom 18, lekcja 5
Niedostępne
Gradient radialny
Gradient radialny
Komentarze
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION