Praktikum: Bootstrap 5

Bootstrap adalah sebuah framework CSS yang dibuat untuk mengembangkan website dengan desain yang responsif. Versi Bootstrap saat ini 5.3.8. Prasyarat: Pemahaman dasar HTML & CSS

Bootstrap : https://getbootstrap.com/arrow-up-right

Dokumentasi : https://getbootstrap.com/docs/5.3/getting-started/introduction/arrow-up-right


🎯 Tujuan Pembelajaran

Setelah menyelesaikan praktikum ini, mahasiswa mampu:

  1. Memahami dan menerapkan Grid System Bootstrap 5

  2. Menggunakan class-class Image pada Bootstrap 5

  3. Membangun Responsive Web Design yang optimal di Desktop, Tablet, dan HP


🚀 Persiapan: Setup Proyek Bootstrap 5

Langkah 1 — Buat File HTML

Buat file index.html baru dengan struktur dasar berikut:

<!doctype html>
<html lang="id">
  <head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <title>Praktikum Bootstrap 5</title>
    <!-- Bootstrap CSS -->
    <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.8/dist/css/bootstrap.min.css" 
          rel="stylesheet" 
          integrity="sha384-sRIl4kxILFvY47J16cr9ZwB07vP4J8+LH7qKQnuqkuIAvNWLzeN8tE5YBujZqJLB" 
          crossorigin="anonymous">
  </head>
  <body>

    <h1>Hello, Bootstrap!</h1>

    <!-- Bootstrap JS Bundle -->
    <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.8/dist/js/bootstrap.bundle.min.js" 
            integrity="sha384-FKyoEForCGlyvwx9Hj09JcYn3nv7wiPVlz7YYwJrWVcXK/BmnVDxM+D2scQbITxI" 
            crossorigin="anonymous"></script>
  </body>
</html>
circle-exclamation

Langkah 2 — Buka di Browser

Buka file index.html di browser. Jika teks "Hello, Bootstrap!" tampil dengan font yang berbeda dari default browser, berarti Bootstrap berhasil dimuat.


📐 Bagian 1: Grid System

Konsep Dasar

Bootstrap menggunakan sistem grid 12 kolom. Setiap baris dibungkus dalam class .row, dan kolom ditentukan dengan class .col-*.

Struktur wajib:

Langkah 3 — Grid Equal Width

Tambahkan kode berikut di dalam <body>:

circle-info

Class .col tanpa angka akan membagi lebar secara otomatis dan sama rata.

Langkah 4 — Grid Dengan Angka

Gunakan angka setelah col- untuk menentukan proporsi lebar. Total harus = 12.

Langkah 5 — Grid Responsive (Breakpoints)

Ini adalah fitur paling penting dari grid Bootstrap. Kita bisa menentukan lebar kolom berbeda untuk setiap ukuran layar.

Tabel Breakpoints:

Class
Ukuran Layar
Contoh Device

.col-

< 576px

HP Portrait

.col-sm-

≥ 576px

HP Landscape

.col-md-

≥ 768px

Tablet

.col-lg-

≥ 992px

Desktop

.col-xl-

≥ 1200px

Desktop Besar

.col-xxl-

≥ 1400px

Layar Sangat Besar

Tampilan di Desktop
Tampilan di Tablet
Tampilan di HP

Penjelasan perilakunya:

Ukuran Layar
Layout
Visualisasi

🖥️ Desktop (≥992px)

4 kolom sejajar

[1] [2] [3] [4]

📟 Tablet (≥768px)

2 kolom per baris

[1] [2] lalu [3] [4]

📱 HP (<768px)

1 kolom (full width)

[1] lalu [2] lalu [3] lalu [4]

Langkah 6 — Nesting Grid

Grid bisa ditempatkan di dalam grid lain.

Nesting Grid

Langkah 7 — Offset (Menggeser Kolom)

Gunakan .offset-md-* untuk menggeser kolom ke kanan.

Menggeser Kolom ke Kanan


🖼️ Bagian 2: Image

Langkah 8 — Responsive Image

Class .img-fluid membuat gambar otomatis menyesuaikan lebar container-nya.

Gambar otomatis menyesuaikan lebar kolom
circle-check

Langkah 9 — Image Thumbnail

Class .img-thumbnail menambahkan border dan padding pada gambar.

Menambahkan border dan padding pada gambar

Langkah 10 — Rounded & Circle Image

Ringkasan class image:

Class
Fungsi

.img-fluid

Gambar responsif (max-width 100%)

.img-thumbnail

Tambah border + padding

.rounded

Sudut membulat

.rounded-circle

Bentuk lingkaran

Langkah 11 — Figure (Gambar + Caption)

Ada caption pada gambar

Kombinasi Grid + Image untuk membuat galeri yang responsif.

Tampilan gambar di Desktop
Tampilan gambar di Tablet
Tampilan gambar di HP

📱 Bagian 3: Responsive Web Design

Konsep Mobile First

Bootstrap menggunakan pendekatan Mobile First — artinya:

  • Desain dimulai dari layar terkecil (HP)

  • Lalu ditambahkan aturan untuk layar yang lebih besar

circle-exclamation

Langkah 13 — Display Utility (Show/Hide per Device)

Gunakan class d-none dan d-{breakpoint}-block untuk mengontrol elemen mana yang tampil di device tertentu.

Tampilan di Desktop
Tampilan di Tablet
Tampilan di HP

Penjelasan logika:

Element
Class
HP
Tablet
Desktop

Merah

d-block d-md-none

✅ Tampil

❌ Hidden

❌ Hidden

Kuning

d-none d-md-block d-lg-none

❌ Hidden

✅ Tampil

❌ Hidden

Hijau

d-none d-lg-block

❌ Hidden

❌ Hidden

✅ Tampil

Langkah 14 — Responsive Text Alignment

Tampilan di HP
Tampilan di Tablet
Tampilan di Desktop

Langkah 15 — Responsive Navbar

Navbar Bootstrap otomatis berubah menjadi hamburger menu di layar kecil.

Tampilan di HP
Tampilan di Desktop
circle-info

navbar-expand-lg berarti navbar akan collapse (jadi hamburger) di layar kurang dari 992px.

Langkah 16 — Jenis Container

Class
Perilaku

.container

Lebar fixed, berubah tiap breakpoint

.container-fluid

Selalu full width (100%)

.container-{breakpoint}

Full width sampai breakpoint tertentu


🏆 Bagian 4: Latihan Akhir — Portfolio Card Responsif

Gabungkan semua konsep (Grid + Image + Responsive) untuk membangun layout portfolio card.

Langkah 17 — Buat Portfolio Card

Tampilan di Desktop
Tampilan di Tablet
Tampilan di HP

Perilaku responsive card:

Device
Class Aktif
Layout

📱 HP (< 576px)

col-12

1 card per baris

📱 HP Landscape (≥ 576px)

col-sm-6

2 card per baris

🖥️ Desktop (≥ 992px)

col-lg-4

3 card per baris


📝 Rangkuman

Grid System

  • Sistem 12 kolom: .container.row.col-*

  • Equal width: .col (otomatis sama rata)

  • Fixed width: .col-{angka} (total = 12)

  • Responsive: .col-{breakpoint}-{angka}

Image

  • .img-fluid — Gambar responsif

  • .img-thumbnail — Gambar dengan border

  • .rounded / .rounded-circle — Sudut membulat / lingkaran

  • <figure> + .figure-img + .figure-caption

Responsive Web Design

  • Mobile First — Desain dari layar kecil ke besar

  • Breakpoints: sm (576px), md (768px), lg (992px), xl (1200px), xxl (1400px)

  • Display: d-none, d-{bp}-block untuk show/hide

  • Container: .container (fixed) vs .container-fluid (full width)


📚 Referensi


Tugas: Buatlah halaman portfolio pribadi yang responsif menggunakan semua konsep di atas (Grid, Image, dan Responsive). Halaman harus tampil optimal di Desktop, Tablet, dan HP.

Last updated