Gambaran Keseluruhan Reka Bentuk Responsif dalam CSS

Gambaran Keseluruhan Reka Bentuk Responsif dalam CSS

Artikel ini menerangkan gambaran keseluruhan mengenai reka bentuk responsif dalam CSS.

Kami akan memberi gambaran keseluruhan tentang konsep asas reka bentuk responsif dan peranan CSS dalam melaksanakannya.

YouTube Video

HTML untuk Pratonton

css-responsive-overview.html
  1<!DOCTYPE html>
  2<html lang="en">
  3<head>
  4    <meta charset="UTF-8">
  5    <meta name="viewport" content="width=device-width, initial-scale=1.0">
  6    <title>CSS Properties Example</title>
  7    <link rel="stylesheet" href="css-base.css">
  8    <link rel="stylesheet" href="css-responsive-overview.css">
  9</head>
 10<body>
 11    <!-- Header -->
 12    <header>
 13        <h1>CSS Properties For Responsive Design</h1>
 14    </header>
 15
 16    <!-- Main content -->
 17    <main>
 18        <header>
 19            <h2>Responsive Design Related Properties</h2>
 20        </header>
 21        <article>
 22            <h3>Media Queries</h3>
 23            <section>
 24                <header><h4>CSS</h4></header>
 25<pre class="sample">
 26/* When the screen width is 600px or less */
 27@media (max-width: 600px) {
 28  body {
 29    background-color: lightblue;
 30  }
 31}
 32/* When the screen width is between 601px and 1200px */
 33@media (min-width: 601px) and (max-width: 1200px) {
 34  body {
 35    background-color: lightgreen;
 36  }
 37}
 38/* When the screen width is 1201px or more */
 39@media (min-width: 1201px) {
 40  body {
 41    background-color: lightyellow;
 42  }
 43}
 44</pre>
 45            </section>
 46        </article>
 47        <article>
 48            <h3>Fluid Layouts</h3>
 49            <section>
 50                <header><h4>CSS</h4></header>
 51<pre class="sample">
 52.container {
 53  width: 80%; /* 80% width relative to the parent element */
 54  margin: 0 auto; /* Center the element */
 55}
 56</pre>
 57            </section>
 58        </article>
 59        <article>
 60            <h3>Responsive Images</h3>
 61            <section>
 62                <header><h4>CSS</h4></header>
 63<pre class="sample">
 64img {
 65  max-width: 100%;
 66  height: auto;
 67}
 68</pre>
 69            </section>
 70        </article>
 71        <article>
 72            <h3>Viewport</h3>
 73            <section>
 74                <header><h4>HTML</h4></header>
 75                <pre>&lt;meta name="viewport" content="width=device-width, initial-scale=1.0"&gt;</pre>
 76            </section>
 77        </article>
 78        <article>
 79            <h3>CSS Frameworks</h3>
 80            <section>
 81                <header><h4>HTML</h4></header>
 82<pre>
 83&lt;div class="container"&gt;
 84  &lt;div class="row"&gt;
 85    &lt;div class="col-md-6"&gt;Left content&lt;/div&gt;
 86    &lt;div class="col-md-6"&gt;Right content&lt;/div&gt;
 87  &lt;/div&gt;
 88&lt;/div&gt;
 89</pre>
 90            </section>
 91        </article>
 92        <article>
 93            <h3>Flexbox &amp; Grid Layout</h3>
 94            <section>
 95                <header><h4>CSS</h4></header>
 96<pre class="sample">
 97/* Flex Example */
 98.container {
 99  display: flex;
100  flex-wrap: wrap; /* Allow elements to wrap */
101}
102
103.item {
104  flex: 1 1 200px; /* Each item has a minimum width of 200px */
105}
106
107/* Grid Example */
108.container {
109  display: grid;
110  grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
111  gap: 16px;
112}
113</pre>
114            </section>
115        </article>
116    </main>
117</body>
118</html>

Gambaran Keseluruhan Reka Bentuk Responsif dalam CSS

Dalam CSS, reka bentuk responsif adalah teknik untuk memaparkan tataletak dan kandungan laman web secara sesuai pada pelbagai peranti dan saiz skrin, seperti telefon pintar, tablet, dan komputer meja. Untuk mencapai reka bentuk responsif, terutamanya teknik dan kaedah berikut digunakan.

Pertanyaan Media

 1/* When the screen width is 600px or less */
 2@media (max-width: 600px) {
 3  body {
 4    background-color: lightblue;
 5  }
 6}
 7/* When the screen width is between 601px and 1200px */
 8@media (min-width: 601px) and (max-width: 1200px) {
 9  body {
10    background-color: lightgreen;
11  }
12}
13/* When the screen width is 1201px or more */
14@media (min-width: 1201px) {
15  body {
16    background-color: lightyellow;
17  }
18}

Pertanyaan media adalah ciri yang membolehkan anda menerapkan peraturan CSS yang berbeza berdasarkan lebar peranti, ketinggian, resolusi, dan lain-lain. Ini membolehkan gaya berbeza diterapkan bergantung pada saiz skrin.

Dalam contoh ini, warna latar belakang berubah mengikut lebar skrin.

Tataletak Fleksibel

1.container {
2  width: 80%; /* 80% width relative to the parent element */
3  margin: 0 auto; /* Center the element */
4}

Dalam reka bentuk responsif, lebar dan ketinggian elemen ditentukan menggunakan unit relatif seperti peratusan atau em dan bukannya nilai piksel mutlak. Ini membolehkan tataletak berubah secara fleksibel mengikut saiz skrin.

Imej Responsif

1img {
2  max-width: 100%;
3  height: auto;
4}

Imej juga disetkan untuk diskalakan mengikut saiz skrin. Sebagai contoh, menggunakan max-width boleh melaraskan imej supaya tidak melebihi lebar elemen induknya.

Tetapan Pandangan

1<meta name="viewport" content="width=device-width, initial-scale=1.0">

Gunakan tag <meta> dalam HTML untuk memastikan pelayar mentafsir lebar skrin peranti dengan betul. Tanpa ini, reka bentuk responsif tidak akan berfungsi dengan betul, terutamanya pada peranti mudah alih.

Penggunaan Rangka Kerja CSS

Rangka kerja CSS seperti Bootstrap dan Tailwind CSS sering digunakan untuk mencapai reka bentuk responsif secara berkesan. Rangka kerja ini direka untuk mencipta tataletak responsif dengan mudah menggunakan kelas yang telah ditakrifkan.

Contoh: Sistem Grid Bootstrap

1<div class="container">
2  <div class="row">
3    <div class="col-md-6">Left content</div>
4    <div class="col-md-6">Right content</div>
5  </div>
6</div>

Dalam contoh di atas, apabila lebar skrin adalah md (sederhana, biasanya 768px atau lebih), dua lajur disusun secara bersebelahan, tetapi pada skrin yang lebih kecil, ia disusun secara menegak.

Flexbox dan Susun Atur Grid

 1/* Flex Example */
 2.container {
 3  display: flex;
 4  flex-wrap: wrap; /* Allow elements to wrap */
 5}
 6
 7.item {
 8  flex: 1 1 200px; /* Each item has a minimum width of 200px */
 9}
10
11/* Grid Example */
12.container {
13  display: grid;
14  grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
15  gap: 16px;
16}

Menggunakan CSS flexbox atau grid membolehkan penyesuaian susun atur yang fleksibel. Teknik susun atur ini sangat sesuai untuk reka bentuk responsif kerana ia memudahkan penyesuaian susun atur secara automatik mengikut saiz skrin.

Ringkasan

Reka bentuk responsif adalah kaedah penting untuk memastikan pengguna dapat melihat laman web dengan selesa tanpa mengira peranti yang mereka gunakan. Dengan menggabungkan pertanyaan media, susun atur fleksibel, rangka kerja, dan teknologi susun atur baru seperti Flexbox dan Grid, adalah mungkin untuk mencipta halaman web yang lebih fleksibel dan adaptif.

Anda boleh mengikuti artikel di atas menggunakan Visual Studio Code di saluran YouTube kami. Sila lihat juga saluran YouTube kami.

YouTube Video