Monday, October 31, 2011

Tutorial Membuat Text Shadow Inset

CSS Text Shadow Inset

Sulitnya Menciptakan Efek Bayangan Inset pada Teks

Sulit, karena CSS text-shadow inset itu tidak ada. Berbeda dengan CSS Box-Shadow yang bisa menciptakan efek bayangan inset dengan mudah hanya dengan menambahkan kata inset di depan nilai offset seperti ini:

h2 {
  -webkit-box-shadow:inset 5px 5px 7px #222;
  -moz-box-shadow:inset 5px 5px 7px #222;
  box-shadow:inset 5px 5px 7px #222;
}


CSS Text-Shadow tidak bisa begitu. Dan dalam beberapa kasus, kita terpaksa menuliskan deklarasi text shadow dengan cara mengatur warnanya sesuai logika perspektif benda cekung seperti ini:

Prikitiw

h2 {
  background:#E1D596;
  color:#D05D2A;
  text-shadow:0 1px 0px #fff;
}

Setiap orang juga pasti setuju bahwa hasil tampilan teknik di atas sama sekali tidak menciptakan efek bayangan inset pada teks, melainkan hanya menciptakan efek bevel cekung. Yang kita inginkan di sini adalah bayangan, bukan jejak! Tapi bagaimana? Text shadow inset itu tidak ada!

Oke, akan Saya ajarkan tekniknya di sini. Caranya memang sedikit rumit, dan mungkin membutuhkan waktu beberapa jam untuk memahami logikanya. Jadi perhatikan baik-baik.
Seperti yang kita ketahui bahwa CSS Bayangan mempunyai kemampuan untuk menciptakan jumlah bayangan lebih dari satu lapisan hanya dalam satu properti. Maka itulah modal pertama kita.

Kita buat tiga buah layer dengan CSS Text-Shadow. Layer pertama adalah teks asli, layer ke dua adalah bayangan lapisan pertama, dan layer ke tiga adalah bayangan lapisan ke dua:



css text shadow inset
Langkah 1


background:#008000;
color:#FCD208;
text-shadow:-50px -50px 0px #EEEEEE, -50px 50px 0px #000;



Sekarang atur nilai offset agar layer ke dua sedikit turun ke bawah dan pertahankan layer ke tiga agar tetap pada offset nol:



css text shadow
Langkah 2


background:#008000;
color:#FCD208;
text-shadow:0px 3px 0px #EEEEEE, 0px 0px 0px #000;



Sampai di sini, kita bisa melihat bahwa layer ke dua tampak muncul sedikit karena posisinya telah bergeser, sementara layer ke tiga tidak tampak, karena posisinya sejajar dengan teks asli di depannya.
Sekarang kita konversi warna kuning pada teks untuk memperlihatkan layer ke tiga di belakangnya dengan menggunakan kode warna RGBA (konversi di sini). Atur tingkat transparasi warna sesuai kehendakmu, tapi Saya sarankan tetap di bawah 0.5:



css text shadow
Langkah 3


background:#008000;
color:rgba(252, 210, 8, 0.4);
text-shadow:0px 3px 0px #EEEEEE, 0px 0px 0px #000;



Sekarang layer ke tiga tampak sedikit terlihat di belakang teks yang telah dibuat tembus pandang.
Tambahkan tingkat blur pada layer ke dua agar kita bisa menciptakan efek bayangan yang realistis:



css text shadow
Langkah 4


background:#008000;
color:rgba(252, 210, 8, 0.4);
text-shadow:0px 3px 3px #EEEEEE, 0px 0px 0px #000;



Sampai di sini, efek bayangan inset sudah mulai terlihat. Namun ada satu hal yang cacat pada sesi ini:



kecacatan css text shadow
Bayangan keluar dari area



Terdapat blur bayangan yang keluar dari area yang tidak seharusnya. Mau bagaimana lagi, yang sedang kamu lakukan sekarang memang bukan menciptakan efek bayangan inset yang sesungguhnya, melainkan hanya mengakali efek bayangan yang ada agar efek bayangan inset seolah-olah terbentuk. Tidak ada cara khusus untuk memotong bayangan yang berlebih tersebut, jadi satu-satunya cara adalah dengan menyamakan warna background dengan warna layer ke dua:



css text shadow inset
Langkah 5


background:#EEEEEE;
color:rgba(252, 210, 8, 0.4);
text-shadow:0px 3px 3px #EEEEEE, 0px 0px 0px #000;

Nah, selesai sudah!


Produk Akhir


Tulisan Ganteng

h2 {
  font:bold 50px 'Showcard Gothic',Impact,Arial,Sans-Serif;
  background:#E1D596;
  color:rgba(208, 93, 42, 0.3);
  text-shadow:0px 3px 3px #E1D596, 0px 0px 0px #000;
}

Labels: , ,

5 Comments:

At Tuesday, November 1, 2011 at 11:18:00 AM GMT+7, Blogger Endy said...

efek yang menarik mas..mirip photoshop juga hasilnya..

 
At Tuesday, November 1, 2011 at 11:29:00 AM GMT+7, Blogger Taufik Nurrohman said...

@Endy: Saya mempelajari cara kerja efek ini dari code snippetsnya kang Rudy Azhar :D

 
At Tuesday, November 1, 2011 at 9:02:00 PM GMT+7, Blogger Aeferes / Al Firous said...

wah jadi harus pintar-pintar memainkan warna ya...

 
At Wednesday, February 15, 2012 at 5:16:00 PM GMT+7, Blogger Unknown said...

Mantap kang ijin coba dulu ye ^_^

 
At Thursday, February 20, 2014 at 10:24:00 PM GMT+7, Blogger Unknown said...

Makasih artikelnya gan, makin cinta nih sama css jadinya.... :D

 

Post a Comment

<< Home