आधुनिक वेब विकास में मैं इस पैटर्न पर अधिक बार आ रहा हूं। यह इस तरह दिख रहा है:
<div class="table">
<div class="row">
<div class="cell"></div>
<div class="cell"></div>
<div class="cell"></div>
</div>
</div>
और CSS में कुछ इस तरह है:
.table { display: table; }
.row { display: table-row; }
.cell { display: table-cell; }
* (वर्ग नाम केवल उदाहरण हैं; वास्तविक जीवन में वे सामान्य वर्ग नाम हैं जो दर्शाते हैं कि तत्व क्या है)
मैंने हाल ही में खुद भी ऐसा करने की कोशिश की है ... क्योंकि आप जानते हैं, हर कोई इसे कर रहा है।
लेकिन मैं अभी भी नहीं मिला। हम यह क्यों कर रहे हैं? यदि आपको एक मेज की आवश्यकता है, तो बस एक ब्लास्ट करें <table>
और उसके साथ किया जाए। हां, भले ही यह लेआउट के लिए हो। सारणी के अनुसार सामान रखने के लिए टेबल क्या हैं।
मेरे पास सबसे अच्छा स्पष्टीकरण यह है कि अब तक सभी ने "लेआउट के लिए तालिकाओं का उपयोग न करें" का मंत्र सुना है, इसलिए वे इसे आँख बंद करके अनुसरण करते हैं। लेकिन उन्हें अभी भी लेआउट के लिए एक तालिका की आवश्यकता है (क्योंकि कुछ और नहीं एक तालिका की विस्तारित क्षमता है), इसलिए वे एक बनाते हैं <div>
(क्योंकि तालिका नहीं है!) और फिर सीएसएस जोड़ें जो इसे वैसे भी एक तालिका बनाता है।
सारी दुनिया के लिए यह मुझे ऐसा लगता है जैसे आपके रास्ते में मनमानी अनावश्यक बाधाएँ डालना और फिर उन्हें दरकिनार करने के लिए अतिरिक्त काम करना।
लेआउट के लिए तालिकाओं से दूर जाने का मूल तर्क यह था कि बाद में सारणीबद्ध लेआउट को संशोधित करना कठिन है। लेकिन "अशुद्ध-तालिका" लेआउट को संशोधित करना उतना ही कठिन है, और उतने ही कारणों से। वास्तव में, व्यवहार में एक लेआउट को संशोधित करना हमेशा कठिन होता है, और यह लगभग कभी भी सीएसएस को बदलने के लिए पर्याप्त नहीं है, यदि आप मामूली चोटियों की तुलना में कुछ अधिक गंभीर करना चाहते हैं। आप होगा समझते हैं और गंभीर डिजाइन में परिवर्तन के लिए HTML संरचना को बदलने की जरूरत। और टेबल divs की तुलना में किसी भी कठिन या आसान काम नहीं करते हैं।
वास्तव में, एक ही रास्ता मैं देख रहा हूँ टेबल एक लेआउट को संशोधित करने के लिए मुश्किल, कर सकता है कि यदि आप है अब उन्हें इस्तेमाल किया और एक धर्मभ्रष्ट गड़बड़ बनाया। आप डिव के साथ भी ऐसा कर सकते हैं।
तो ... एक शेख़ी से एक सुसंगत प्रश्न में इसे बदलने की कोशिश में: मैं क्या याद कर रहा हूं? एक वास्तविक से अधिक "अशुद्ध-तालिका" का उपयोग करने के वास्तविक लाभ क्या हैं ?
डुप्लिकेट लिंक के बारे में: यह किसी अन्य टैग या किसी चीज़ का उपयोग करने का सुझाव नहीं है। यह एक <table>
बनाम का उपयोग करने के बारे में एक सवाल है display:table
।
table-layout:fixed
, उसे प्रदर्शित होने से पहले पूरी तरह से लोड करने की आवश्यकता होगी। आधुनिक ब्रॉडबैंड के साथ यह प्रभाव कम ध्यान देने योग्य है।