Blogger Jateng

Desain Web Responsif dengan CSS dan JavaScript

Dengan munculnya dunia digital dan pengguna yang membuka situs web di berbagai perangkat, desain web yang responsif telah menjadi bagian yang tak terelakkan dari pengembangan web. Desain responsif memastikan bahwa format, gambar, dan konten situs dapat tampil dengan mudah di berbagai ukuran dan arah perangkat, mulai dari komputer hingga ponsel. Pada artikel ini, kita akan membahas konsep dasar desain web responsif dan melakukan tinjauan umum tentang CSS dan JavaScript yang dapat digunakan untuk membangun beberapa elemen responsif ke dalam tata letak Anda.

Mengapa Desain Web Responsif Itu Penting

Berkembangnya smartphone dan tablet berarti banyak lalu lintas web sekarang berasal dari perangkat seluler. Sering kali situs web yang kurang responsif, yang terlihat terdistorsi dan atau sulit dinavigasi melalui tampilan yang lebih kecil akan memberikan pengalaman yang buruk bagi pelanggan Anda. Solusi untuk masalah ini adalah desain web responsif yang menawarkan pembuatan situs web yang beradaptasi secara otomatis dengan ukuran layar yang berbeda, memastikan bahwa semua konten asli dapat diakses, terbaca, dan dapat digunakan di semua perangkat.

Manfaat dari situs web responsif:

  • Pengalaman Pengguna yang Lebih Baik: Situs yang menyesuaikan diri dengan layar yang berbeda akan memberikan pengalaman yang lebih baik bagi setiap pengguna.
  • Lebih Responsif: Pengguna cenderung lebih responsif terhadap situs yang memiliki navigasi yang lancar di perangkat apa pun.
  • Keuntungan SEO: Situs web yang responsif terhadap perangkat seluler biasanya memiliki peringkat yang lebih baik di mesin pencari seperti Google.
  • Ekonomis: Satu situs responsif lebih ekonomis dalam hal pemeliharaan daripada beberapa versi yang dibuat untuk setiap jenis perangkat.

Sumber: webhozz.com

Dasar-dasar Desain Responsif

Faktanya, desain responsif dimungkinkan melalui berbagai teknik dan alat bantu, banyak di antaranya dibangun langsung ke dalam CSS dan JavaScript:

Kisi-kisi Fluid: Mirip dengan tata letak kisi yang fleksibel, teknik ini mendefinisikan lebar menggunakan persentase, bukan piksel, sehingga elemen-elemennya akan menyesuaikan diri dengan lebar layar yang berubah-ubah.

Gambar Fluid: Gambar disesuaikan secara otomatis agar sesuai dengan wadahnya, yaitu tinggi dan lebarnya tetap responsif sehingga tidak merusak tata letak atau meluap.

Kueri Media: Kueri media CSS memungkinkan untuk menerapkan gaya yang berbeda tergantung pada beberapa karakteristik perangkat seperti ukuran layar atau resolusi.

Sekarang, mari kita lihat bagaimana cara menerapkan teknik-teknik ini dengan bantuan CSS dan Javascript.

Desain Web Responsif CSS

Sebenarnya CSS sendiri merupakan cara yang bagus untuk menerapkan tata letak responsif. Anda dapat melakukan ini dengan banyak metode, tetapi dua yang menjadi fokus utama adalah kueri media dan tata letak flexbox/grid.

Kueri Media

Queri Media CSS memungkinkan Anda untuk menerapkan berbagai aturan penataan sesuai dengan ukuran layar atau properti lain dari perangkat. Ini adalah salah satu metode yang paling umum untuk menetapkan gaya responsif. Berikut ini sebuah contoh:

/* Base styles */

body {

    font-family: Arial, sans-serif;

    padding: 20px;

}


.container {

    display: flex;

    flex-wrap: wrap;

}


/* Style for larger screens */

@media (min-width: 768px) {

    .container {

        justify-content: space-between;

    }


    .box {

        flex: 1 1 48%;

        margin: 10px;

    }

}


/* Style for smaller screens */

@media (max-width: 767px) {

    .container {

        flex-direction: column;

    }


    .box {

        flex: 1 1 100%;

        margin: 5px 0;

    }

}

Dalam kasus ini, tata letak responsif terhadap berbagai lebar layar. Pada layar yang lebih besar,. Pada layar besar, elemen kotak ditampilkan bersebelahan, dan pada perangkat berukuran sedang - dalam baris.

Kotak fleksibel dan kisi CSS

Dengan CSS Flexbox dan Grid, kita dapat membuat desain responsif yang kompleks dengan mudah. Tata letak berbasis Flexbox adalah pilihan yang tepat ketika beberapa ruang untuk berkembang diinginkan dalam tata letak berdasarkan wadah, sementara Grid menawarkan fleksibilitas untuk tata letak dua dimensi yang memungkinkan kontrol yang lebih besar pada baris dan kolom.

.container {

    display: flex;

    flex-wrap: wrap;

}


.box {

    flex: 1 1 auto;

    padding: 20px;

    background-color: lightblue;

    margin: 10px;

}

Dengan Flexbox, .container akan menyesuaikan posisi elemen .box tergantung pada ruang yang tersedia. Untuk tata letak yang lebih kompleks, CSS Grid dapat digunakan untuk menentukan struktur baris dan kolom yang merespons perubahan layar.

Menggunakan JavaScript untuk meningkatkan daya tanggap

CSS melakukan sebagian besar pekerjaan berat, tetapi JavaScript juga dapat membantu. Sebagai contoh, JavaScript dapat mengetahui kapan layar berubah menjadi mode lanskap atau potret dan bahkan menambah atau menghapus elemen dengan cepat serta memuat konten yang berbeda.

// Example: Detect screen width and adjust content

window.addEventListener("resize", function() {

    if (window.innerWidth < 600) {

        document.body.style.backgroundColor = "lightyellow";

    } else {

        document.body.style.backgroundColor = "white";

    }

});

Anda dapat melihat contoh skrip yang mengubah warna latar belakang sesuai dengan perubahan lebar layar. Ini memberi kita petunjuk visual tentang bagaimana desain responsif bekerja di figma.

Dengan JS, Anda dapat melakukan lazy load gambar yang berarti bahwa hanya gambar yang diperlukan yang dimuat berdasarkan ukuran layar, yang meningkatkan kinerja.

Kesimpulan

Desain web responsif telah mengubah cara pengembang membangun situs web, sehingga memberikan pengalaman yang sangat baik terlepas dari jenis perangkat. Dengan tata letak CSS yang fleksibel, kueri media, dan teknik flexbox/grid yang menggunakan CSS membantu para pengembang untuk membuat tata letak yang dapat disesuaikan dengan mulus. JavaScript menambahkan lapisan keserbagunaan di atasnya, memfasilitasi konten yang dirender secara dinamis dan interaktivitas. CSS dan JavaScript bersama-sama membantu para pengembang membuat situs yang cepat, mudah diakses, dan indah, apa pun perangkat yang digunakan pengguna untuk berinteraksi dengan konten dari mana saja.

Kembali ke>> Desain Web Responsif: Panduan Langkah-demi-Langkah