निरपेक्ष स्थिति का अर्थ है कि तत्व पृष्ठ लेआउट के सामान्य प्रवाह से पूरी तरह से बाहर ले जाया जाता है। जहां तक पेज पर मौजूद बाकी तत्वों का सवाल है, पूरी तरह से मौजूद तत्व बस मौजूद नहीं है। तत्व को तब अलग से तैयार किया जाता है, जिस तरह की left, right, top and bottom
विशेषताओं का उपयोग करके आप निर्दिष्ट करते हैं, उस स्थिति में बाकी सब चीजों के "शीर्ष" की तरह ।
इन विशेषताओं के साथ आपके द्वारा निर्दिष्ट की गई स्थिति का उपयोग करते हुए, तत्व को उसके अंतिम पूर्वज तत्व के भीतर उस स्थिति में रखा जाता है, जिसमें किसी अन्य static
वस्तु की स्थिति विशेषता होती है, (स्थैतिक गुण के बिना डिफ़ॉल्ट होने वाले पृष्ठ तत्व) या दस्तावेज़ निकाय (ब्राउज़र व्यूपोर्ट) यदि ऐसा कोई पूर्वज मौजूद नहीं है।
उदाहरण के लिए, यदि मेरे पास यह कोड है:
<body>
<div style="position:absolute; left: 20px; top: 20px;"></div>
</body>
... <div>
ब्राउज़र व्यूपोर्ट के शीर्ष से 20px और उसी के बाएँ किनारे से 20px स्थित होगा।
हालाँकि, अगर मैंने ऐसा कुछ किया:
<div id="outer" style="position:relative">
<div id="inner" style="position:absolute; left: 20px; top: 20px;"></div>
</div>
... तब inner
div को div के शीर्ष से outer
20px, और उसी के बाएँ किनारे से 20px स्थित किया जाएगा, क्योंकि outer
div को position:static
इसलिए पोस्ट नहीं किया गया है क्योंकि हमने स्पष्ट रूप से इसका उपयोग करने के लिए सेट किया है position:relative
।
दूसरी ओर, सापेक्ष स्थिति, बस किसी भी स्थिति का कोई मंचन करने जैसा नहीं है, लेकिन left, right, top and bottom
गुण उनके सामान्य लेआउट से बाहर के तत्व को "नंगा" करते हैं। पृष्ठ पर मौजूद बाकी तत्व अभी भी बाहर हैं जैसे कि तत्व अपने सामान्य स्थान पर था।
उदाहरण के लिए, यदि मेरे पास यह कोड है:
<span>Span1</span>
<span>Span2</span>
<span>Span3</span>
... तो तीनों <span>
तत्व एक दूसरे के बगल में बिना ओवरलैप किए बैठ जाते।
अगर मैं <span>
इस तरह से सापेक्ष स्थिति का उपयोग करने के लिए दूसरा सेट करता हूं :
<span>Span1</span>
<span style="position: relative; left: -5px;">Span2</span>
<span>Span3</span>
... तो Span2 5px द्वारा Span1 के दाईं ओर ओवरलैप करेगा। Span1 और Span3 ठीक उसी स्थान पर बैठेंगे, जैसा उन्होंने पहले उदाहरण में किया था, Span2 के दाईं ओर और Span3 के बाईं ओर के बीच 5px का अंतर छोड़ दिया।
आशा है कि चीजों को थोड़ा स्पष्ट करता है।