CSS3 Geçiş Efektleri

Radius1

Yeni üye
15 Eki 2014
19
0
CSS3 ile hayatımıza gelen efektlerden kullanımı en hızlı ve kolay olanı geçiş efektleridir. Kullanımı oldukça basit olmasına rağmen Internet Explorer’ın eski sürümlerine uyumlu bir tasarım hazırlama gibi bir ihtiyacınız varsa sizi biraz zorlayabilir.
Geçiş efekti vermek için fare olaylarına ihtiyacımız var. Örneğin imleç üzerine geldiği zaman ya da tıkladığı zaman gibi.
Kullanmamız gereken CSS3 kodu aşağıdaki gibidir:



Kod:
transition: {etkilenen css etiketleri} {geçiş süresi} {geçiş efekti zamanlaması} {bekleme süresi};

Etkilenen CSS Etiketleri: Animasyonun tüm CSS kodlarında mı kullanılacağını yoksa sadece bir CSS kodu için mi kullanılacağını belirtmeye yarar. Tüm değişiklikler için geçiş efekti olsun istiyorsanız “all” kullanılır. Örneğin hover olayındaki sadece genişlik değişsin istiyorsanız “width” kullanılır.

Geçiş Süresi: Geçiş efektinin ne kadar süreceğini belirler. Saniye cinsindendir. Genel olarak “0.2s”, “0.4s” gibi ondalık birimler kullanılır.
Geçiş Efekti Zamanlaması: Geçiş efektinin hangi şekilde zamanlanacağını belirler. Düz bir geçiş mi, önce hızlı sonra yavaşlayan bir geçiş mi? Örnekler arttırılabilir.
Bekleme Süresi: Geçiş efekti başlamadan önce ne kadar bekleneceğini belirtir. Boş geçilirse ya da belirtilmezse “0” olarak alınır ve efekt anında başlar.
Bu yapı kısaltılmış yapıdır. Bu yapının ayrıştırılmış şekli aşağıdaki gibidir:


Kod:
transition-property: {etkilenen css etiketleri};
transition-duration: {geçiş süresi};
transition-timing-function: {geçiş efekti zamanlaması};
transition-delay: {bekleme süresi};

Örneğin bir button oluşturduk. İmgeç üzerine geldiğinde ve tıkladığında gösterilmesi için farklı efektler verdik.


Kod:
CSS


.wf-button {
  border: 1px solid #DFDFDF;
  background: #FDFDFD;
  padding: 8px 16px;
  border-radius: 3px;
  box-shadow: 0 4px 2px rgba(0,0,0,0.2);
  cursor: pointer;
  outline: none;
}
.wf-button:hover {
  background: #F9F9F9;
}
.wf-button:active {
  box-shadow: 0 2px 2px rgba(0,0,0,0.1);
  position: relative;
  top: 2px;
}

Bu geçişlerin animasyonlu olmasını istersek ana sınıfa/ID’ye transition kodlarını ekliyoruz. :hover ya da :active sınıflarına eklemiyoruz.

Kod:
wf-button-animated {
  border: 1px solid #DFDFDF;
  background: #FDFDFD;
  padding: 8px 16px;
  border-radius: 3px;
  box-shadow: 0 4px 2px rgba(0,0,0,0.2);
  cursor: pointer;
  outline: none;
  
  -webkit-transition: all 0.2s ease-in;
  -moz-transition: all 0.2s ease-in;
  -ms-transition: all 0.2s ease-in;
  -o-transition: all 0.2s ease-in;
  transition: all 0.2s ease-in;
}
.wf-button-animated:hover {
  background: #F9F9F9;
}
.wf-button-animated:active {
  box-shadow: 0 2px 2px rgba(0,0,0,0.1);
  position: relative;
  top: 2px;
}

Bu kadar basit. Örneğimizi inceleyecek olursak:

Kod:
transition: all 0.2s ease-in;





Tüm projenizde kullanabilmeniz için transition sınıfları da oluşturabilirsiniz.


Kod:
.transition-all {
  -webkit-transition: all 0.2s ease-in;
  -moz-transition: all 0.2s ease-in;
  -ms-transition: all 0.2s ease-in;
  -o-transition: all 0.2s ease-in;
  transition: all 0.2s ease-in;
}
 

mr00t

Yeni üye
15 Eki 2014
6
0
./root
Konu yeri biraz yanlış değilmi ?
birde
transition: width .5s ease-in-out, background .3s ease;
bu şekilde 2 lide kullanılabilir onuda eklersen süper olur :D
 

Raphers

Adanmış Üye
31 Ağu 2014
7,286
5
System.Net
Ellerine sağlık güzel olmuş fakat CSS3 WEB programlama dilidir :) Konunuzu yanlış yere açmışsınız...
 
Üst

Turkhackteam.org internet sitesi 5651 sayılı kanun’un 2. maddesinin 1. fıkrasının m) bendi ile aynı kanunun 5. maddesi kapsamında "Yer Sağlayıcı" konumundadır. İçerikler ön onay olmaksızın tamamen kullanıcılar tarafından oluşturulmaktadır. Turkhackteam.org; Yer sağlayıcı olarak, kullanıcılar tarafından oluşturulan içeriği ya da hukuka aykırı paylaşımı kontrol etmekle ya da araştırmakla yükümlü değildir. Türkhackteam saldırı timleri Türk sitelerine hiçbir zararlı faaliyette bulunmaz. Türkhackteam üyelerinin yaptığı bireysel hack faaliyetlerinden Türkhackteam sorumlu değildir. Sitelerinize Türkhackteam ismi kullanılarak hack faaliyetinde bulunulursa, site-sunucu erişim loglarından bu faaliyeti gerçekleştiren ip adresini tespit edip diğer kanıtlarla birlikte savcılığa suç duyurusunda bulununuz.