2012-02-12 10 views
10

संभव डुप्लिकेट:
thumbnails fade in fade outफीका/बाहर css3 साथ

मैं कलाकृतियां हूँ अगर यह this प्रभाव को प्राप्त करना संभव है (केवल इन/आउट फीका)

सीएसएस 3 के साथ। मेरे पास एक समान थंबनेल स्क्रोलर है और मैं जावास्क्रिप्ट के बिना उस प्रभाव को बनाना चाहता हूं, या यदि यह संभव नहीं है तो क्या आप इसे jquery के साथ बनाने के लिए एक सरल समाधान के साथ मेरी मदद कर सकते हैं? धन्यवाद!

उत्तर

21

हाँ यह CSS3 संक्रमण के साथ संभव है।

यहाँ एक उदाहरण है: http://jsfiddle.net/fgasU/

कोड:

<img src="photo.jpg"/>​ 

img{-webkit-transition: opacity 1s ease-in-out; 
-moz-transition: opacity 1s ease-in-out; 
-o-transition: opacity 1s ease-in-out; 
-ms-transition: opacity 1s ease-in-out; 
transition: opacity 1s ease-in-out; 
} 


img:hover{opacity:0}​ 

यह सरल उदाहरण हॉवर पर अस्पष्टता बदल जाएगा। चूंकि एक सीएसएस संक्रमण 'सभी' गुणों के लिए परिभाषित किया गया है, और उन्हें आसानी से बाहर निकलने वाले फ़ंक्शन के साथ 1 सेकंड संक्रमण दिया जाता है, संपत्ति परिवर्तन एनिमेटेड होता है।

इसके अलावा, क्योंकि यह एक नई संपत्ति है, संक्रमण संपत्ति लागू ब्रोवर के कार्यान्वयन से पहले होनी चाहिए। क्रोम/सफारी के लिए वेबबिट, फ़ायरफ़ॉक्स/मोज़िला, -ओ ओपेरा, -एम माइक्रोसॉफ्ट के लिए।

+1

जब आप केवल एक ही बदलते हैं, तो आपको सभी गुणों को लक्षित करने की आवश्यकता नहीं होती है। मैं इसके बजाए अस्पष्टता निर्दिष्ट करूंगा। – Nix

+0

मैं सहमत हूं, अपडेट किया गया। – Vigrond

+0

धन्यवाद, लेकिन यह वही नहीं है जो मैं चाहता हूं। कृपया मेरे प्रश्न में पोस्ट किए गए उदाहरण पर दोबारा देखें, जब मैं छवियों को घुमा नहीं रहा हूं, तो मैं चाहता हूं कि उन्हें अस्पष्टता 0 हो और जब मैं छवियों के कंटेनर को 0 से 1 तक इस संक्रमण प्रभाव के साथ बदल रहा हूं उदाहरण –

2

jQuery समाधान: ट्रिगर div में थंबनेल लपेटें, जो पूरी तरह से छवि पर स्थित है। तत्वों को अंदर और बाहर फीका करने का लक्ष्य रखें।

CSS3 समाधान के लिए, Vigrond के उत्तर का संदर्भ लें।

एचटीएमएल

<div id="wrapper"> 
    <img src="http://lorempixum.com/600/600" /> 
    <div id="trigger"> 
     <div id="thumbnails"> 
      <img src="http://lorempixum.com/60/60" /> 
      <img src="http://lorempixum.com/60/60" /> 
      <img src="http://lorempixum.com/60/60" /> 
      <img src="http://lorempixum.com/60/60" /> 
     </div> 
    </div> 
</div> 

सीएसएस

#wrapper { position:relative; } 

#trigger { 
    width:100%; 
    height:80px; 
    position:absolute; 
    left:0; 
    bottom:20px; } 

#thumbnails { 
    width:100%; 
    height:80px; 
    display:none; } 

#thumbnails img { 
    margin:10px; 
    float:left; } 

jQuery

$(document).ready(function(){ 
    $("#trigger").hover(function() { 
     $(this).children("div").fadeTo(200, 1); 
    }, function(){ 
     $(this).children("div").fadeOut(200); 
    }); 
}); 

मेरी बेला देखें: http://jsfiddle.net/TheNix/Cjmr6/

+0

धन्यवाद, लेकिन डिफ़ॉल्ट रूप से उन छवियों को दृश्यमान बनाने के बारे में और उसके बाद फीड आउट प्रभावों में फीका लागू करें जैसे कि मैंने अपने प्रश्न में पोस्ट किया है। –

+0

बस # थंबनेल पर 'प्रदर्शन: कोई नहीं;' हटा दें। फिर, यह लोड पर दिखाई देगा, और माउसऑफ पर फीका होगा। – Nix

+0

अच्छा है, लेकिन सीएसएस 3 समाधान पर किसी भी विचार, विग्रॉन्ड के उत्तर के साथ इसे कैसे बनाया जाए? –