जवाबों:
visibilityसंपत्ति केवल ब्राउज़र एक तत्व को दिखाने या नहीं बताता है। यह या तो दृश्यमान है ( visible- आप इसे देख सकते हैं), या अदृश्य ( hidden- आप इसे देख नहीं सकते हैं)।
displayसंपत्ति ब्राउज़र बताता है कि कैसे आकर्षित और एक तत्व दिखाने के लिए, सब पर अगर करने के लिए है - चाहे वह एक के रूप में प्रदर्शित किया जाना चाहिए inlineतत्व या एक (यानी यह पाठ और अन्य इनलाइन तत्वों के साथ बहती है) blockस्तर के तत्व (यानी यह ऊंचाई और चौड़ाई गुण है कि आप सेट कर सकते हैं, यह तैरता है, आदि), या एक inline-block(यानी यह) कुछ अन्य लोगों (एक ब्लॉक बॉक्स की तरह काम करता है, लेकिन इनलाइन बजाय रखी है और list-item, table, table-row, table-cell, flex, आदि)।
आप के लिए एक तत्व सेट करते हैं display: block, लेकिन यह भी सेट visibility: hiddenअभी भी एक ब्लॉक तत्व के रूप में, ब्राउज़र व्यवहार करता है यह, को छोड़कर तुम सिर्फ यह नहीं दिख रहा। एक अदृश्य बॉक्स के ऊपर आप लाल बॉक्स को कैसे स्टैक करते हैं, इस तरह की तरह: लाल बॉक्स ऐसा लगता है जैसे यह मध्य हवा में तैर रहा है जब वास्तव में यह एक भौतिक बॉक्स के शीर्ष पर बैठा है जिसे आप नहीं देख सकते हैं।
दूसरे शब्दों में, इसका मतलब यह है displayकि इसके साथ तत्व noneअभी भी एक पृष्ठ में तत्वों के प्रवाह को प्रभावित नहीं करेंगे, भले ही वे दिखाई दे या नहीं। किसी तत्व के आसपास के बक्से display: noneऐसा व्यवहार करेंगे जैसे कि वह तत्व कभी था ही नहीं (हालाँकि यह DOM में रहता है)।
display: none;, तो उस तत्व को DOM से हटा दिया जाता है? या मैं पूरी तरह से भ्रमित हूँ?
दृश्यता: छिपी हुई;
कुछ भी डिस्प्ले मत करो;
अतिरिक्त नोट:
कुछ भी डिस्प्ले मत करो; डोम तत्वों दृश्य शैली / डोम से भौतिक स्थान को हटा देगा, जबकि दृश्यता: छिपी; तत्व को नहीं हटाएगा, लेकिन बस इसे छिपाएगा। तो आपके DOM में वर्टिकल स्पेस के 300px पर कब्जा करने वाला एक डिविजन दृश्यता पर सेट होने पर ऊर्ध्वाधर चौड़ाई के 300px पर कब्जा कर लेगा: छिपा हुआ; लेकिन जब प्रदर्शित करने के लिए सेट: कोई नहीं; यह दृश्य शैली है और जिस स्थान पर यह व्याप्त है वह छिपी हुई है और एक बेहतर शब्द की कमी के कारण यह स्थान "मुक्त" हो गया है।
[संपादित करें] - यह कुछ समय पहले कि मैंने ऊपर लिखा था, और क्या मैं पर्याप्त रूप से जानकार नहीं था या बुरे दिन नहीं थे, मुझे नहीं पता, लेकिन वास्तविकता यह है कि तत्व कभी भी डोम पदानुक्रम से हटा दिया गया है। प्रदर्शन का उपयोग करते समय सभी ब्लॉक स्तर के प्रदर्शन 'शैलियों' पूरी तरह से 'छिपे हुए' हैं: कोई नहीं, जबकि दृश्यता के साथ: छिपा हुआ; तत्व स्वयं छिपा हुआ है, लेकिन यह अभी भी DOM में एक दृश्य स्थान रखता है। मै उम्मीद करता हू कि यह बातें अब साफ है
display: noneहोगा नहीं डोम से एक तत्व को हटा दें। तत्व अभी भी है, यह सिर्फ प्रदर्शित नहीं होता है ।