CodeGym /Kurs Javy /Frontend SELF PL /Manipulacje z kolorami

Manipulacje z kolorami

Frontend SELF PL
Poziom 32 , Lekcja 3
Dostępny

9.1 Łączenie funkcji kolorów

Web design wymaga głębszego zrozumienia i zastosowania funkcji kolorów do tworzenia złożonych, ale harmonijnych i adaptacyjnych interfejsów. Zobaczymy bardziej skomplikowane manipulacje kolorami w CSS, używając funkcji rgba(), hsla(), hsl() i rgb().

Przykład 1: Tworzenie półprzezroczystego gradientu

Do tworzenia złożonych gradientów można łączyć kilka funkcji kolorów.

W tym przykładzie używany jest liniowy gradient, który łączy półprzezroczyste kolory, nadane za pomocą rgba() i hsla():

HTML
    
      <div class="gradient"></div>
    
  
CSS
    
      .gradient {
        min-height: 200px;
        background: linear-gradient(
          to right,
          rgba(255, 0, 0, 0.8),
          hsla(240, 100%, 50%, 0.7),
          rgba(0, 255, 0, 0.6)
        );
      }
    
  

Przykład 2: Gradient z przejściem przez kilka kolorów

Tutaj używany jest liniowy gradient pod kątem 45 stopni, który płynnie przechodzi przez pięć kolorów, każdy z nich nadany różnymi funkcjami kolorów:

HTML
    
      <div class="gradient"></div>
    
  
CSS
    
      .gradient {
        min-height: 200px;
        background: linear-gradient(
          45deg,
          hsl(0, 100%, 50%) 0%,
          rgb(255, 255, 0) 25%,
          hsla(240, 100%, 50%, 0.7) 50%,
          rgba(0, 255, 0, 0.6) 75%,
          rgb(0, 255, 255) 100%
        );
      }
    
  

9.2 Tworzenie złożonych cieni i półprzezroczystych efektów

Przykład 3: Cienie z użyciem rgba()

W tym przykładzie tworzony jest złożony cień, który używa półprzezroczystych kolorów, aby stworzyć efekt objętości i światła:

HTML
    
      <div class="shadow"></div>
    
  
CSS
    
      .shadow {
        min-height: 155px;
        box-shadow: 10px 10px 20px rgba(0, 0, 0, 0.5),
                    -10px -10px 20px rgba(255, 255, 255, 0.2);
      }
    
  

Przykład 4: Półprzezroczyste granice i tła

Półprzezroczyste granice i tła mogą być stworzone za pomocą rgba() i hsla(), co pozwala na stworzenie wielowarstwowych i teksturowanych efektów:

HTML
    
      <div class="border-background"></div>
    
  
CSS
    
      .border-background {
        min-height: 200px;
        border: 2px solid rgba(0, 0, 0, 0.5);
        background-color: hsla(120, 100%, 50%, 0.3);
      }
    
  

9.3 Animacja i przejścia z użyciem funkcji kolorów

Przykład 5: Animacja tła z użyciem hsl()

W tym przykładzie używana jest animacja, która płynnie zmienia kolor tła przez różne odcienie z wykorzystaniem hsl():

HTML
    
      <div class="animated-background"></div>
    
  
CSS
    
      @keyframes color-change {
        0% {
          background-color: hsl(0, 100%, 50%);
        }
        50% {
          background-color: hsl(120, 100%, 50%);
        }
        100% {
          background-color: hsl(240, 100%, 50%);
        }
      }

      .animated-background {
        min-height: 200px;
        animation: color-change 5s infinite;
      }
    
  

Przykład 6: Przejścia kolorów tekstu

Tutaj tekst płynnie zmienia kolor i przejrzystość podczas najechania kursorem, używając rgba() oraz właściwości transition:

HTML
    
      <div class="text-transition">Some text</div>
    
  
CSS
    
      .text-transition {
        min-height: 100px;
        color: rgba(255, 0, 0, 1);
        transition: color 2s;
      }

      .text-transition:hover {
        color: rgba(0, 0, 255, 0.5);
      }
    
  

9.4 Użycie zmiennych CSS

Zobaczmy przykłady użycia zmiennych CSS z funkcjami kolorów.

Przykład 7: Zmienne i funkcje kolorów

Użycie zmiennych CSS z funkcjami kolorów pozwala centralnie zarządzać kolorami i tworzyć złożone, ale łatwo zarządzalne style:

HTML
    
      <div class="advanced"></div>
    
  
CSS
    
      :root {
        --primary-color: rgba(255, 0, 0, 0.8);
        --secondary-color: hsl(240, 100%, 50%);
        --border-color: rgba(0, 0, 0, 0.5);
      }

      .advanced {
        min-height: 200px;
        background: linear-gradient(
          to right,
          var(--primary-color),
          var(--secondary-color)
        );
        border: 2px solid var(--border-color);
      }
    
  

Przykład 8: Połączenie kilku gradientów

W tym przykładzie dwa liniowe gradienty nakładają się na siebie, tworząc złożony wielowarstwowy efekt:

HTML
    
      <div class="multi-gradient"></div>
    
  
CSS
    
      .multi-gradient {
        min-height: 200px;
        background: linear-gradient(to right, rgba(255, 0, 0, 0.5), rgba(0, 255, 0, 0.5)),
        linear-gradient(to bottom, hsla(240, 100%, 50%, 0.5), hsla(60, 100%, 50%, 0.5));
      }
    
  
Komentarze
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION