Difference between revisions of "Animasi dan transisi dengan CSS"

From OnnoWiki
Jump to navigation Jump to search
(Created page with "Untuk modul **Animasi dan Transisi dengan CSS** dalam mata kuliah Pemrograman Web, berikut adalah penjelasan mengenai konsep dasar animasi dan transisi dalam CSS, beserta cont...")
 
 
(One intermediate revision by the same user not shown)
Line 1: Line 1:
Untuk modul **Animasi dan Transisi dengan CSS** dalam mata kuliah Pemrograman Web, berikut adalah penjelasan mengenai konsep dasar animasi dan transisi dalam CSS, beserta contoh implementasi menggunakan alat di Ubuntu 24.04 tanpa menggunakan perangkat lunak dari Microsoft.
+
Untuk modul '''Animasi dan Transisi dengan CSS''' dalam mata kuliah Pemrograman Web, berikut adalah penjelasan mengenai konsep dasar animasi dan transisi dalam CSS, beserta contoh implementasi menggunakan alat di Ubuntu 24.04.
  
## 1. Pengenalan Transisi CSS
+
==1. Pengenalan Transisi CSS==
  
**Transisi CSS** memungkinkan perubahan nilai properti CSS secara halus selama periode waktu tertentu, bukan perubahan instan.
+
'''Transisi CSS''' memungkinkan perubahan nilai properti CSS secara halus selama periode waktu tertentu, bukan perubahan instan.
  
### a. Properti Transisi Utama
+
===a. Properti Transisi Utama===
  
- **`transition-property`**: Menentukan properti CSS mana yang akan dianimasikan.
+
* '''`transition-property`''': Menentukan properti CSS mana yang akan dianimasikan.
- **`transition-duration`**: Menentukan berapa lama transisi berlangsung.
+
* '''`transition-duration`''': Menentukan berapa lama transisi berlangsung.
- **`transition-timing-function`**: Menentukan kecepatan transisi selama durasi.
+
* '''`transition-timing-function`''': Menentukan kecepatan transisi selama durasi.
- **`transition-delay`**: Menentukan penundaan sebelum transisi dimulai.
+
* '''`transition-delay`''': Menentukan penundaan sebelum transisi dimulai.
  
### b. Contoh Implementasi Transisi
+
===b. Contoh Implementasi Transisi===
  
**Struktur HTML:**
+
'''Struktur HTML:'''
  
 +
<!DOCTYPE html>
 +
<html lang="id">
 +
<head>
 +
  <meta charset="UTF-8">
 +
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
 +
  <title>Contoh Transisi CSS</title>
 +
  <link rel="stylesheet" href="style.css">
 +
</head>
 +
<body>
 +
  <button class="btn">Hover Saya</button>
 +
</body>
 +
</html>
  
```html
+
'''CSS (style.css):'''
<!DOCTYPE html>
 
<html lang="id">
 
<head>
 
  <meta charset="UTF-8">
 
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
 
  <title>Contoh Transisi CSS</title>
 
  <link rel="stylesheet" href="style.css">
 
</head>
 
<body>
 
  <button class="btn">Hover Saya</button>
 
</body>
 
</html>
 
```
 
 
  
**CSS (style.css):**
+
.btn {
 +
  background-color: #4CAF50;
 +
  color: white;
 +
  padding: 15px 32px;
 +
  text-align: center;
 +
  font-size: 16px;
 +
  margin: 4px 2px;
 +
  border: none;
 +
  cursor: pointer;
 +
  transition: background-color 0.3s ease-in-out;
 +
}
 +
 +
.btn:hover {
 +
  background-color: #45a049;
 +
}
  
 +
'''Penjelasan:'''
  
```css
+
* Ketika kursor diarahkan ke tombol (`.btn`), warna latar belakang berubah secara halus dari hijau ke hijau tua selama 0,3 detik dengan efek percepatan dan perlambatan yang ditentukan oleh `ease-in-out`.
.btn {
 
  background-color: #4CAF50;
 
  color: white;
 
  padding: 15px 32px;
 
  text-align: center;
 
  font-size: 16px;
 
  margin: 4px 2px;
 
  border: none;
 
  cursor: pointer;
 
  transition: background-color 0.3s ease-in-out;
 
}
 
  
.btn:hover {
+
==2. Pengenalan Animasi CSS==
  background-color: #45a049;
 
}
 
```
 
 
  
**Penjelasan:**
+
'''Animasi CSS''' memungkinkan elemen untuk mengubah gaya mereka dalam rentang waktu tertentu dengan menggunakan keyframes.
  
- Ketika kursor diarahkan ke tombol (`.btn`), warna latar belakang berubah secara halus dari hijau ke hijau tua selama 0,3 detik dengan efek percepatan dan perlambatan yang ditentukan oleh `ease-in-out`.
+
===a. Komponen Utama Animasi===
  
## 2. Pengenalan Animasi CSS
+
* '''`@keyframes`''': Menentukan serangkaian langkah dalam animasi.
 +
* '''`animation-name`''': Menentukan nama animasi yang akan diterapkan.
 +
* '''`animation-duration`''': Menentukan durasi animasi.
 +
* '''`animation-timing-function`''': Menentukan kecepatan animasi selama durasi.
 +
* '''`animation-delay`''': Menentukan penundaan sebelum animasi dimulai.
 +
* '''`animation-iteration-count`''': Menentukan berapa kali animasi akan diulang.
 +
* '''`animation-direction`''': Menentukan arah animasi (misalnya, normal, reverse, alternate).
  
**Animasi CSS** memungkinkan elemen untuk mengubah gaya mereka dalam rentang waktu tertentu dengan menggunakan keyframes.
+
===b. Contoh Implementasi Animasi===
  
### a. Komponen Utama Animasi
+
'''Struktur HTML:'''
  
- **`@keyframes`**: Menentukan serangkaian langkah dalam animasi.
+
<!DOCTYPE html>
- **`animation-name`**: Menentukan nama animasi yang akan diterapkan.
+
<html lang="id">
- **`animation-duration`**: Menentukan durasi animasi.
+
<head>
- **`animation-timing-function`**: Menentukan kecepatan animasi selama durasi.
+
  <meta charset="UTF-8">
- **`animation-delay`**: Menentukan penundaan sebelum animasi dimulai.
+
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
- **`animation-iteration-count`**: Menentukan berapa kali animasi akan diulang.
+
  <title>Contoh Animasi CSS</title>
- **`animation-direction`**: Menentukan arah animasi (misalnya, normal, reverse, alternate).
+
  <link rel="stylesheet" href="style.css">
 +
</head>
 +
<body>
 +
  <div class="box"></div>
 +
</body>
 +
</html>
  
### b. Contoh Implementasi Animasi
+
'''CSS (style.css):'''
  
**Struktur HTML:**
+
.box {
 +
  width: 100px;
 +
  height: 100px;
 +
  background-color: #4CAF50;
 +
  position: relative;
 +
  animation-name: move;
 +
  animation-duration: 4s;
 +
  animation-timing-function: ease-in-out;
 +
  animation-iteration-count: infinite;
 +
}
 +
 +
@keyframes move {
 +
  0% {
 +
    left: 0px;
 +
  }
 +
  50% {
 +
    left: 200px;
 +
  }
 +
  100% {
 +
    left: 0px;
 +
  }
 +
}
  
  
```html
+
'''Penjelasan:'''
<!DOCTYPE html>
 
<html lang="id">
 
<head>
 
  <meta charset="UTF-8">
 
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
 
  <title>Contoh Animasi CSS</title>
 
  <link rel="stylesheet" href="style.css">
 
</head>
 
<body>
 
  <div class="box"></div>
 
</body>
 
</html>
 
```
 
 
  
**CSS (style.css):**
+
* Elemen `.box` akan bergerak dari kiri ke kanan sejauh 200px dan kembali ke posisi awal selama 4 detik, diulang tanpa henti.
  
 +
==3. Praktik Menggunakan Alat di Ubuntu 24.04==
  
```css
+
Untuk mempraktikkan contoh di atas di Ubuntu 24.04 tanpa menggunakan perangkat lunak dari Microsoft, Anda dapat menggunakan alat berikut:
.box {
 
  width: 100px;
 
  height: 100px;
 
  background-color: #4CAF50;
 
  position: relative;
 
  animation-name: move;
 
  animation-duration: 4s;
 
  animation-timing-function: ease-in-out;
 
  animation-iteration-count: infinite;
 
}
 
  
@keyframes move {
+
===a. Editor Teks===
  0% {
 
    left: 0px;
 
  }
 
  50% {
 
    left: 200px;
 
  }
 
  100% {
 
    left: 0px;
 
  }
 
}
 
```
 
 
  
**Penjelasan:**
+
* '''Gedit''': Editor teks bawaan GNOME yang sederhana dan mudah digunakan.
  
- Elemen `.box` akan bergerak dari kiri ke kanan sejauh 200px dan kembali ke posisi awal selama 4 detik, diulang tanpa henti.
+
'''Instalasi Gedit:'''
  
## 3. Praktik Menggunakan Alat di Ubuntu 24.04
+
sudo apt update
 +
sudo apt install gedit
  
Untuk mempraktikkan contoh di atas di Ubuntu 24.04 tanpa menggunakan perangkat lunak dari Microsoft, Anda dapat menggunakan alat berikut:
+
'''Menjalankan Gedit:'''
  
### a. Editor Teks
+
gedit
  
- **Gedit**: Editor teks bawaan GNOME yang sederhana dan mudah digunakan.
+
* '''Nano''': Editor teks berbasis terminal yang ringan dan mudah digunakan.
  
  **Instalasi Gedit:**
+
'''Instalasi Nano:'''
  
 
+
sudo apt update
```bash
+
sudo apt install nano
  sudo apt update
 
  sudo apt install gedit
 
  ```
 
 
  
  **Menjalankan Gedit:**
+
'''Menjalankan Nano:'''
  
 +
nano nama_file.html
 
    
 
    
```bash
+
* '''Bluefish''': Editor teks yang ditujukan untuk pemrograman dan pengembangan web.
  gedit
 
  ```
 
 
  
- **Nano**: Editor teks berbasis terminal yang ringan dan mudah digunakan.
+
'''Instalasi Bluefish:'''
  
  **Instalasi Nano:**
+
sudo apt update
 +
sudo apt install bluefish
  
 
+
'''Menjalankan Bluefish:'''
```bash
 
  sudo apt update
 
  sudo apt install nano
 
  ```
 
 
  
  **Menjalankan Nano:**
+
bluefish
  
 
+
===b. Browser Web===
```bash
 
  nano nama_file.html
 
  ```
 
 
  
- **Bluefish**: Editor teks yang ditujukan untuk pemrograman dan pengembangan web.
+
Untuk melihat hasil kode HTML dan CSS Anda, Anda memerlukan browser web. Beberapa opsi yang tersedia:
  
  **Instalasi Bluefish:**
+
* '''Firefox''': Browser default di Ubuntu.
  
 
+
'''Instalasi Firefox:'''
```bash
 
  sudo apt update
 
  sudo apt install bluefish
 
  ```
 
 
  
  **Menjalankan Bluefish:**
+
sudo apt update
 +
sudo apt install firefox
  
 
+
'''Menjalankan Firefox:'''
```bash
 
  bluefish
 
  ```
 
 
  
### b. Browser Web
+
firefox
  
Untuk melihat hasil kode HTML dan CSS Anda, Anda memerlukan browser web. Beberapa opsi yang tersedia:
 
 
- **Firefox**: Browser default di Ubuntu.
 
 
  **Instalasi Firefox:**
 
  
 
+
==Pranala Menarik==
```bash
 
  sudo apt update
 
  sudo apt install firefox
 
  ```
 
 
 
 
  **Menjalankan Firefox:**
 
 
 
 
 
```bash
 
  firefox
 
  ```
 
 
  
- **Chromium**: Versi sumber terbuka dari Google Chrome.
+
* [[Web Programming]]

Latest revision as of 18:34, 6 April 2025

Untuk modul Animasi dan Transisi dengan CSS dalam mata kuliah Pemrograman Web, berikut adalah penjelasan mengenai konsep dasar animasi dan transisi dalam CSS, beserta contoh implementasi menggunakan alat di Ubuntu 24.04.

1. Pengenalan Transisi CSS

Transisi CSS memungkinkan perubahan nilai properti CSS secara halus selama periode waktu tertentu, bukan perubahan instan.

a. Properti Transisi Utama

  • `transition-property`: Menentukan properti CSS mana yang akan dianimasikan.
  • `transition-duration`: Menentukan berapa lama transisi berlangsung.
  • `transition-timing-function`: Menentukan kecepatan transisi selama durasi.
  • `transition-delay`: Menentukan penundaan sebelum transisi dimulai.

b. Contoh Implementasi Transisi

Struktur HTML:

<!DOCTYPE html>
<html lang="id">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Contoh Transisi CSS</title>
  <link rel="stylesheet" href="style.css">
</head>
<body>
  <button class="btn">Hover Saya</button>
</body>
</html>

CSS (style.css):

.btn {
  background-color: #4CAF50;
  color: white;
  padding: 15px 32px;
  text-align: center;
  font-size: 16px;
  margin: 4px 2px;
  border: none;
  cursor: pointer;
  transition: background-color 0.3s ease-in-out;
}

.btn:hover {
  background-color: #45a049;
}

Penjelasan:

  • Ketika kursor diarahkan ke tombol (`.btn`), warna latar belakang berubah secara halus dari hijau ke hijau tua selama 0,3 detik dengan efek percepatan dan perlambatan yang ditentukan oleh `ease-in-out`.

2. Pengenalan Animasi CSS

Animasi CSS memungkinkan elemen untuk mengubah gaya mereka dalam rentang waktu tertentu dengan menggunakan keyframes.

a. Komponen Utama Animasi

  • `@keyframes`: Menentukan serangkaian langkah dalam animasi.
  • `animation-name`: Menentukan nama animasi yang akan diterapkan.
  • `animation-duration`: Menentukan durasi animasi.
  • `animation-timing-function`: Menentukan kecepatan animasi selama durasi.
  • `animation-delay`: Menentukan penundaan sebelum animasi dimulai.
  • `animation-iteration-count`: Menentukan berapa kali animasi akan diulang.
  • `animation-direction`: Menentukan arah animasi (misalnya, normal, reverse, alternate).

b. Contoh Implementasi Animasi

Struktur HTML:

<!DOCTYPE html>
<html lang="id">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Contoh Animasi CSS</title>
  <link rel="stylesheet" href="style.css">
</head>
<body>
</body>
</html>

CSS (style.css):

.box {
  width: 100px;
  height: 100px;
  background-color: #4CAF50;
  position: relative;
  animation-name: move;
  animation-duration: 4s;
  animation-timing-function: ease-in-out;
  animation-iteration-count: infinite;
}

@keyframes move {
  0% {
    left: 0px;
  }
  50% {
    left: 200px;
  }
  100% {
    left: 0px;
  }
}


Penjelasan:

  • Elemen `.box` akan bergerak dari kiri ke kanan sejauh 200px dan kembali ke posisi awal selama 4 detik, diulang tanpa henti.

3. Praktik Menggunakan Alat di Ubuntu 24.04

Untuk mempraktikkan contoh di atas di Ubuntu 24.04 tanpa menggunakan perangkat lunak dari Microsoft, Anda dapat menggunakan alat berikut:

a. Editor Teks

  • Gedit: Editor teks bawaan GNOME yang sederhana dan mudah digunakan.

Instalasi Gedit:

sudo apt update
sudo apt install gedit

Menjalankan Gedit:

gedit
  • Nano: Editor teks berbasis terminal yang ringan dan mudah digunakan.

Instalasi Nano:

sudo apt update
sudo apt install nano

Menjalankan Nano:

nano nama_file.html
 
  • Bluefish: Editor teks yang ditujukan untuk pemrograman dan pengembangan web.

Instalasi Bluefish:

sudo apt update
sudo apt install bluefish

Menjalankan Bluefish:

bluefish

b. Browser Web

Untuk melihat hasil kode HTML dan CSS Anda, Anda memerlukan browser web. Beberapa opsi yang tersedia:

  • Firefox: Browser default di Ubuntu.

Instalasi Firefox:

sudo apt update
sudo apt install firefox

Menjalankan Firefox:

firefox


Pranala Menarik