Penjelasan Sederhana Tentang @extend
di Sass
Apa itu @extend
?
@extend
adalah fitur di Sass (preprocessor CSS) yang memungkinkan kita menggunakan kembali aturan CSS dari satu selector ke selector lainnya.
Kapan kita pakai @extend
?
Kalau kamu punya beberapa elemen (misalnya tombol) yang tampilannya hampir sama, kamu bisa menggunakan @extend
supaya tidak perlu menulis ulang semua properti CSS-nya satu per satu.
Contoh Kasus:
Misalnya kamu punya tombol-tombol seperti ini:
Tombol standar
Tombol "Report"
Tombol "Submit"
Ketiganya punya gaya (style) dasar yang sama: tidak ada border, ukuran font tertentu, padding, dan seterusnya.
Alih-alih menuliskan gaya itu ulang di masing-masing tombol, kamu bisa buat satu kelas dasar .button-basic
, lalu yang lainnya tinggal "menyambung" ke kelas itu pakai @extend
.
Contoh Kodenya:
.button-basic {
border: none;
padding: 15px 30px;
text-align: center;
font-size: 16px;
cursor: pointer;
}
.button-report {
@extend .button-basic;
background-color: red;
}
.button-submit {
@extend .button-basic;
background-color: green;
color: white;
}
Di atas:
.button-report
dan .button-submit
me-warisi semua properti dari .button-basic
.
Tapi mereka juga punya gaya tambahan sendiri, seperti warna background dan teks.
Hasil Akhir di CSS:
Ketika kode SCSS di-compile jadi CSS biasa, hasilnya seperti ini:
.button-basic, .button-report, .button-submit {
border: none;
padding: 15px 30px;
text-align: center;
font-size: 16px;
cursor: pointer;
}
.button-report {
background-color: red;
}
.button-submit {
background-color: green;
color: white;
}
Terlihat bahwa semua tombol memakai gaya dasar yang sama, tapi masing-masing punya perbedaan warna.
Ringkasan:
@extend
= cara cepat untuk berbagi style antar selector.
Menghemat waktu dan menjaga kode CSS tetap rapi.
Cocok saat ada banyak elemen dengan gaya yang hampir sama.
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 Membuat Fitur Interaktif Efek Flipping Card Menggunakan CSS
146. Belajar Mengenal Neon Text Pada CSS
147. Buat Desain Web Responsif CSS
148. Cara Membuat Badges Dengan HTML & CSS
149. Cara Membuat Balon Obrolan dengan CSS
150. Cara Membuat Efek Teks Berisi Gambar Pakai CSS
151. Cara Membuat Pemisah Antar Elemen di CSS
152. Cara Membuat Underline Tabs CSS
153. Cara Mengatur Proporsi Sebuah Teks di CSS
154. Contoh Penggunaan Grid Shorthand Area
159. Explorasi CSS Pulse Loader: Cara Efektif Membuat Animasi Form dengan CSS
162. Gaya Kartu Retro dalam Desain Web dengan CSS
163. Hover Effect Menggunakan CSS
164. How to Make Border Radius in CSS
166. Implementasi Aminasi Label Menggunakan CSSS
167. Implementasi Aspect - ratio CSS
168. Implementasi Jam Analog Sederhana
169. Input HTML Yang Perlu Diketahui
170. Insert Properti dalam CSS: Kunci Mengatur Jarak dalam Elemen HTML
171. Kembangkan Tampilanmu: 10 Trik Keren dengan CSS Filter 😎
172. Macam-Macam Properti Di CSS
173. Mask Text With Image In CSS
174. Memahami Anatomi CSS: Gaya yang Tepat untuk Elemen HTML
175. Memahami Efek Vignette dalam Desain Grafis dan Implementasinya dalam Kode HTML/CSS
177. Memahami Persingkatan CSS untuk Font: Penggunaan Singkat yang Efisien
178. Memahami Responsivitas Web dengan CSS :hover
179. Membuat Bentuk Organik yang Unik Menggunkan Simple Blob Shape
180. Membuat Button Menggunakan Tag Button
181. Membuat Latar Belakang "Faded" yang Elegan dengan CSS
182. Membuat Layout Yang Responsif Dengan CSS
183. Membuat Tampilan yang lebih Teratur menggunakan Elemen Opgroup dalam Select HTML
184. Membuat Tata Letak Secara Vertikal dan Horizontal dengan CSS Grid
185. Membuat Teks Lebih Menarik dengan CSS: Menggunakan Properti text-decoration
186. Mempelajari Border Pada CSS dan Trik Penulisan Singkat
187. Mempelajari Button Menggunakan Tag Button
188. Mempelajari Filter Blur Pada CSS
189. Mempelajari Penggunaan Margin dalam CSS
190. Mempelajari Selector :active Pada CSS
191. Mempercantik Pengalaman Pengguna dengan Efek Hover Menggunakan Selector CSS :has()
192. Mengatasi Teks Panjang dengan Efek Elipsis Long Text
193. Mengenal 3 Trik Pemusatan div
194. Mengenal CSS Clip-Path: Memotong Elemen dengan Berbagai Bentuk
195. Mengenal CSS Shapes: Membuat Bentuk-Bentuk Kreatif di Halaman Web
196. Mengenal Efek Kaca Glassmorphism Pada CSS
197. Mengenal Flex Wrap Pada CSS
198. Mengenal Flexbox - Flex Direction CSS
199. Mengenal Macam-macam Border Pada CSS
200. Mengenal Nilai Selector :nth-child() dalam CSS
201. Mengenal Properti CSS accent-color dan Penggunaannya
202. Mengenal Sematik Pada HTML
203. Menggunakan :is() untuk Menyederhanakan Selektor yang Rumit dalam CSS
204. Menggunakan Pseudo-Class :is() untuk Menjadikan Tombol Lebih Interaktif
205. Mengoptimalkan Tampilan Halaman Web dengan Media Query Orientation
206. Perbedaan Antara 'box-shadow' dan 'drop-shadow' dalam CSS untuk Efek Bayangan🌟
207. Perbedaan Antara content-box dan border-box dalam CSS:
208. Perbedaan Box Shadow vs Drop Shadow
209. Properti Justify-Content dalam CSS Flexbox
210. Pseudo-Class :has() dalam CSS
213. Sebuah Trik Script Singkat Menggunakan CSS
216. Syntax Baru Rentang Media Query pada CSS
218. Tampilan Modern dan Fungsional: Memahami Keunggulan Blur Sticky Navbar dalam Desain Situs Web
219. Tips Dasar CSS Yang Perlu Diketahui
220. Tips untuk Menggunakan Border Radius dalam Desain 🌟