2015-06-02 7 views
5
element1 { 
    height: calc(100% - 50px); 
    -webkit-transition: .5s; 
    -moz-transition: .5s; 
    -ms-transition: .5s; 
    -o-transition: .5s; 
    transition: .5s; 
} 

element1:hover { 
    height: calc(100% - 200px); 
} 

जब मैं px या % द्वारा ऊंचाई संपत्ति में calc की जगह, संक्रमण ठीक काम करता है, लेकिन calc के साथ, बस संक्रमण के बिना एक ऊंचाई से चला जाता है।कैलक गुणों का उपयोग कर आईई में संक्रमण संपत्ति का काम कैसे कर सकता हूं?

अन्य ब्राउज़रों में यह ठीक काम करता है, समस्या केवल IE


कोड और JSFiddle example मेरा असली स्थिति के लिए समान जोड़ना है।

div{ 
 
    position: fixed; 
 
    right: 0; 
 
    width: 250px; 
 
    height: calc(100% - 200px); 
 
    background: #1c8080; 
 
    top: 158px; 
 
    color: #fff; 
 
    text-align: center; 
 
    padding-top: 40px; 
 
    font-size: 18px; 
 
    border: 1px solid #000; 
 
    
 
    -webkit-transition: all .3s; 
 
    -moz-transition: all .3s; 
 
    transition: all .3s; 
 
} 
 

 
div:hover{ 
 
    height: calc(100% - 100px); 
 
    top: 58px; 
 
} 
 

 
.bottom{ 
 
    position: absolute; 
 
    bottom: 15px; 
 
    width: 100%; 
 
    font-size: 26px; 
 
}
<div> 
 
    <p>Height's tansition</p> 
 
    <p>Works fine in Chrome, FF</p> 
 
    <p class="bottom">But not in IE</p> 
 
</div>

हाँ, मुझे पता है कि मेरे मामले <div> को bottom: 0 स्थापित करने और केवल ऊंचाई को बदलने में, यह भी लेकिन IE में बग के कारण काम करता है, कि एक ऊंचाई से करने के लिए केवल परिवर्तन एक और, यही कारण है कि मैंने प्रभाव को अनुकरण किया, शीर्ष स्थान और ऊंचाई को बदल दिया।

तो, मैं आईई में इस तरह के प्रभाव का अनुकरण कैसे कर सकता हूं?

नोट: मैं व्यूपोर्ट इकाइयों का उपयोग नहीं कर सकता: vh, vw

पीडी: मेरे मामले में IE के साथ दुर्लभ व्यवहार क्योंकि top: valuetop: otherValue लिए काम करता है से संक्रमण लेकिन संक्रमण height: calc(value) से height: calc(otherValue) के लिए नहीं करता है, यह सिर्फ मार्गदर्शन करने के है।

+0

मैं जानता हूँ कि यह वास्तव में आप क्या कर रहे नहीं है, लेकिन वहाँ 'calc' के लिए IE10-11 में कीड़े जाना जाता है' transforms' में इस्तेमाल किया जा रहा। [यहां] देखें (https://connect.microsoft.com/IE/feedback/details/814380/), वे – zgood

+0

से संबंधित हो सकते हैं धन्यवाद, मुझे आपके द्वारा पोस्ट किए गए लिंक में यह लिंक मिला है https://connect.microsoft .com/IE/फीडबैक/विवरण/76271 9/सीएसएस 3-कैल्क-बग-इन-ट्रांज़िशन-या-ट्रांसफॉर्म यहां इंटरनेट एक्सप्लोरर टीम इसे एक बग के रूप में स्वीकार करती है और कहा: "हम आपकी प्रतिक्रिया को सत्यापित करने में सक्षम थे। हालांकि, इस बग के सीमित प्रभाव के आधार पर, हम इस रिलीज के दौरान इस बग को संबोधित नहीं कर पाएंगे। " –

+0

क्या आप वास्तविक स्थिति के करीब काम कोड स्निपेट जोड़ सकते हैं? हो सकता है कि अतिरिक्त HTML लेआउट के साथ काम करना संभव हो। –

उत्तर

1

this के बारे में क्या? आपके कोड स्निपेट (मेरी राय में) की तरह काम करता है, यह IE10/IE11 में ठीक है। या मैं आपकी असली स्थिति को समझ नहीं पाया।

html, body { 
 
    width: 100%; 
 
    height: 100%; 
 
} 
 

 
div { 
 
    position: fixed; 
 
    right: 0; 
 
    width: 250px; 
 
    bottom: 0; 
 
    background: #1c8080; 
 
    top: 158px; 
 
    color: #fff; 
 
    text-align: center; 
 
    padding-top: 40px; 
 
    font-size: 18px; 
 
    border: 1px solid #000; 
 
    
 
    -webkit-transition: all .3s; 
 
    -moz-transition: all .3s; 
 
    transition: all .3s; 
 
} 
 

 
div:hover { 
 
    top: 58px; 
 
} 
 

 
.bottom { 
 
    position: absolute; 
 
    bottom: 15px; 
 
    width: 100%; 
 
    font-size: 26px; 
 
}
<div> 
 
    <p>Height's transition</p> 
 
    <p>Works fine in Chrome, FF</p> 
 
    <p class="bottom">But not in IE</p> 
 
</div>

+0

हां यह काम करता है, लेकिन समस्या यह है कि मुझे नहीं पता कि नीचे कहां होगा, मैं इसे एक उदाहरण के रूप में अंत में डालता हूं, लेकिन मुझे नहीं पता कि यह कहां होगा। इस उदाहरण को देखें http://jsfiddle.net/Yandy_Viera/jgh0k25r/ –

+0

@YandYViera आपके पहले कोड स्निपेट में (जैसा कि आपने कहा था) अपनी वास्तविक स्थिति के समान) आप 'स्थिति: निश्चित' का उपयोग करते हैं। इस मामले में आप हमेशा अपने 'शीर्ष', 'दाएं', 'नीचे', 'बाएं' (व्यूपोर्ट के सापेक्ष) के बारे में जानते हैं। आपके दूसरे मामले में आप 'स्थिति: पूर्ण' का उपयोग करते हैं और कहते हैं कि आप नहीं जानते कि नीचे कहां होगा। मैं आपकी वास्तविक स्थिति को समझ नहीं पा रहा हूं, आप 'ऊंचाई: 100%' का उपयोग क्यों करना चाहते हैं? क्या होगा यदि मूल तत्व बहुत छोटा होगा? उदाहरण के लिए http://oi60.tinypic.com/vpu9gi.jpg। –

+0

आप सही हैं, अब तक मुझे एहसास नहीं हुआ था, अगर मेरे पास शीर्ष और ऊंचाई है, तो मैं नीचे की गणना कर सकता हूं, यहां तक ​​कि मेरे विशेष मामले में भी सफेद स्थिति: पूर्ण, इसलिए आपके उत्तर ने मेरी समस्या हल की, मैं वास्तव में आभारी हूं। –

संबंधित मुद्दे

 संबंधित मुद्दे