आपके सुझाव मूल सुझाव (नकारात्मक मार्जिन सेट करना) के आधार पर, मैंने गतिशील ब्राउज़र चौड़ाई के लिए प्रतिशत इकाइयों का उपयोग करके एक समान विधि के साथ आने की कोशिश की है:
एचटीएमएल
<div class="grandparent">
<div class="parent">
<div class="child">
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Dolore neque repellat ipsum natus magni soluta explicabo architecto, molestias laboriosam rerum. Tempore eos labore temporibus alias necessitatibus illum enim, est harum perspiciatis, sit, totam earum corrupti placeat architecto aut minus dignissimos mollitia asperiores sint ea. Libero hic laudantium, ipsam nostrum earum distinctio. Cum expedita, ratione, accusamus dicta similique distinctio est dolore assumenda soluta dolorem quisquam ex possimus aliquid provident quo? Enim tempora quo cupiditate eveniet aperiam.</p>
</div>
</div>
</div>
सीएसएस:
.child-div{
margin: 0 -100%;
padding: 0 -100%;
}
.parent {
width: 60%;
background-color: red;
margin: 0 auto;
padding: 50px;
position:relative;
}
.grandparent {
overflow-x:hidden;
background-color: blue;
width: 100%;
position:relative;
}
नकारात्मक मार्जिन सामग्री को पेरेंट DIV से बाहर जाने देगा। इसलिए मैंने padding: 0 100%;सामग्री को Chlid DIV की मूल सीमाओं पर वापस धकेलने के लिए सेट किया ।
नकारात्मक हाशिये .child-div की कुल चौड़ाई ब्राउज़र के व्यूपोर्ट से बाहर निकलती है, जिसके परिणामस्वरूप क्षैतिज स्क्रॉल होता है। इसलिए हमें overflow-x: hiddenएक ग्रैंडपेरेंट DIV (जो कि पैरेंट डिवोर्स का जनक है) को लागू करके एक्सट्रूज़न की चौड़ाई को क्लिप करने की आवश्यकता है :
यहाँ JSfiddle है
मैंने कोशिश की निल्स कास्पर्सन की left: calc(-50vw + 50%); यह Chrome & FF (IE के बारे में निश्चित रूप से अभी तक निश्चित नहीं) में पूरी तरह से ठीक काम करता है, जब तक मुझे पता नहीं चला कि सफारी ब्राउज़र इसे ठीक से नहीं करता है। आशा है कि उन्होंने इसे जल्द ही ठीक कर लिया है क्योंकि मुझे वास्तव में यह सरल विधि पसंद है।
यह आपकी समस्या को भी हल कर सकता है जहां मूल DIV तत्व होना चाहिए position:relative
इस समाधान विधि की 2 कमियां हैं:
- अतिरिक्त मार्कअप की आवश्यकता होती है (यानी एक दादा-दादी तत्व (सिर्फ अच्छे राजभाषा तालिका की तरह लंबवत संरेखित विधि यह नहीं है ...)
- बाल DIV की बाईं और दाईं सीमा कभी नहीं दिखाई देगी, केवल इसलिए कि वे ब्राउज़र के व्यूपोर्ट के बाहर हैं।
कृपया मुझे बताएं कि क्या इस पद्धति के साथ कोई समस्या है;) आशा करता हूँ की ये काम करेगा।
position: relativeक्या है ? आपको किस चीज की आवश्यकताposition: relativeहै? मुझे लगता है कि मैं क्या पूछ रहा हूं: आप क्या करने की कोशिश कर रहे हैं?