Gambar Responsif di Web
Tujuan:
Supaya gambar bisa menyesuaikan ukuran layar pengguna (misalnya layar HP, tablet, atau laptop), tanpa merusak tampilan atau memakan banyak data.
1. Menggunakan Properti width
Jika kamu atur lebar (width
) gambar ke persentase (misal 100%
) dan tingginya (height
) ke auto
, maka gambar akan otomatis mengecil atau membesar mengikuti ukuran lebar elemen induknya.
Contoh:
img {
width: 100%;
height: auto;
}
berikut hasilnya:
Catatan: Cara ini bisa membuat gambar membesar melebihi ukuran aslinya. Ini bisa membuat gambar jadi pecah atau buram.
2. Menggunakan max-width
Untuk mencegah gambar membesar lebih dari ukuran aslinya, lebih baik pakai max-width: 100%
. Gambar hanya akan mengecil jika perlu, tapi tidak akan membesar melebihi aslinya.
Contoh:
img {
max-width: 100%;
height: auto;
}
berikut hasilnya:
3. Gambar Latar (Background Image) Responsif
Cara 1: background-size: contain
Gambar akan dikecilkan atau dibesarkan supaya muat sepenuhnya di dalam elemen, tanpa mengubah rasio lebar dan tingginya.
div {
width: 100%;
height: 400px;
background-image: url('img_flowers.jpg');
background-repeat: no-repeat;
background-size: contain;
}
berikut hasilnya:
Cara 2: background-size: 100% 100%
Gambar akan mengisi seluruh area elemen, tapi bisa jadi gambarnya terlihat gepeng atau melebar, karena tidak menjaga rasio aslinya.
div {
background-size: 100% 100%;
}
berikut hasilnya:
Cara 3: background-size: cover
Gambar akan menutupi seluruh elemen dan tetap menjaga rasio, tapi ada kemungkinan sebagian gambar terpotong.
div {
background-size: cover;
}
berikut hasilnya:
4. Gambar Berbeda untuk Perangkat Berbeda (Media Query)
Misalnya kamu ingin menampilkan gambar kecil untuk HP, dan gambar besar untuk layar besar:
/* Untuk layar kecil (kurang dari 400px) */
body {
background-image: url('img_smallflower.jpg');
}
/* Untuk layar besar (400px ke atas) */
@media only screen and (min-width: 400px) {
body {
background-image: url('img_flowers.jpg');
}
}
berikut hasilnya:
Bisa juga pakai min-device-width
kalau kamu ingin berdasarkan ukuran perangkat, bukan ukuran jendela browser.
5. Tag HTML <picture>
untuk Gambar Responsif
Dengan tag <picture>
, kamu bisa menentukan beberapa gambar dan browser akan memilih gambar yang paling cocok tergantung ukuran layar.
Contoh:
<picture>
<source srcset="img_smallflower.jpg" media="(max-width: 400px)">
<source srcset="img_flowers.jpg">
<img src="img_flowers.jpg" alt="Flowers">
</picture>
berikut hasilnya:
Artinya:
Kalau lebar layar kurang dari 400px, tampilkan img_smallflower.jpg
Kalau lebih besar, tampilkan img_flowers.jpg
<img>
terakhir adalah cadangan jika browser tidak mendukung <picture>
Artikel Lainnya Dengan Kategori Terkait :
1. 1 Menit Langsung Paham GAP Property CSS
8. Beberapa Cara Untuk Memusatkan Item Menggunakan CSS
9. Beberapa Contoh Gaya Powerfull Snippet
10. Beberapa Variasi Style CSS Button
11. Belajar CSS #01 | Apa Itu CSS?
12. Belajar CSS #02 | Inline CSS
13. Belajar CSS #03 | Internal CSS
14. Belajar CSS #04 | External CSS
15. Belajar CSS #05 | Syntax CSS
16. Belajar CSS #06 | Belajar lebih banyak cara menggunakan CSS Selector
17. Belajar CSS #07 | Pseudo-class
18. Belajar CSS #08 | Definisi Box Model
19. Belajar CSS #09 | Perhitungan Ukuran Lebar dan Tinggi Box Model
20. Belajar CSS #10 | box-sizing: border-box
21. Belajar CSS #11 | Display block
22. Belajar CSS #12 | Belajar display-inline
23. Belajar CSS #13 | Belajar Display Inline Block
24. Belajar CSS #14 | Position-static
25. Belajar CSS #15 | Position-relative
26. Belajar CSS #16 | position absolute
27. Belajar CSS #17 | position fixed
28. Belajar CSS #18 | Position Sticky
29. Belajar CSS #19 | Web Responsif - Viewport
30. Belajar CSS #20 | Menggunakan presentase untuk menentukan nilai lebar
31. Belajar CSS #21 | Properti Max width 100%
32. Belajar CSS #22 | Satuan "VW" Viewport Width
33. Belajar CSS #23 | Media query
34. Belajar CSS #24 | Belajar display-inline
35. Belajar CSS #25 | Display-none
36. Belajar CSS #26 | Macam Macam Background CSS
37. Belajar CSS #27 | Macam-Macam Borders CSS
38. Belajar CSS #28 | Macam-Macam Margins CSS
39. Belajar CSS #29 | CSS Padding: Panduan Singkat
40. Belajar CSS #30 | CSS Height, Width, dan Max-width
41. Belajar CSS #31 | Memahami CSS Box Model
42. Belajar CSS #32 | Macam Macam CSS Outline Part1
43. Belajar CSS #33 | Macam Macam CSS Outline Part 2
44. Belajar CSS #34 | Macam Macam CSS Text Part 1
45. Belajar CSS #35 | Macam Macam CSS Text Part 2
46. Belajar CSS #36 | Macam Macam CSS Fonts Part 1
47. Belajar CSS #37 | Macam Macam CSS Fonts Part 2
48. Belajar CSS #38 | Macam Macam CSS Fonts Part 3
49. Belajar CSS #39 | Icons di CSS
50. Belajar CSS #40 | Link di CSS
51. Belajar CSS #41 | CSS Lists (Daftar dalam CSS)
52. Belajar CSS #42 | Macam Macam CSS Table Part 1
53. Belajar CSS #43 | Macam Macam CSS Table Part 2
54. Belajar CSS #44 | CSS Layout - Properti display
55. Belajar CSS #45 | CSS Layout - width and max-width
56. Belajar CSS #46 | Memahami Properti position dalam CSS
57. Belajar CSS #47 | Apa itu z-index?
58. Belajar CSS #48 | Overflow dalam CSS
59. Belajar CSS #49 | CSS Float dan Clear
60. Belajar CSS #50 | CSS Align
61. Belajar CSS #51 | CSS Combinators
62. Belajar CSS #52 | CSS Pseudo-classes
63. Belajar CSS #53 | CSS Pseudo-elements
64. Belajar CSS #54 | CSS Opacity
65. Belajar CSS #55 | CSS Navigation Bar Part 1
66. Belajar CSS #56 | CSS Navigation Bar Part 2
67. Belajar CSS #57 | CSS Dropdowns
68. Belajar CSS #58 | CSS Image Gallery
69. Belajar CSS #59 | CSS Image Sprites
70. Belajar CSS #60 | CSS Attribute Selectors
71. Belajar CSS #61 | CSS Forms
72. Belajar CSS #62 | CSS Counters
73. Belajar CSS #63 | CSS Website Layout
74. Belajar CSS #64 | CSS Units
75. Belajar CSS #65 | CSS Specificity
76. Belajar CSS #66 | important dalam CSS
77. Belajar CSS #67 | CSS Math Functions
78. Belajar CSS #68 | CSS Border Images
79. Belajar CSS #69 | CSS Multiple Backgrounds
80. Belajar CSS #70 | CSS Colors
81. Belajar CSS #71 | CSS Color Keywords
82. Belajar CSS #72 | CSS Gradients Part 1
83. Belajar CSS #73 | CSS Gradients Part 2
84. Belajar CSS #74 | CSS Gradients Part 3
85. Belajar CSS #75 | CSS Shadow Part 1
86. Belajar CSS #76 | CSS Shadow Part 2
87. Belajar CSS #77 | CSS Text Effects
88. Belajar CSS #78 | CSS Web Fonts
89. Belajar CSS #79 | CSS 2D Transforms
90. Belajar CSS #80 | CSS 3D Transforms
91. Belajar CSS #81 | CSS Transitions
92. Belajar CSS #82 | CSS Animations
93. Belajar CSS #83 | CSS Tooltip
94. Belajar CSS #84 | CSS Styling Images
95. Belajar CSS #85 | CSS Centering Images
96. Belajar CSS #86 | CSS Image Filter
97. Belajar CSS #87 | CSS Image Shapes
98. Belajar CSS #88 | CSS object-fit
99. Belajar CSS #89 | CSS object-position
100. Belajar CSS #90 | CSS Buttons
101. Belajar CSS #91 | CSS Pagination
102. Belajar CSS #92 | CSS Multiple Columns
103. Belajar CSS #93 | CSS User Interface
104. Belajar CSS #94 | CSS Variables Part 1
105. Belajar CSS #95 | CSS Variables Part 2
106. Belajar CSS #96 | CSS Variables Part 3
107. Belajar CSS #97 | CSS @property
108. Belajar CSS #98 | CSS Box Sizing
109. Belajar CSS #99 | CSS Media Queries
110. Belajar CSS Lanjutan #100 | CSS Media Queries - Examples Part 1
111. Belajar CSS Lanjutan #101 | CSS Media Queries - Examples Part 2
112. Belajar CSS Lanjutan #102 | CSS Flexbox
113. Belajar CSS Lanjutan #103 | CSS Flex Container Part 1
114. Belajar CSS Lanjutan #104 | CSS Flex Container Part 2
115. Belajar CSS Lanjutan #105 | CSS Flex Container Part 3
116. Belajar CSS Lanjutan #106 | CSS Flex Container Part 4
117. Belajar CSS Lanjutan #107 | CSS Flex Items
118. Belajar CSS Lanjutan #108 | CSS Responsive Flexbox
119. Belajar CSS Lanjutan #109 | CSS Grid Layout Module
120. Belajar CSS Lanjutan #110 | CSS Grid Columns Part 1
121. Belajar CSS Lanjutan #111 | CSS Grid Columns Part 2
122. Belajar CSS Lanjutan #112 | CSS Grid Container Part 1
123. Belajar CSS Lanjutan #113 | CSS Grid Container Part 2
124. Belajar CSS Lanjutan #114 | CSS Grid Container Part 3
125. Belajar CSS Lanjutan #115 | CSS Grid Item Part 1
126. Belajar CSS Lanjutan #116 | CSS Grid Item Part 2
127. Belajar CSS Lanjutan #117 | CSS Grid Item Part 3
128. Belajar CSS Lanjutan #118 | Responsive Web Design - Pengenalan
129. Belajar CSS Lanjutan #119 | Responsive Web Design - The Viewport
130. Belajar CSS Lanjutan #120 | Responsive Web Design - Building a Grid View
131. Belajar CSS Lanjutan #121 | Responsive Web Design - Media Queries
132. Belajar CSS Lanjutan #122 | Responsive Web Design - Images
133. Belajar CSS Lanjutan #123 | Responsive Web Design - Frameworks
134. Belajar CSS Lanjutan #124 | Sass Tutorial
135. Belajar CSS Lanjutan #125 | Sass Introduction
136. Belajar CSS Lanjutan #126 | Sass Installation
137. Belajar CSS Lanjutan #127 | Sass Variables
138. Belajar CSS Lanjutan #128 | Sass Nested Rules dan Properties
139. Belajar CSS Lanjutan #129 | Sass @import and Partials
140. Belajar CSS Lanjutan #130 | Sass @mixin and @include
141. Belajar CSS Lanjutan #131 | Sass @extend and Inheritance
142. Belajar CSS Lanjutan #132 | Sass String Functions
143. Belajar CSS Lanjutan #133 | Sass Numeric Functions
144. Belajar CSS Lanjutan #134 | Sass List Functions
145. Belajar CSS Lanjutan #135 | Sass Map Functions
146. Belajar CSS Lanjutan #136 | Sass Selector Functions
147. Belajar CSS Lanjutan #137 | Sass Introspection Functions
148. Belajar CSS Lanjutan #138 | CSS Online Editor
149. Belajar CSS Lanjutan #139 | Sass Color Functions
150. Belajar CSS Lanjutan #140 | CSS Syllabus
151. Belajar CSS Lanjutan #141 | Rencana Belajar CSS
152. Belajar CSS Lanjutan #142 | CSS Interview Preparation
153. Belajar CSS Lanjutan #143 | CSS Selector Reference
154. Belajar CSS Lanjutan #144 | CSS Combinators Reference
155. Belajar CSS Lanjutan #145 | CSS Pseudo-classes Reference
156. Belajar CSS Lanjutan #146 | CSS Pseudo-elements Reference
157. Belajar CSS Lanjutan #147 | CSS At-rules Reference
158. Belajar CSS Lanjutan #148 | CSS Functions Reference
159. Belajar CSS Lanjutan #149 | CSS Aural Reference
160. Belajar CSS Lanjutan #150 | CSS Web Safe Fonts
161. Belajar CSS Lanjutan #151 | CSS Fallback Fonts
162. Belajar CSS Lanjutan #152 | CSS Animatable
163. Belajar CSS Lanjutan #153 | CSS Units
164. Belajar CSS Lanjutan #154 | CSS Legal Color Values
165. Belajar CSS Lanjutan #155 | CSS accent-color Property
166. Belajar CSS Lanjutan #156 | CSS align-content Property
167. Belajar CSS Lanjutan #157 | CSS align-items Property
168. Belajar CSS Lanjutan #158 | CSS align-self Property
169. Belajar CSS Lanjutan #159 | CSS all Property
170. Belajar CSS Lanjutan #160 | CSS animation Property
171. Belajar CSS Lanjutan #161 | CSS animation-delay Property
172. Belajar CSS Lanjutan #162 | CSS animation-direction Property
173. Belajar CSS Lanjutan #163 | CSS animation-duration Property
174. Belajar CSS Lanjutan #164 | CSS animation-fill-mode Property
175. Belajar CSS Lanjutan #165 | CSS animation-iteration-count Property
176. Belajar CSS Lanjutan #166 | CSS animation-name Property
177. Belajar CSS Lanjutan #167 | CSS animation-play-state Property
178. Belajar CSS Lanjutan #168 | CSS animation-timing-function Property
179. Belajar CSS Lanjutan #169 | CSS aspect-ratio Property
180. Belajar CSS Lanjutan #170 | CSS backdrop-filter Property
181. Belajar CSS Lanjutan #171 | CSS backface-visibility Property
182. Belajar CSS Lanjutan #172 | CSS background Property
183. Belajar CSS Lanjutan #173 | CSS background-attachment Property
184. Belajar CSS Lanjutan #174 | CSS background-blend-mode Property
185. Belajar CSS Lanjutan #175 | CSS background-clip Property
186. Belajar CSS Lanjutan #176 | CSS background-color Property
187. Belajar CSS Lanjutan #177 | CSS background-image Property
188. Belajar CSS Lanjutan #178 | CSS background-origin Property
189. Belajar CSS Lanjutan #179 | CSS background-position Property
190. Belajar CSS Lanjutan #180 | CSS background-position-x Property
191. Belajar CSS Lanjutan #181 | CSS background-position-y Property
192. Belajar CSS Lanjutan #182 | CSS background-repeat Property
193. Belajar CSS Lanjutan #183 | CSS block-size Property
194. Belajar CSS Lanjutan #184 | CSS background-size Property
195. Belajar CSS Lanjutan #185 | CSS border Property
196. Belajar CSS Lanjutan #186 | CSS border-block Property
197. Belajar CSS Lanjutan #187 | CSS border-block-color Property
198. Belajar CSS Lanjutan #188 | CSS border-block-end Property
199. Belajar CSS Lanjutan #189 | CSS border-block-end-color Property
200. Belajar CSS Lanjutan #190 | CSS border-block-end-style Property
201. Belajar CSS Lanjutan #191 | CSS border-block-end-width Property
202. Belajar CSS Lanjutan #192 | CSS border-block-start Property
203. Belajar CSS Lanjutan #193 | CSS border-block-start-color Property
204. Belajar CSS Lanjutan #194 | CSS border-block-start-style Property
205. Belajar CSS Lanjutan #195 | CSS border-block-start-width Property
206. Belajar CSS Lanjutan #196 | CSS border-block-style Property
207. Belajar CSS Lanjutan #197 | CSS border-block-width Property
208. Belajar CSS Lanjutan #198 | CSS border-bottom Property
209. Belajar CSS Lanjutan #199 | CSS border-bottom-color Property
210. Belajar CSS Lanjutan #200 | CSS border-bottom-left-radius Property
211. Belajar Membuat Fitur Interaktif Efek Flipping Card Menggunakan CSS
212. Belajar Mengenal Neon Text Pada CSS
213. Buat Desain Web Responsif CSS
214. Cara Membuat Badges Dengan HTML & CSS
215. Cara Membuat Balon Obrolan dengan CSS
216. Cara Membuat Efek Teks Berisi Gambar Pakai CSS
217. Cara Membuat Pemisah Antar Elemen di CSS
218. Cara Membuat Underline Tabs CSS
219. Cara Mengatur Proporsi Sebuah Teks di CSS
220. Contoh Penggunaan Grid Shorthand Area
225. Explorasi CSS Pulse Loader: Cara Efektif Membuat Animasi Form dengan CSS
228. Gaya Kartu Retro dalam Desain Web dengan CSS
229. Hover Effect Menggunakan CSS
230. How to Make Border Radius in CSS
232. Implementasi Aminasi Label Menggunakan CSSS
233. Implementasi Aspect - ratio CSS
234. Implementasi Jam Analog Sederhana
235. Input HTML Yang Perlu Diketahui
236. Insert Properti dalam CSS: Kunci Mengatur Jarak dalam Elemen HTML
237. Kembangkan Tampilanmu: 10 Trik Keren dengan CSS Filter π
238. Macam-Macam Properti Di CSS
239. Mask Text With Image In CSS
240. Memahami Anatomi CSS: Gaya yang Tepat untuk Elemen HTML
241. Memahami Efek Vignette dalam Desain Grafis dan Implementasinya dalam Kode HTML/CSS
243. Memahami Persingkatan CSS untuk Font: Penggunaan Singkat yang Efisien
244. Memahami Responsivitas Web dengan CSS :hover
245. Membuat Bentuk Organik yang Unik Menggunkan Simple Blob Shape
246. Membuat Button Menggunakan Tag Button
247. Membuat Latar Belakang "Faded" yang Elegan dengan CSS
248. Membuat Layout Yang Responsif Dengan CSS
249. Membuat Tampilan yang lebih Teratur menggunakan Elemen Opgroup dalam Select HTML
250. Membuat Tata Letak Secara Vertikal dan Horizontal dengan CSS Grid
251. Membuat Teks Lebih Menarik dengan CSS: Menggunakan Properti text-decoration
252. Mempelajari Border Pada CSS dan Trik Penulisan Singkat
253. Mempelajari Button Menggunakan Tag Button
254. Mempelajari Filter Blur Pada CSS
255. Mempelajari Penggunaan Margin dalam CSS
256. Mempelajari Selector :active Pada CSS
257. Mempercantik Pengalaman Pengguna dengan Efek Hover Menggunakan Selector CSS :has()
258. Mengatasi Teks Panjang dengan Efek Elipsis Long Text
259. Mengenal 3 Trik Pemusatan div
260. Mengenal CSS Clip-Path: Memotong Elemen dengan Berbagai Bentuk
261. Mengenal CSS Shapes: Membuat Bentuk-Bentuk Kreatif di Halaman Web
262. Mengenal Efek Kaca Glassmorphism Pada CSS
263. Mengenal Flex Wrap Pada CSS
264. Mengenal Flexbox - Flex Direction CSS
265. Mengenal Macam-macam Border Pada CSS
266. Mengenal Nilai Selector :nth-child() dalam CSS
267. Mengenal Properti CSS accent-color dan Penggunaannya
268. Mengenal Sematik Pada HTML
269. Menggunakan :is() untuk Menyederhanakan Selektor yang Rumit dalam CSS
270. Menggunakan Pseudo-Class :is() untuk Menjadikan Tombol Lebih Interaktif
271. Mengoptimalkan Tampilan Halaman Web dengan Media Query Orientation
272. Perbedaan Antara 'box-shadow' dan 'drop-shadow' dalam CSS untuk Efek Bayanganπ
273. Perbedaan Antara content-box dan border-box dalam CSS:
274. Perbedaan Box Shadow vs Drop Shadow
275. Properti Justify-Content dalam CSS Flexbox
276. Pseudo-Class :has() dalam CSS
279. Sebuah Trik Script Singkat Menggunakan CSS
282. Syntax Baru Rentang Media Query pada CSS
284. Tampilan Modern dan Fungsional: Memahami Keunggulan Blur Sticky Navbar dalam Desain Situs Web
285. Tips Dasar CSS Yang Perlu Diketahui
286. Tips untuk Menggunakan Border Radius dalam Desain π
Mahardika Oktadiansyah - 15 Mei 2025
Belajar CSS Lanjutan #200 | CSS border-bottom-left-radius Property
Mahardika Oktadiansyah - 15 Mei 2025
Belajar CSS Lanjutan #199 | CSS border-bottom-color Property
Mahardika Oktadiansyah - 15 Mei 2025
Belajar CSS Lanjutan #198 | CSS border-bottom Property