Bagian terakhir mengisi dua blok penutup: section Kontak tempat pembaca menghubungi Dewi, dan footer pemilik halaman. Meski letaknya di ujung bawah, keduanya bukan pelengkap saja — section Kontak memperkenalkan elemen address yang berfungsi khusus, sementara tautan eksternal di dalamnya menghadirkan dua atribut keamanan yang wajib dibiasakan sejak proyek pertama.
Section Kontak dengan address #
Potongan berikut sama persis dengan baris 53–65 pada berkas index.html:
<!-- Bagian: kontak -->
<section id="kontak">
<h2>Kontak</h2>
<p>Undangan menulis, kerja sama editing, dan surat pembaca dapat dikirim melalui
jalur berikut:</p>
<address>
<p>Email: <a href="mailto:[email protected]">[email protected]</a></p>
<ul>
<li><a href="https://example.com/dewi" target="_blank" rel="noopener">Situs pribadi</a></li>
<li><a href="https://example.org/dewilestari" target="_blank" rel="noopener">Profil media sosial</a></li>
</ul>
</address>
</section>Mari kita bedah fungsinya:
<section id="kontak">dan<h2>: blok tematik ketiga di dalammain— judulnya setingkath2seperti section lain, sehingga kerangka halaman tetap seimbang.<p>pengantar: kalimat pembuka yang menjelaskan maksud bagian. Teks pengantar tetap paragraf biasa, bukan bagian daftar.<address>: elemen khusus informasi kontak — di sini kontak untuk seluruh dokumen karenaaddressini berada di bawahbodytanpaarticlepembatas. Browser dan mesin pencari mengenalinya sebagai alat menghubungi pemilik halaman, bukan sekadar blok teks.<a href="mailto:[email protected]">: tautan email. Nilaimailto:membuka aplikasi email pengunjung dengan alamat tujuan sudah terisi — bentuk paling sederhana dari tautan email yang kita bahas pada chapter Link Email dan Telepon.<ul>dua tautan: jalur kontak tambahan di luar email, ditulis sebagai daftar karena sederajat dan bebas urutan.
Tautan Eksternal yang Terbuka di Tab Baru #
Dua tautan pada daftar di atas sama persis dengan baris 61–62 pada berkas index.html:
<li><a href="https://example.com/dewi" target="_blank" rel="noopener">Situs pribadi</a></li>
<li><a href="https://example.org/dewilestari" target="_blank" rel="noopener">Profil media sosial</a></li>Perhatikan dua atribut pendampingnya:
target="_blank": memerintahkan browser membuka tujuan di tab baru. Halaman profil tetap terbuka, sehingga pengunjung yang menelusuri situs pribadi Dewi tidak kehilangan halaman yang sedang dibaca.rel="noopener": memutus akses halaman baru ke halaman pembuka lewat objekwindow.opener. Browser modern sudah menyiratkan perlindungan ini untuk setiaptarget="_blank", tetapi menuliskannya eksplisit tetap dianjurkan — kode jelas maksudnya dan browser lama ikut terlindungi.
Alamat https://example.com/dewi dan https://example.org/dewilestari adalah alamat fiktif pengganti. Saat membangun profil kita sendiri, ganti keduanya dengan alamat sesungguhnya — atributnya tetap sama.
Footer: Hak Cipta #
Penutup halaman menempatkan pemilik dan tahun. Potongan berikut sama persis dengan baris 69–72 pada berkas index.html:
<!-- Bagian: footer -->
<footer>
<p>© <time datetime="2026">2026</time> Dewi Lestari. Seluruh hak cipta terpelihara.</p>
</footer><footer>: penutup dokumen — identitas pemilik, bukan konten utama. Berpasangan denganheaderyang membuka halaman.©: character entity untuk tanda hak cipta (©). Entity dipakai untuk karakter yang tidak ada di papan ketik atau rawan tertukar.<time datetime="2026">2026</time>: tahun halaman terakhir diperbarui, tetap terbungkustimeagar terbaca sebagai data.
Hasil Akhir Proyek #
Muat ulang index.html. Halaman profil kini lengkap dari atas ke bawah: nama dan tagline, biografi dengan foto, dua daftar publikasi, kontak dengan email dan tautan, serta baris hak cipta. Klik alamat email — aplikasi email terbuka; klik salah satu tautan — tab baru terbuka sementara halaman profil tetap ada.
Inilah hasil akhir proyek — coba klik kedua tautan eksternal pada bagian Kontak, keduanya terbuka di tab baru:
Pada demo, berkas assets/foto.svg diganti placeholder SVG dan tautan mailto: biasanya ditahan browser di dalam iframe — unduh berkasnya untuk mencoba tautan email sungguhan.
Proyek selesai: satu berkas, tujuh puluh lima baris, tanpa satu pun elemen yang dipilih karena tampilannya. Langkah berikutnya terserah kebutuhan — mengganti seluruh data fiktif dengan data kita sendiri, menambah favicon, atau menyambungkan berkas CSS pertama.
Ringkasan Bagian 4 #
Section Kontak memakai address sebagai wadah informasi kontak dokumen berisi tautan mailto: dan daftar tautan eksternal, footer menutup halaman dengan hak cipta ber-time, dan setiap target="_blank" selalu ditemani rel="noopener". Halaman profil penulis kini utuh dan valid.