CodeGym /Kursy Java /Frontend SELF PL /Wykorzystanie przejść

Wykorzystanie przejść

Frontend SELF PL
Poziom 23 , Lekcja 4
Dostępny

5.1 Zmiana koloru

CSS przejścia (transitions) pozwalają animować zmiany właściwości elementów, tworząc płynne efekty wizualne. Teraz przyjrzymy się, jak używać przejść do zmiany koloru, rozmiaru i pozycji elementów, a także przedstawimy praktyczne przykłady.

Zmiana koloru elementu za pomocą CSS przejść jest jednym z najczęstszych zastosowań. Może to obejmować zmianę koloru tekstu, tła lub granic elementu.

Przykład 1: Zmiana koloru tła

Ten przykład pokazuje zmianę koloru tła elementu przy najechaniu kursorem:

HTML
    
      <!DOCTYPE html>
      <html lang="en">
        <head>
          <meta charset="UTF-8">
          <meta name="viewport" content="width=device-width, initial-scale=1.0">
          <title>Zmiana koloru tła</title>
          <style>
            .box {
              width: 100px;
              height: 100px;
              background-color: #3498db;
              transition: background-color 1s ease;
            }

            .box:hover {
              background-color: #2ecc71;
            }
          </style>
        </head>
        <body>
          <div class="box"></div>
        </body>
      </html>
    
  

Wyjaśnienie kodu:

  • .box: element o ustalonych wymiarach i kolorze tła
  • .box:hover: przy najechaniu kursorem na element, kolor tła płynnie zmienia się z niebieskiego na zielony w 1 sekundę z funkcją timing ease

Przykład 2: Zmiana koloru tekstu

Ten przykład pokazuje zmianę koloru tekstu elementu przy najechaniu kursorem:

HTML
    
      <!DOCTYPE html>
      <html lang="en">
        <head>
          <meta charset="UTF-8">
          <meta name="viewport" content="width=device-width, initial-scale=1.0">
          <title>Zmiana koloru tekstu</title>
          <style>
            .text {
              font-size: 24px;
              color: #e74c3c;
              transition: color 0.5s linear;
            }

            .text:hover {
              color: #8e44ad;
            }
          </style>
        </head>
        <body>
          <div class="text">Najechać na mnie!</div>
        </body>
      </html>
    
  

Wyjaśnienie kodu:

  • .text: element z początkowym kolorem tekstu
  • .text:hover: przy najechaniu kursorem kolor tekstu płynnie zmienia się z czerwonego na fioletowy w 0.5 sekundy z liniową funkcją timing

5.2 Zmiana rozmiaru

Zmiana rozmiaru elementów za pomocą CSS przejść może obejmować zmianę szerokości, wysokości lub obu wymiarów jednocześnie.

Przykład 1: Zmiana szerokości

Ten przykład pokazuje zmianę szerokości elementu przy najechaniu kursorem:

HTML
    
      <!DOCTYPE html>
      <html lang="en">
        <head>
          <meta charset="UTF-8">
          <meta name="viewport" content="width=device-width, initial-scale=1.0">
          <title>Zmiana szerokości</title>
          <style>
            .box {
              width: 100px;
              height: 100px;
              background-color: #f39c12;
              transition: width 2s ease-in-out;
            }

            .box:hover {
              width: 200px;
            }
          </style>
        </head>
        <body>
          <div class="box"></div>
        </body>
      </html>
    
  

Wyjaśnienie kodu:

  • .box: element o początkowej szerokości 100 pikseli
  • .box:hover: przy najechaniu kursorem szerokość elementu płynnie zwiększa się do 200 pikseli w 2 sekundy z funkcją timing ease-in-out

Przykład 2: Zmiana wysokości

Ten przykład pokazuje zmianę wysokości elementu przy najechaniu kursorem:

HTML
    
      <!DOCTYPE html>
      <html lang="en">
        <head>
          <meta charset="UTF-8">
          <meta name="viewport" content="width=device-width, initial-scale=1.0">
          <title>Zmiana wysokości</title>
          <style>
            .container {
              height: 200px;
            }
            .box {
              width: 100px;
              height: 100px;
              background-color: #1abc9c;
              transition: height 1.5s ease;
            }

            .box:hover {
              height: 200px;
            }
          </style>
        </head>
        <body>
          <div class="container">
            <div class="box"></div>
          </div>
        </body>
      </html>
    
  

Wyjaśnienie kodu:

  • .box: element o początkowej wysokości 100 pikseli
  • .box:hover: przy najechaniu kursorem wysokość elementu płynnie zwiększa się do 200 pikseli w 1.5 sekundy z funkcją timing ease

5.3 Zmiana pozycji

Zmiana pozycji elementów za pomocą CSS przejść może obejmować przemieszczanie elementu za pomocą właściwości top, right, bottom, left lub transformacji translate.

Przykład 1: Przemieszczanie za pomocą left

Ten przykład pokazuje przemieszczanie elementu w prawo przy najechaniu kursorem za pomocą właściwości left:

HTML
    
      <!DOCTYPE html>
      <html lang="en">
        <head>
          <meta charset="UTF-8">
          <meta name="viewport" content="width=device-width, initial-scale=1.0">
          <title>Przemieszczanie elementu</title>
          <style>
            .box {
              position: relative;
              width: 100px;
              height: 100px;
              background-color: #e74c3c;
              transition: left 2s;
              left: 0;
            }

            .box:hover {
              left: 100px;
            }
          </style>
        </head>
        <body>
          <div class="box"></div>
        </body>
      </html>
    
  

Wyjaśnienie kodu:

  • .box: element o początkowej pozycji left: 0
  • .box:hover: przy najechaniu kursorem element płynnie przemieszcza się w prawo o 100 pikseli w 2 sekundy

Przykład 2: Przemieszczanie za pomocą transform: translate

Ten przykład pokazuje przemieszczanie elementu w prawo i w dół przy najechaniu kursorem za pomocą transformacji translate:

HTML
    
      <!DOCTYPE html>
      <html lang="en">
        <head>
          <meta charset="UTF-8">
          <meta name="viewport" content="width=device-width, initial-scale=1.0">
          <title>Przemieszczanie z transform: translate</title>
          <style>
            .container {
              height: 150px;
            }
            .box {
              width: 100px;
              height: 100px;
              background-color: #3498db;
              transition: transform 1s;
              transform: translate(0, 0);
            }

            .box:hover {
              transform: translate(100px, 50px);
            }
          </style>
        </head>
        <body>
          <div class="container">
            <div class="box"></div>
          </div>
        </body>
      </html>
    
  

Wyjaśnienie kodu:

  • .box: element z początkową transformacją translate(0, 0)
  • .box:hover: przy najechaniu kursorem element płynnie przemieszcza się o 100 pikseli w prawo i 50 pikseli w dół w 1 sekundę
1
Опрос
Transformacje,  23 уровень,  4 лекция
недоступен
Transformacje
Transformacje
Komentarze
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION