मेरे पास एक div है जो मेरा "पॉपअप" है जिसे मैं अपने मूल div के प्रत्यक्ष केंद्र में दिखाने के लिए एनिमेट कर रहा हूं। तो मैं पूर्ण स्थिति, नकारात्मक मार्जिन, और बाएं + शीर्ष का उपयोग करने के लिए इसका उपयोग कर रहा हूं ताकि मैं इसे होवर पर -webkit-transform: translateY(-100%)
के साथ आसानी से एनिमेट कर सकूं। सफारी और मोबाइल सफारी पर बहुत अच्छा काम करता है।लंबवत केंद्र का उपयोग करते समय पूर्ण स्थिति और प्रतिशत का उपयोग करते समय बग
आप Chrome या Firefox में पिक्सल का उपयोग करते हैं यह ठीक काम करता है, भले ही आप सब प्रतिशत का उपयोग लेकिन पिक्सल यह काम करेगा का उपयोग कर माता पिता div चौड़ाई निर्धारित किया है। लेकिन, यदि आप सभी प्रतिशत का उपयोग करते हैं तो एफएफ + क्रोम पूरी तरह से बंक जाता है और प्रतिशत के आधार पर प्रतिशत प्रदान करता है जिसे मैं समझ नहीं सकता।
Fiddle Example: सफारी और एफएफ/क्रोम में देखें यह है कि सफारी renders #pixels
#percents
के रूप में सिर्फ एक ही है और दोनों में रेंडर किया जाना चाहिए देखने के लिए। क्या यह सफारी है जो इस गलत को प्रस्तुत कर रही है?
<div class="container">
<div class="pretendImage"></div>
<div id="percents"></div>
</div>
और मेरे सीएसएस:
#percents {
width:100%;
height:100%;
position:absolute;
top:50%;
left:50%;
margin:-50% 0 0 -50%;
}
.container {
position:relative;
width:50%;
height:auto;
}
.pretendImage {
width:200px;
height:200px;
}
खैर मैं एक अतिरिक्त आवरण को जोड़कर एक वैकल्पिक हल मिल गया। मैं अभी भी जानना चाहता हूं कि इसका क्या कारण है।
My workaround: Fiddle शीर्ष + मार्जिन को 80% चौड़ाई/ऊंचाई का उपयोग करने वाले आंतरिक div की गणना करने से बचने के लिए एक रैपर का उपयोग करता है। अर्थात वर्ग "कंटेनर" के साथ div -
अलेक्जेंडर, आप div (percents) div (pretendImage) या div (कंटेनर) के केंद्र में होना चाहते हैं? –
क्षमा करें div (pretendImage) सिर्फ मेरे उदाहरण में div (कंटेनर) का विस्तार करने के लिए था और जब मैं प्रतिशत के बजाय पिक्सेल सेट करता हूं तो इसका प्रभाव दिखाता है। मेरे कोड img (pretendImage) में 'चौड़ाई: 100% है; ऊंचाई: ऑटो 'और इसलिए div (कंटेनर) के समान आकार है, जिसे मैं div (percents) को अपने कामकाज में केंद्रित करने के लिए केंद्रित करना चाहता था। –