Benim için işe yarayan bir çözüm buldum ...
Yalnızca bağlantıyı içeren bir liste öğeniz (veya div) varsa ve bunun sayfanızdaki facebook, twitter vb. Sosyal bağlantılar için olduğunu varsayalım. ve bir hareketli resim kullanıyorsunuz, bunu yapabilirsiniz:
<li id="facebook"><a href="facebook.com"></a></li>
"Li" nin arka planını düğme görüntünüz yapın
#facebook {
width:30px;
height:30px;
background:url(images/social) no-repeat 0px 0px;
}
Ardından, bağlantının arka plan resmini düğmenin fareyle üzerine gelme durumu yapın. Ayrıca buna opaklık özelliğini ekleyin ve 0 olarak ayarlayın.
#facebook a {
display:inline-block;
background:url(images/social) no-repeat 0px -30px;
opacity:0;
}
Şimdi tek ihtiyacınız olan "a: hover" altındaki "opaklık" ve bunu 1 olarak ayarlayın.
#facebook a:hover {
opacity:1;
}
Her tarayıcının opaklık geçiş özniteliklerini "a" ve "a: hover" a ekleyin, böylece son css şöyle görünecektir:
#facebook {
width:30px;
height:30px;
background:url(images/social) no-repeat 0px 0px;
}
#facebook a {
display:inline-block;
background:url(images/social) no-repeat 0px -30px;
opacity:0;
-webkit-transition: opacity 200ms linear;
-moz-transition: opacity 200ms linear;
-o-transition: opacity 200ms linear;
-ms-transition: opacity 200ms linear;
transition: opacity 200ms linear;
}
#facebook a:hover {
opacity:1;
-webkit-transition: opacity 200ms linear;
-moz-transition: opacity 200ms linear;
-o-transition: opacity 200ms linear;
-ms-transition: opacity 200ms linear;
transition: opacity 200ms linear;
}
Soluk bir arka plan resmi düğmesine sahip olmanıza izin vermesi gerektiğini doğru açıkladıysam, en azından yardımcı olacağını umuyoruz!
background-image
canlandırılabilir bir özellik değildir ( w3.org/TR/css3-transitions/#animatable-properties ), bu nedenle çözümünüz standart uyumlu değildir.