This is default featured post 1 title

Go to Blogger edit html and find these sentences.Now replace these sentences with your own descriptions

This is default featured post 2 title

Go to Blogger edit html and find these sentences.Now replace these sentences with your own descriptions..

This is default featured post 3 title

Go to Blogger edit html and find these sentences.Now replace these sentences with your own descriptions.

This is default featured post 4 title

Go to Blogger edit html and find these sentences.Now replace these sentences with your own descriptions.

This is default featured post 5 title

Go to Blogger edit html and find these sentences.Now replace these sentences with your own descriptions.

Sabtu, 11 Agustus 2012

Web : Bermain-main dengan CSS3 : Transition


Dalam CSS3 kita bisa menambahkan efek transisi pada property-property css seperti width, color dan lain sebagainya agar perubahan yang terjadi terlihat begitu halus karena adanya efek transisi ini. Meskipun belum semua browser dapat menampilkan transisi dengan benar, anda sudah bisa menggunakan css3 transition ini dalam project anda.

Property Transition

Lalu bagaimana cara menggunakan property transition ini, mari kita pelajari terlebih dahulu property-property transition ini :
  • transition-delay

    property ini akan memberikan waktu delay sebelum efek transisi dimulai, nilai yang bisa diberikan memiliki satuan s (second), ms (milisecond). contoh :
    transition-delay: 2s;
    transition-delay: 3ms;
    transition-delay: .3s; /* cara penulisan lain dari 3ms */
  • transition-duration

    Sedangkan untuk menentukan durasi dari efek transisi akan ditentukan oleh property transition-duration. efek transisi akan berjalan selama nilai durasi yang diberikan.
  • transition-property

    property ini berfungsi untuk menentukan property apa yang ingin diberi efek transisi. Anda bisa menggunakan value all untuk memberikan transisi pada seluruh property
  • transition-timing-function

    property terakhir adalah timing dari transition , saya lebih suka menyebutnya dengan tipe transisi, nilai yang diberikan bisa berupa ease, ease-in, ease-out, ease-in-out;
Shorthand untuk semua property-property transition tersebut bisa ditulis seperti berikut :
transition: duration delay property timing-function;
transition: 5ms 1s background ease-in;
Jika anda ingin memberikan transisi pada lebih dari satu property, anda tinggal menambahkan tanda koma (,) dan tuliskan kembali shorthand untuk property selanjutnya :
transition: 5ms 1s background ease-in, 3ms 0s color ease-in-out;

Kompatibilitas

Efek transisi CSS3 ini masih belum didukung oleh setiap browser, jadi penambahan prefix untuk setiap browser masih diperlukan agar kita bisa melihat efeknya seperti :
-webkit-transition: 3s background ease; /* untuk Chrome dan Safari */
-moz-transition: 3s background ease; /* untuk firefox */
-ms-transition: 3s background ease; /* untuk ie9 ke atas */
-o-transition: 3s background ease; /* untuk opera */
transition: 3s background ease; /* fallback ketika semua browser sudah mendukungnya */
Berikut ini adalah daftar browser yang sudah mendukung efek transisi ini :
  • Google Chrome
  • Safari 3.1 ke atas
  • Firefox 4 ke atas
  • Opera 10.5x ke atas
sumber : w3schools
DemonstrasiDownload

HTML

Agar lebih memahami apa yang sedang kita bicarakan buka demonstrasi di atas, dan itulah yang akan kita buat sekarang. pertama-tama buatlah sebuah div dengan id box dan 4 div dengan class timing (dengan id berbeda).
<h1>Efek Glow</h1>
<div id="box">Hover me, Bro!!</div>
<h1>Perbedaan timing</h1>
<div class="timing" id="ease">ease</div>
<div class="timing" id="ease-in">ease-in</div>
<div class="timing" id="ease-out">ease-out</div>
<div class="timing" id="ease-in-out">ease-in-out</div>

CSS

Terlebih dahulu, kita buat div box ini benar-benar menjadi sebuah box :)
#box{
	width:200px;
	height:100px;
	background:#ddd;
	line-height:100px;
	margin:20px auto;
}
Selanjutnya kita tambahkan property CSS3 transition pada selector #box ini :
#box{
	width:200px;
	height:100px;
	background:#ddd;
	line-height:100px;
	margin:20px auto;
	/* Pemberian transition pada box-shadow akan memberikan efek glow */	
	-webkit-transition: .3s box-shadow ease-in, .3s background ease-in;
	-moz-transition: .3s box-shadow ease-in, .3s background ease-in;
	-ms-transition: .3s box-shadow ease-in, .3s background ease-in;
	-o-transition: .3s box-shadow ease-in, .3s background ease-in;
	transition: .3s box-shadow ease-in, .3s background ease-in;
}
dan kita tambahkan pseudo-class pada #box ini, untuk merubah warna background ketika kita meletakkan cursor kita diatas box tersebut:
#box:hover{
	box-shadow: 0 0 30px #52A7FF;
	background:white;	
}
Selanjutnya kita beri style untuk div dengan class timing :
.timing{
	width:100px;
	padding:10px;
	background:white;
	margin:10px auto;
}	
Tambahkan pseudo class hover untuk merubah width dari seluruh div dengan class timing ini :
.timing:hover{
	width:500px;
}
Dan untuk setiap id kita tambahkan property transition dengan timing function yang bersangkutan :
#ease{
	-webkit-transition:.8s width ease;
	-moz-transition:.8s width ease;
	-ms-transition:.8s width ease;
	-o-transition:.8s width ease;
	transition:.8s width ease;
}
#ease-in{
	-webkit-transition:.8s width ease-in;
	-moz-transition:.8s width ease-in;
	-ms-transition:.8s width ease-in;
	-o-transition:.8s width ease-in;
	transition:.8s width ease-in;
}
#ease-out{
	-webkit-transition:.8s width ease-out;
	-moz-transition:.8s width ease-out;
	-ms-transition:.8s width ease-out;
	-o-transition:.8s width ease-out;
	transition:.8s width ease-out;
}
#ease-in-out{
	-webkit-transition:.8s width ease-in-out;
	-moz-transition:.8s width ease-in-out;
	-ms-transition:.8s width ease-in-out;
	-o-transition:.8s width ease-in-out;
	transition:.8s width ease-in-out;
}
Untuk mencobanya, silahkan arahkan cursor anda ke atas elemen-element tersebut.

Kesimpulan

Property transition pada CSS3 ini sangatlah membantu untuk pemberian efek transisi pada elemen-elemen yang kita kehendaki, sehingga perubahan yang terjadi ketika suatu kondisi terpenuhi (seperti hover, active, selected) menjadi lebih halus dan tidak kaku.

Web : Membuat buku virtual dengan turn.js


Anda pernah mendengar tentang FlashPageFlip? itu adalah library flash untuk membuat buku virtual lengkap dengan efek ketika kita membuka tiap halaman buku tersebut. Kini saya akan memperkenalkan Turn.js, sebuah library Javascript yang fungsinya hampir sama dengan FlashPageFlip, namun tanpa flash.
Turn.js
DemonstrasiDownload
Turn.js menggunakan teknologi HTML5 dan CSS3, terutama dibagian efek membuka halaman buku. Turn.js bisa dijalankan di browser berikut:
  • Safari 5
  • Chrome 16
  • Firefox 10, dan
  • IE 7,8,9
Anda dapat mendownloadnya disitus resminya, di http://turnjs.com/ atau disini
Untuk memahami penggunaanya, saya akan memberikan contoh sederhana dengan membuat sebuah buku gallery dengan gambar-gambar yang diambil dari dribbble.com.

HTML

Untuk, markup html, kita hanya membutuhkan sebuah div dengan id book, untuk halaman didalam akan langsung di generate secara otomatis oleh jquery.
  1. <div id="book"></div>

CSS

Kita tambahkan CSS, untuk buku virtual yang akan kita buat:
  1. *{margin:0;padding:0}
  2. #book{
  3. margin:30px auto;
  4. }
  5. h2{
  6. background :rgba(255,255,255,.9);
  7. color :#777;
  8. font-family:calibri,sans-serif;
  9. font-weight: normal;
  10. padding :10px;
  11. text-shadow:0 1px 0 rgba(255,255,255,.8);
  12. text-align :center;
  13. }

Javascript

Selanjutnya adalah inti dari artikel ini, pertama-tama kita muat terlebih dahulu library jquery dan turn.js yang telah di download dari websitenya.
  1. <script src="jquery.min.js"></script>
  2. <script src="turn.min.js"></script>
Lalu tambahkan script berikut:
  1. <script>
  2. $.getJSON("http://api.dribbble.com/shots/popular?callback=?",
  3. {
  4. per_page:"16",
  5. format: "json"
  6. },
  7. function(data) {
  8. shots=data.shots;
  9. for(var i in shots){
  10. var shot=shots[i];
  11.  
  12. $("#book").append('<div style="background:url('+shot.image_url+');" class="page"><h2>'+shot.title+'</h2></div>');
  13. }
  14. $('#book').turn({
  15. width: 800,
  16. height: 300,
  17. autoCenter:true
  18. });
  19. });
  20. </script>

Penjelasan Code

Untuk gambar yang akan ditampilkan berasal dari situs dribbble.com, saya menggunakan api dribbble untuk mendapatkan gambar-gambar terpopuler. API dribbble akan mengembalikan nilai berupa daftar posting (shots) dengan format JSON, lalu saya lakukan perulangan (baris 9-13) dengan menambahkan tag div dengan gambar sebagai background dan tag h2 untuk title (line 12).
Setelah gambar-gambar ditambahkan ke dalam div#book, selanjutnya kita panggil fungsi turn.js untuk membuat gambar-gambar tersebut menjadi buku virtual (baris 14-18);
Jika anda ingin mempelajari fungsi .getJSON silahkan baca disini, dan untuk mempelajari API dribbble silahkan baca disini

Jalankan Kode

Save pekerjaan anda dan tampilkan di browser yang compatible (telah disebutkan di atas), hover sudut halaman, click atau click dan drag untuk membuka halaman selanjutnya.

Kesimpulan

Turn.js memanfaatkan fitur CSS3 diantaranya, gradient, box-shadow, transform dan lain sebagainya untuk membuat efek membuat sebuah buku. Oleh karena itu jika kita membukanya di browser yang tidak compatible maka, efek-nya kurang berasa.
Kelebihan lainnya adalah, anda dapat mengubah halaman web anda menjadi sebuah virtual book, lengkap dengan efek page flip. Pada contoh di atas kita merubah sebuah div menjadi lembaran-lembaran buku gallery. Untuk contoh lainnya, bisa anda temukan di demo yang terdapat di dalam folder hasil download turn.js. Selamat berkreasi :) .

Tool Untuk Membantu Desain Web


Hai akhirnya saya bisa menyempatkan diri lagi menulis sebuah artikel disini, setelah saya disibukan dengan kesibukan offline. Well pada artikel ini saya akan me-Rekomendasikan alat (tools) bagi para Pekerja Web yang suka coding. Ya sekarang banyak tools yang sangat membantu dalam membuat website lebih cepat, daripada berbasa-basi, lebih baik langsung simak Tools Rekomendasi dari saya ini :
Tools
Discriptions
Easy to use YAML (Yet Another Multicolumn Layout) XHTML/CSS site layout builder.
JavaScript CSS authoring app.
CSS formatting tool for wrapping text around images.
Online CSS text style generator.
Free CSS menu builder.
HTML form builder.
Drag and drop website creator.
Create your own mobile websites.
Template site that allows you to customize templates before downloading them.
Online tool for creating website templates.
A website design and hosting platform for creative professionals.
Browse different typefaces and styles and grab the CSS of the ones you want.
Create custom CSS type styles with this tool.
Experiment with Web safe typography and then get the CSS for it.
Generate stylesheets on the fly and then copy the code for your site.
A free tool to create tableless 2- or 3-column blog designs.
A blog template creator.
Easily and affordably create websites for yourself or others.
Create custom CSS text styles.
Easy to use website builder.
Easy to use, free website builder that lets you customize a template and add as many pages as you want.
Free website builder and hosting for restaurants that includes, customizable menus, daily specials, printable coupons, and more.
Free, ad-free website builder that lets you have a blog, photo album, video gallery and more.
Create a website with one-click editing, customizable templates, and more.
Create a website and publish it on your own domain.
Create your own website with as many pages as you want and integrate images, video and more.
Create a personal or business website for free with drag and drop technology, tagging, and free hosting.
E-commerce website builder.
Website creator that includes photos, videos, blogs, and includes free telephone support.
Free family website creator with unlimited storage space.
Free wedding website builder.
A wedding website creator that includes a high-res photo exchange, private messaging, guest profiles, and more.
Another free website builder that includes a subdomain.
Free website builder with drag and drop functionality and e-commerce options.
Website builder for the real estate industry that includes an agent messaging system and client management features.
A free, open-source website creator that includes an intuitive interface and easy installation.
A powerful website creator that includes XHTML validation, WYSIWYG editing, a blogging platform and more.
Cross-platform content editor that lets you edit the content of your website right in your browser.
Create your own completely custom WordPress theme with this online tool.
Semoga tools di atas yang rekomendasikan dapat membantu para Web Developer untuk mengembangkan situs-nya. Sekarang tugas pembaca, silahkan share tools yang belum ada di list di atas dan berbagi ilmu di kolom komentar.