top
, bottom
, left
, और right
गुण एक तत्व के स्थान निर्धारित करने के लिए स्थिति के साथ किया जाता है। वे केवल तैनात तत्वों पर प्रभाव डालते हैं, जो कि position
संपत्ति के अलावा अन्य तत्वों के साथ तत्व हैं static
। उदाहरण के लिए: relative
, absolute
, fixed
, या sticky
।
div ( : || || auto || inherit; )
उदाहरण के लिए, किसी आइकन को जगह से हटाने के लिए आप इसका उपयोग कर सकते हैं:
button .icon ( position: relative; top: 1px; )
या एक कंटेनर के अंदर एक विशेष तत्व की स्थिति।
.container ( position: relative; ) .container header ( position: absolute; top: 0; )
मूल्य के लिए top
, bottom
, left
, और right
निम्न में से कोई हो सकता है:
- CSS की मान्य लंबाई में से कोई भी
- युक्त तत्व की ऊंचाई (के लिए
top
औरbottom
) या चौड़ाई (के लिएleft
औरright
) का एक प्रतिशत auto
inherit
तत्व आम तौर पर किसी दिए गए पक्ष से दूर चला जाएगा जब उसका मूल्य सकारात्मक होगा, और मूल्य नकारात्मक होने पर उसकी ओर। नीचे दिए गए उदाहरण में, top
तत्व को नीचे ले जाने के लिए एक सकारात्मक लंबाई (ऊपर से दूर) और एक नकारात्मक लंबाई top
तत्व को ऊपर ले जाएगी (ऊपर की ओर):
पेन
टॉप देखें : कोडपेन
पर मात्सुको फ्राइडलैंड (@missmatsuko) द्वारा सकारात्मक और नकारात्मक मान ।
पद
के लिए एक मूल्य के साथ एक तत्व की नियुक्ति top
, bottom
, left
, या right
के लिए अपने मूल्य पर निर्भर करता है position
। आइए एक नज़र डालते हैं कि क्या होता है जब हम top
अलग-अलग मूल्यों वाले तत्वों के लिए समान मूल्य निर्धारित करते हैं position
।
static
top
संपत्ति unpositioned तत्वों (साथ तत्वों पर कोई प्रभाव नहीं position
करने के लिए सेट static
)। इस तरह से तत्व डिफ़ॉल्ट रूप से तैनात होते हैं। आप एक तत्व पर position: static;
प्रभाव को पूर्ववत करने के लिए एक विधि के रूप में उपयोग कर सकते हैं top
।
relative
जब top
सेट के साथ एक तत्व पर position
सेट किया जाता है relative
, तो दस्तावेज़ में मूल प्लेसमेंट के संबंध में तत्व ऊपर या नीचे जाएगा।
पेन
टॉप देखें : कोडपेन पर मात्सुको फ्रीडलैंड (@missmatsuko) के
सापेक्ष।
absolute
जब top
सेट के साथ एक तत्व पर position
सेट किया जाता है absolute
, तो तत्व अपने निकटतम पूर्वज (या दस्तावेज़, यदि कोई पूर्वज तैनात नहीं हैं) के संबंध में ऊपर या नीचे चले जाएंगे।
इस डेमो में, बाईं ओर का गुलाबी बॉक्स पृष्ठ के शीर्ष से 50px नीचे स्थित है क्योंकि इसमें कोई पूर्वज तत्व नहीं है। दाईं ओर गुलाबी बॉक्स अपने माता-पिता के ऊपर से 50px नीचे की ओर स्थित है, क्योंकि माता-पिता के पास एक position
है relative
।
पेन
टॉप देखें : कोडपेन
पर मात्सुको फ्राइडलैंड (@missmatsuko) द्वारा निरपेक्ष।
fixed
जब top
सेट के साथ एक तत्व पर position
सेट किया जाता है fixed
, तो तत्व ब्राउज़र के व्यूपोर्ट के संबंध में ऊपर या नीचे जाएगा।
पेन
टॉप देखें :
CodePen पर CSS-Tricks (@ css-tricks) द्वारा तय किया गया।
पहली नज़र में, ऐसा लग सकता है कि absolute
और दोनों के बीच कोई अंतर नहीं है fixed
। अंतर तब देखा जा सकता है जब आप उनकी तुलना ऐसे पृष्ठ पर करते हैं जिसमें स्क्रॉल करने के लिए पर्याप्त सामग्री होती है। जब आप नीचे स्क्रॉल करते हैं, तो fixed
स्थिति तत्व हमेशा दृश्य में होता है, जबकि absolute
स्थिति तत्व स्क्रॉल करता है।
पेन
स्क्रॉलिंग देखें :
CodePen पर CSS-Tricks (@ css-tricks) द्वारा निश्चित बनाम निरपेक्ष ।
sticky
जब top
सेट के साथ एक तत्व पर position
सेट किया जाता है sticky
, तो तत्व स्क्रॉलिंग बॉक्स (या व्यूपोर्ट, यदि कोई पूर्वज के पास स्क्रॉल बॉक्स नहीं है) के साथ निकटतम पूर्वज के संबंध में ऊपर या नीचे जाएगा, तो इसके युक्त तत्व की सीमा तक सीमित होगा।
जब तक इसका कंटेनर इससे अधिक लंबा न हो जाए, और आपके पास स्क्रॉल करने के लिए पर्याप्त सामग्री न हो, तब तक top
किसी sticky
पोजिशन एलिमेंट पर सेट करना ज्यादा मायने नहीं रखता। जैसे fixed
आप स्क्रॉल करते हैं , वैसे ही तत्व देखने में रहेगा। इसके विपरीत fixed
, तत्व के तत्व के किनारों तक पहुंचने के बाद तत्व दृश्य से बाहर हो जाएगा।
पेन
स्क्रॉलिंग देखें :
CodePen पर CSS-Tricks (@ css-tricks) द्वारा स्थिर बनाम स्थिर ।
गोचर
विपरीत पक्षों की स्थापना
आप में से प्रत्येक के लिए एक मूल्य निर्धारित कर सकते हैं top
, bottom
, left
, और right
पर एक ही तत्व। आप विपरीत दिशा (के लिए मान सेट करते हैं top
और bottom
, या left
और right
), परिणाम हमेशा आप क्या अपेक्षा न हो।
ज्यादातर मामलों में, bottom
अगर top
पहले से ही सेट है, right
तो नजरअंदाज कर दिया जाता है और अगर left
पहले से ही सेट है तो उसे नजरअंदाज कर दिया जाता है। जब दिशा को rtl
(बाएं से दाएं) सेट किया left
जाता है, के बजाय अनदेखा किया जाता है right
। प्रत्येक मान के लिए आदेश एक प्रभाव है करने के लिए, तत्व एक होना आवश्यक है position
करने के लिए सेट absolute
या fixed
और height
करने के लिए सेट auto
(डिफ़ॉल्ट)।
इस उदाहरण में, हम सेट top
, bottom
, left
, और right
`20px` के लिए, और भीतरी बॉक्स के प्रत्येक पक्ष की उम्मीद बाहरी बॉक्स की तरफ से दूर 20px होने के लिए:
CodePen पर
CSS-Tricks (@ css-tricks) द्वारा पेन सेटिंग टॉप, बॉटम, लेफ्ट और राइट
देखें।
जब फिक्स्ड व्यूपोर्ट के सापेक्ष नहीं है
position
सेट के साथ तत्व fixed
हमेशा व्यूपोर्ट के संबंध में तैनात नहीं होते हैं। यह अपने निकटतम पूर्वज के सापेक्ष तैनात किया जाएगा transform
, एक perspective
, या filter
संपत्ति के अलावा किसी अन्य चीज़ के लिए सेट none
, यदि कोई मौजूद है।
स्थान जोड़ना या निकालना
यदि आपने एक तत्व पोस्ट किया है और पाया है कि अब एक खाली जगह है या पर्याप्त स्थान नहीं है जहाँ आपको उम्मीद थी, तो यह उस तत्व के साथ या बाहर दस्तावेज़ के प्रवाह में हो सकता है।
जब किसी तत्व को दस्तावेज़ के प्रवाह से बाहर ले जाया जाता है, तो इसका मतलब है कि यह मूल रूप से पृष्ठ पर लिया गया स्थान गायब हो जाता है। यह वह स्थिति है जब कोई तत्व तैनात होता है absolute
या fixed
। इस उदाहरण में, बिल्कुल तैनात तत्व का युक्त बॉक्स ध्वस्त हो गया है क्योंकि दस्तावेज़ के प्रवाह से बिल्कुल तैनात तत्व को हटा दिया गया था:
CodePen पर Matsuko Friedland (@missmatsuko) द्वारा पेन दस्तावेज़ प्रवाह देखें
।
ब्राउज़र का समर्थन
आप एक नज़र डाल सकते हैं, लेकिन top
संपत्ति के लिए कोई क्रॉस-ब्राउज़र चिंताएं नहीं हैं। वसीयत में उपयोग करें।