Tren Terkini dalam HTML
Artikel ini menjelaskan tren terkini dalam HTML.
Ini menjelaskan tag yang relatif baru ditambahkan pada HTML5.
YouTube Video
Tren Terkini dalam HTML
Tag <template>
Hello, this is a reusable template!
1<template id="myTemplate">
2 <div>
3 <p>Hello, this is a reusable template!</p>
4 </div>
5</template>
6<button onclick="useTemplate()">Use Template</button>
7<div id="container"></div>
8<script>
9 function useTemplate() {
10 const template = document.getElementById('myTemplate');
11 const clone = template.content.cloneNode(true);
12 document.getElementById('container').appendChild(clone);
13 }
14</script>
-
Tag
<template>
digunakan untuk mendefinisikan fragmen HTML yang dapat digunakan ulang dan tetap tersembunyi sampai diaktifkan melalui JavaScript. -
Dengan menggunakan tag
<template>
, Anda dapat secara dinamis membuat komponen UI yang dapat digunakan kembali, seperti kartu atau item daftar. Ini juga membantu mengurangi duplikasi kode dan meningkatkan pemeliharaan dalam aplikasi skala besar. -
Dalam contoh ini, mengklik tombol 'Gunakan Template' akan menampilkan konten dari tag
<template>
.
Tag <slot>
Header Content
Footer Content
1<template id="myElementTemplate">
2 <slot name="header">Default Header</slot>
3 <main>Default Content</main>
4 <slot name="footer">Default Footer</slot>
5</template>
6<my-element>
7 <p slot="header">Header Content</p>
8 <p slot="footer">Footer Content</p>
9</my-element>
10<script>
11 class MyElement extends HTMLElement {
12 constructor() {
13 super();
14 const shadow = this.attachShadow({ mode: 'open' });
15 shadow.innerHTML = document.getElementById('myElementTemplate').cloneNode(true).innerHTML;
16 }
17 }
18 customElements.define('my-element', MyElement);
19</script>
- Tag
<slot>
berfungsi sebagai placeholder dalam komponen web untuk menampilkan konten yang diteruskan dari elemen induk.- Jika tidak ada konten yang disediakan untuk slot, maka konten cadangan (konten default yang ditulis langsung di dalam tag
<slot>
) akan ditampilkan.
- Jika tidak ada konten yang disediakan untuk slot, maka konten cadangan (konten default yang ditulis langsung di dalam tag
- Dalam contoh ini, slot bernama (
header
danfooter
) didefinisikan di dalam elemen<template>
. <my-element>
adalah elemen HTML kustom yang didefinisikan oleh pengguna. Atributslot
pada tag<p>
di dalam elemen ini menentukan nama slot dan konten yang akan dimasukkan ke dalam slot.
Tag <dialog>
1<dialog id="exampleDialog">
2 <p>This is a dialog box.</p>
3 <button id="closeButton">Close</button>
4</dialog>
5
6<button id="openButton">Open Dialog</button>
7
8<script>
9 const dialog = document.getElementById('exampleDialog');
10 const openButton = document.getElementById('openButton');
11 const closeButton = document.getElementById('closeButton');
12
13 openButton.addEventListener('click', () => dialog.showModal());
14 closeButton.addEventListener('click', () => dialog.close());
15</script>
-
Tag
<dialog>
digunakan untuk mendefinisikan jendela interaktif seperti modal atau pop-up. Anda dapat mengontrol pembukaan dan penutupan menggunakan JavaScript. -
Dalam contoh ini, mengklik tombol 'Buka Dialog' akan menampilkan dialog.
Atribut inputmode
dari tag <input>
1<label for="phone">Phone Number:</label>
2<input type="text" id="phone" inputmode="tel" placeholder="Enter your phone number">
- Atribut
inputmode
dari tag<input>
menentukan jenis keyboard virtual yang ditampilkan pada perangkat sentuh, meningkatkan pengalaman pengguna. Misalnya,inputmode="tel"
menampilkan keyboard numerik untuk masukan nomor telepon. - Atribut
inputmode
hanya untuk menyesuaikan tampilan keyboard virtual dan tidak memvalidasi konten masukan. Untuk menerapkan pembatasan masukan, Anda perlu menggunakan atributtype
atau validasi JavaScript. - Karena tidak semua peramban dan perangkat sepenuhnya mendukung ini, sebaiknya siapkan cadangan yang sesuai.
- Atribut
inputmode
dapat memiliki nilai-nilai berikut. Setiap nilai digunakan untuk menampilkan jenis masukan atau keyboard virtual tertentu.
Nilai | Deskripsi |
---|---|
none |
none menyembunyikan keyboard virtual. |
text |
text menampilkan keyboard virtual masukan teks standar. |
tel |
tel menampilkan keyboard numerik untuk masukan nomor telepon. |
url |
url menampilkan keyboard virtual untuk masukan URL. |
email |
email menampilkan keyboard virtual untuk masukan alamat email. |
numeric |
numeric menampilkan keyboard virtual hanya untuk masukan numerik. |
decimal |
decimal menampilkan keyboard virtual untuk masukan angka. |
search |
search menampilkan keyboard virtual untuk masukan pencarian. |
Atribut theme-color
dari tag <meta>
1<meta name="theme-color" content="#4CAF50">
2<meta name="theme-color" content="#ffffff" media="(prefers-color-scheme: light)">
3<meta name="theme-color" content="#000000" media="(prefers-color-scheme: dark)">
- Atribut
theme-color
dari tag<meta>
digunakan untuk menyesuaikan warna bilah alamat dan antarmuka di browser seluler yang kompatibel. - Sebagai contoh, itu dapat beralih antara mode gelap dan mode terang dengan menggunakan atribut
media
.
Tag dan atribut ini adalah kemajuan dari HTML5 dan telah menjadi elemen penting dalam pengembangan web modern. Disarankan untuk memeriksa dukungan dan kompatibilitas browser tertentu saat menggunakannya.
Anda dapat mengikuti artikel di atas menggunakan Visual Studio Code di saluran YouTube kami. Silakan periksa juga saluran YouTube kami.