Halo semuanya yang lagi bingung mikirin engine untuk lomba Majalah Digital (Madig)! Kali ini saya coba
tunjukkan bagaimana membuat halaman web One Page. One Page bisa diartikan web hanya terdiri dari
satu file HTML saja.
Sebelum dilanjut lebih jauh, sebaiknya anda sudah memiliki pengetahuan dasar tentang HTML dan CSS.
Karena saya gak akan njelasin satu-per-satu. Pelajaran itu sudah berlalu. Untuk editornya, anda bebas
mau menggunakan Adobe Dreamweaver, Notepad++, atau bahkan Notepad bawaan Windows.
HTML Dasar
Umumnya, sebuah website terdiri dari beberapa file ber-ekstensi .html yang dikaitkan menggunakan
hyperlink. Untuk web one page semua halaman dibuat dalam bentuk ruang-ruang. Sehingga, jumlah
halaman sama dengan jumlah ruang yang dibuat. Perhatikan gambar berikut:
HTML Dasar
Nah, sekarang bagaimana membuatnya di HTML? Ketikkan kode HTML berikut dan simpan dengan nama
onepage.html atau nama file yang lain.
<!DOCTYPE html>
<head>
<title>One Page Web</title>
</head>
<body>
<!-- Home -->
<div id="home" class="content">
<h2>Home</h2>
<p>teks untuk halaman pertama</p>
</div>
<!-- /Home -->
<!-- halaman2 -->
<div id="halaman2" class="panel">
<div class="content">
<h2>Halaman 2</h2>
<p>teks halaman dua</p>
</div>
</div>
<!-- /halaman2 -->
<!-- halaman3 -->
<div id="halaman3" class="panel">
<div class="content">
<h2>Halaman 3</h2>
<p>Isi halaman 3</p>
</div>
</div>
<!-- /halaman3 -->
<!-- halaman4 -->
<div id="halaman4" class="panel">
<div class="content">
<h2>Halaman 4</h2>
<p>Isi halaman 4</p>
</div>
</div>
<!-- /halaman4 -->
<!-- Navigation -->
<div id="navigation">
<ul>
<li><a href="#home">Home</a></li>
<li><a href="#halaman2">Portfolio</a></li>
<li><a href="#halaman3">About Me</a></li>
<li><a href="#halaman4">Contact</a></li>
</ul>
</div>
<!-- /Navigation -->
</body>
</html>
Langkah pertama yang disarankan oleh para desain web dunia adalah melakukan CSS reset. Kenapa
perlu di-reset? Karena setiap browser (sebutan untuk: Internet Explorer, Firefox, Opera, Chrome, Safari,
dll.) pada dasarnya memiliki style-nya masing-masing dalam menampilkan halaman web. Ketikkan skrip
berikut di antara tag <style> dan </style>.
html,body {
margin:0;
padding:0;
height:100%;
}
body {
width: 100%;
background: #fff;
overflow-x: hidden;
overflow-y: auto;
}
Margin adalah jarak antara sebuah elemen dengan elemen yang lain, dalam hal ini antara <body>
dengan tepian browser.
Padding adalah jarak suatu elemen web dengan elemen lain yang ada di dalamnya.
Height adalah ketinggian suatu elemen web.
Width adalah lebar suatu elemen web.
Overflow digunakan untuk mengatur tampilan konten halaman web yang melampaui batas (overflow).
Berikutnya, tambahkan style untuk mengatur tampilan tiap halaman. Dalam contoh ini, tiap halaman
diberi kelas panel.
.panel{
width: 100%;
min-height: 100%;
position: absolute;
background-color: #000;
box-shadow: 4px -4px 4px rgba(0,0,0,0.2);
margin-left: -102%;
z-index:2;
-webkit-transition: all .6s ease-in-out;
-moz-transition: all .6s ease-in-out;
-o-transition: all .6s ease-in-out;
-ms-transition: all .6s ease-in-out;
transition: all .6s ease-in-out;
}
Hanya saja, apa yang terjadi ketika link navigasi di-klik? Ya, tidak terjadi apa-apa. Halaman tidak berubah.
Nah, agar link dapat berfungsi, tambahkan lagi style berikut:
.panel:target{
margin-left: 0%;
background-color: #abc;
}