Belajar Dasar Pemrograman Web

Tools

Dibantu
Dibantu

Halo, selamat datang :)
Kenalin aku Dibantu, bot yang akan membantu kamu mengatasi permasalahan di modul ini.

Lihat forum diskusi

Latihan: Menetapkan Elemen Header, Main, dan Footer di Halaman Profil

Syukurlah! Semakin kaya akan ilmu dari materi ke materi setelah dipelajari sebelumnya. Seperti biasa, kita akan kembali praktik kali ini. Sudah siap? 

Tujuan

Pada latihan ini, kita akan melakukan pengelompokan elemen berdasarkan kontennya. Ada konten yang bersifat sebagai kepala (header), pokok (main), dan kaki (footer). Halaman Profil yang telah kita miliki sebelumnya dapat dikelompokkan menjadi tiga bagian tersebut.

Nah, harapannya, browser akan semakin memahami hal yang sebenarnya ia tampilkan. Ini karena kita memanfaatkan tiga buah elemen, yaitu <header>, <main>, dan <footer>. Bagaimana dengan hasilnya? Mari kita lihat pada latihan ini.

Alur Latihan

Berikut adalah alur latihan kali ini.

  1. Membuka hasil latihan terakhir dengan VSCode.
  2. Membungkus judul halaman beserta deskripsinya dan daftar navigasi dengan elemen header.
  3. Membungkus teks hak cipta dengan elemen footer.
  4. Membungkus konten utama dengan elemen main.
  5. Menjalankan dokumen HTML pada browser.

Latihan Menetapkan Elemen Header, Main, dan Footer di Halaman Profil

Berikut adalah langkah-langkah yang perlu diikuti agar praktik ini berjalan dengan baik.

  1. Silakan buka proyek Halaman Profil terbaru dengan VS Code. Jika belum memilikinya, silakan Anda unduh dan buka proyek tersebut pada GitHub repository ini.
  2. Kita akan membagi konten yang ditampilkan pada halaman web. Tentu saja konten tersebut berada dalam elemen <body>. Pembagian ini terbagi menjadi tiga bagian besar, yaitu heading, main, dan footer.

    Pertama kali, kelompokkanlah konten judul besar dan navigasi menggunakan elemen <header>. Silakan sesuaikan kodenya seperti kode bercetak tebal berikut.

    1. <body>
    2. <header>
    3. <h1>Bandung</h1>
    4. <p>
    5. Kota metropolitan terbesar di Provinsi Jawa Barat, sekaligus menjadi ibu kota provinsi tersebut.
    6. </p>
    7. <ul>
    8. <li><a href="#sejarah">Sejarah</a></li>
    9. <li><a href="#geografis">Geografis</a></li>
    10. <li><a href="#wisata">Wisata</a></li>
    11. </ul>
    12. </header>
    13.  
    14.   <!-- Kode lainnya disembunyikan... -->
    15. </body>

  3. Sebelumnya, kita telah membuat daftar navigasi menggunakan elemen list. Namun, browser tidak mengetahui bahwa elemen list tersebut merupakan navigation list karena ia hanyalah elemen yang menampilkan sebuah daftar barang saja. Oleh karena itu, kita akan memanfaatkan semantic element lainnya yang bernama <nav>. Silakan bungkus elemen list dengan elemen nav menjadi seperti berikut.

    1. <body>
    2.  <header>
    3. <h1>Bandung</h1>
    4. <p>
    5. Kota metropolitan terbesar di Provinsi Jawa Barat, sekaligus menjadi ibu kota provinsi
    6. tersebut.
    7. </p>
    8.  
    9.     <nav>
    10.       <ul>
    11.         <li><a href="#sejarah">Sejarah</a></li>
    12.         <li><a href="#geografis">Geografis</a></li>
    13.         <li><a href="#wisata">Wisata</a></li>
    14.       </ul>
    15.     </nav>
    16. </header>
    17.  
    18. <!-- Kode lainnya disembunyikan... -->
    19. </body>

  4. Sudah selesai mengelompokkan konten kepala dengan elemen header. Kita akan masuk ke bagian konten kaki terlebih dahulu. Pada konten hak cipta (copyright)–biasanya berada di paling akhir dari konten body, pindahkan atau bungkus konten tersebut dalam elemen <footer>. Hasilnya seperti berikut.

    1. <body>
    2.   <!-- Kode lainnya disembunyikan... -->
    3.  
    4.   <footer>
    5.     <p>Belajar Dasar Pemrograman Web &#169; 2019, Dicoding Academy</p>
    6.   </footer>
    7. </body>

  5. Dua konten sudah kita kelompokkan. Terakhir adalah konten pokok atau utama. Elemen apa yang akan kita gunakan untuk mengelompokkan konten tersebut? Tentu saja jawabannya adalah elemen <main>. Silakan bungkus seluruh isi elemen di antara elemen <header> dan <footer> dengan elemen <main>. Hasilnya seperti berikut.

    1. <body>
    2. <header>
    3. <!-- Kode lainnya disembunyikan... -->
    4. </header>
    5.  
    6.   <main>
    7.     <h2 id="sejarah">Sejarah</h2>
    8.     <img src="assets/image/history.jpg" alt="sejarah" />
    9.     <p>
    10.       Kata Bandung berasal dari kata bendung atau bendungan karena terbendungnya sungai Citarum oleh
    11.       lava Gunung Tangkuban Parahu yang lalu membentuk telaga. Legenda yang diceritakan oleh
    12.       orang-orang tua di Bandung mengatakan bahwa nama Bandung diambil dari sebuah kendaraan air
    13.       yang terdiri dari dua perahu yang diikat berdampingan yang disebut perahu bandung yang
    14.       digunakan oleh Bupati Bandung, R.A. Wiranatakusumah II, untuk melayari Ci Tarum dalam mencari
    15.       tempat kedudukan kabupaten yang baru untuk menggantikan ibu kota yang lama di Dayeuhkolot.
    16.     </p>
    17.  
    18.     <p>
    19.       Berdasarkan filosofi Sunda, kata Bandung juga berasal dari kalimat Nga-Bandung-an Banda
    20.       Indung, yang merupakan kalimat sakral dan luhur karena mengandung nilai ajaran Sunda.
    21.       Nga-Bandung-an artinya menyaksikan atau bersaksi. Banda adalah segala sesuatu yang berada di
    22.       alam hidup yaitu di bumi dan atmosfer, baik makhluk hidup maupun benda mati. Sinonim dari
    23.       banda adalah harta. Indung berarti Ibu atau Bumi, disebut juga sebagai Ibu Pertiwi tempat
    24.       Banda berada.
    25.     </p>
    26.  
    27.     <h2 id="geografis">Geografis</h2>
    28.     <img src="assets/image/geografis.jpg" alt="geografis" />
    29.     <p>
    30.       Kota Bandung dikelilingi oleh pegunungan, sehingga bentuk morfologi wilayahnya bagaikan sebuah
    31.       mangkok raksasa,[9] secara geografis kota ini terletak di tengah-tengah provinsi Jawa Barat,
    32.       serta berada pada ketinggian ±768 m di atas permukaan laut, dengan titik tertinggi di berada
    33.       di sebelah utara dengan ketinggian 1.050 meter di atas permukaan laut dan sebelah selatan
    34.       merupakan kawasan rendah dengan ketinggian 675 meter di atas permukaan laut.
    35.     </p>
    36.  
    37.     <p>
    38.       Kota Bandung dialiri dua sungai utama, yaitu Sungai Cikapundung dan Sungai Citarum beserta
    39.       anak-anak sungainya yang pada umumnya mengalir ke arah selatan dan bertemu di Sungai Citarum.
    40.       Dengan kondisi yang demikian, Bandung selatan sangat rentan terhadap masalah banjir terutama
    41.       pada musim hujan.
    42.     </p>
    43.  
    44.     <h2 id="wisata">Wisata</h2>
    45.     <p>
    46.       Sejak dibukanya Jalan Tol Cipularang, kota Bandung telah menjadi tujuan utama dalam menikmati
    47.       liburan akhir pekan terutama dari masyarakat yang berasal dari Jakarta sekitarnya. Selain
    48.       menjadi kota wisata belanja, kota Bandung juga dikenal dengan sejumlah besar bangunan lama
    49.       berarsitektur peninggalan Belanda.
    50.     </p>
    51.  
    52.     <h3>Farm House Lembang</h3>
    53.     <img src="assets/image/farm-house.jpg" alt="farm house" />
    54.     <p>
    55.       Berada di jalur utama Bandung-Lembang, Farm House menjadi objek wisata yang tidak pernah sepi
    56.       pengunjung. Selain karena letaknya strategis, kawasan ini juga menghadirkan nuansa wisata khas
    57.       Eropa. Semua itu diterapkan dalam bentuk spot swafoto Instagramable.
    58.     </p>
    59.  
    60.     <h3>Observatorium Bosscha</h3>
    61.     <img src="assets/image/bosscha.jpg" alt="bosscha" />
    62.     <p>
    63.       Memiliki beberapa teleskop, antara lain, Refraktor Ganda Zeiss, Schmidt Bimasakti, Refraktor
    64.       Bamberg, Cassegrain GOTO, dan Teleskop Surya. Refraktor Ganda Zeiss adalah jenis teleskop
    65.       terbesar untuk meneropong bintang. Benda ini diletakkan pada atap kubah sehingga saat teropong
    66.       digunakan, atap tersebut harus dibuka. Observatorium Bosscha boleh dikunjungi oleh siapapun,
    67.       tanpa tiket. Namun, bagi yang ingin menggunakan teleskop Zeiss, wajib mendaftarkan diri. Untuk
    68.       instansi atau lembaga pendidikan, diberikan jadwal hari Selasa sampai Jumat. Sementara itu,
    69.       kunjungan individu dibuka setiap hari Sabtu.
    70.     </p>
    71.  
    72.     <h2>Kota Bandung</h2>
    73.     <p>Kota Kembang Paris van Java</p>
    74.     <figure>
    75.       <img src="assets/image/bandung-badge.png" />
    76.       <figcaption>Lambang</figcaption>
    77.     </figure>
    78.   </main>
    79.  
    80. <footer>
    81. <!-- Kode lainnya disembunyikan... -->
    82. </footer>
    83. </body>

  6. Alhasil, struktur body pada HTML menjadi seperti berikut.

    RjXGg2veYuClz4872Wl9HVTN65hm34BuLZTmYt09oaXpUdLna4NpuImPNd87_dW0UVL4mrkT5hw-ywC-qexPPudFLsrli2B6sUhydSA5sq_VDCiT3x_qvF7DuNw2jX6Z0cO7algvSS4dqIE__EMHkQU

  7. Silakan jalankan proyek pada browser. Hasilnya akan seperti gambar berikut.


Bedah Kode

Keren! Halaman Profil kita semakin bagus dan terstruktur. Kita berhasil menerapkan elemen <header>, <main>, dan <footer>. Browser pun semakin senang karena ia paham hal yang ditampilkan ke user. Mari kita ulas apa yang telah dilakukan pada latihan ini.

Konten Kepala

Halaman Profil memiliki beberapa konten yang muncul pertama kali atau paling atas. Konten tersebut adalah judul dan navigation list. Nah, elemen-elemen ini kita bungkus dengan elemen <header>. Elemen ini dapat mengandung berbagai elemen, seperti logo halaman, judul halaman, daftar navigasi, dan sebagainya yang bukan merupakan konten utama. Dalam konteks latihan ini, kita membungkus judul halaman beserta deskripsinya dan elemen navigation list.

Konten Pokok

Konten pokok merupakan konten utama yang akan dikonsumsi oleh user. Dalam hal ini adalah teks bacaan atau artikel. Pada Halaman Profil, konten utama yang dimaksud adalah teks-teks yang membahas mengenai sejarah, geografis, dan wisata. Oleh karena itu, kita membungkusnya dengan elemen main.

Elemen main dalam satu halaman tidak boleh ganda. Hal ini berarti elemen main hanya diperbolehkan berjumlah satu dalam tiap halaman web.

Konten Kaki

Banyak informasi tambahan yang dapat disampaikan pada elemen kaki dan bisa kita bungkus dengan elemen footer. Tidak sedikit halaman web yang memanfaatkan elemen ini. Umumnya, elemen footer berisi informasi hak cipta, alamat, logo situs, formulir untuk langganan ke newsletter, dan sebagainya.

Apakah Anda sudah coba periksa hasilnya di browser? Jika sudah, apakah Anda melihat ada perubahan yang terjadi dari latihan sebelumnya? Jika menjawab “tidak ada”, jawaban Anda benar! Hal ini karena kita hanya menstrukturkan ulang dokumen HTML. Tidak ada perubahan konten apa pun. Bahkan, tidak ada perubahan styling sedikit pun yang terjadi. Hal ini karena memang kita belum mempelajari materi styling. 

Itulah beberapa hal yang kita lakukan pada latihan ini. Bagi sebagian dari kita merasa bahwa tidak banyak perubahan yang dilakukan. Hal tersebut tidak sepenuhnya salah karena tampilan halaman webnya pun tidak berbeda dengan sebelumnya. Namun, percayalah bahwa Halaman Profil kita semakin baik dan dimengerti oleh browser (semantic HTML).

Tidak hanya sampai di sini. Ada satu perjalanan lagi yang akan kita lalui untuk meningkatkan kualitas dokumen HTML kita. Yuk, segera masuk ke materi berikutnya!

Dibantu
Dibantu

Halo, selamat datang :)
Kenalin aku Dibantu, bot yang akan membantu kamu mengatasi permasalahan di modul ini.

Lihat forum diskusi

Catatan Belajar

ini konten buat note nanti
Keyboard Shortcut
1
Next/prev modul

Membantu untuk mempermudah navigasi antar modul.

Tekan
CTRL / CTRL
2
Mencari Konten

Membantu menemukan konten dengan lebih cepat.

Tekan
CTRL/
3
Melihat daftar modul

Membantu melihat modul lebih cepat.

Tekan
CTRLM
Pengaturan

Belajar programming dengan terstruktur.

Light

Belajar programming dengan terstruktur.

Warm

Belajar programming dengan terstruktur.

Dark
Daftar Modul

84% Selesai