2011-02-26 5 views
6

मेरे पास थैड, टैबी और टफुट के साथ एक टेबल है।
प्रदर्शन के लिए सीएसएस मूल्य ब्लॉक है - शरीर को स्क्रॉलबार जोड़ने और पंक्तियों को स्क्रॉल करने में सक्षम बनाता है जबकि थैड और टीफुट जगह पर रहते हैं।
टीडी टैग चौड़ाई टीडी की चौड़ाई के अनुसार तालिका चौड़ाई में परिवर्तन के रूप में तय नहीं की जाती है।
मैं थैड के टी टैग को टैडी के टीडी टैग के साथ संरेखित करना चाहता हूं।
जब मैं सीएसएस डिस्प्ले विशेषता को अवरुद्ध करता हूं तो ब्लॉक और कोड में कॉलम को संरेखित कैसे किया जाता है

यह कैसे किया जा सकता है? (सीएसएस या JQuery)

संपादित करें: - क्रोम
लक्ष्य ब्राउज़र Google है!
और थोड़ा मोड़ जोड़ना, तालिका आरटीएल है।

सीएसएस:

tbody{ 
    display: block; 
    overflow: auto; 
} 

thead, tfoot{ 
    display: block; 
} 

HTML:

<table> 
     <caption>My Table</caption> 
     <thead>  
      <tr><th>Col1</th><th>Col2</th></tr> 
     </thead> 
     <tbody>  
      <tr><td>Cell11</td><td>Cell12</td></tr> 
      <tr><td>Cell21</td><td>Cell22</td></tr> 
      <tr><td>Cell31</td><td>Cell32</td></tr> 
      <tr><td>Cell41</td><td>Cell42</td></tr> 
      <tr><td>Cell51</td><td>Cell52</td></tr> 
      <tr><td>Cell61 Is Wide</td><td>Cell62</td></tr> 
     </tbody> 
     <tfoot> 
      <tr><th>6 Rows</th><th></th></tr> 
     </tfoot>     
    </table> 

आप इसे इस jsFiddle उपयोग करने का प्रयास कर सकते हैं।

धन्यवाद और खुश रहें।

उत्तर

4

उपयोग जे एस या jQuery tbody की पहली पंक्ति में कोशिकाओं के offsetWidth तक पहुँचने के लिए और उसके बाद th के लिए उन लोगों के रूप स्पष्ट width शैलियों निर्धारित किया है। आप दूसरे में तत्व तक पहुंचने के लिए एक पुनरावृत्ति से इंडेक्स का उपयोग करके किसी व्यक्ति में पंक्ति को फिर से चला सकते हैं और एकजुट हो सकते हैं।

+0

दिशा के लिए धन्यवाद। मैं स्क्रॉलबार को ध्यान में कैसे ले सकता हूं? –

+0

@ जुलिएन अच्छा सवाल; आपको क्या उम्मीद है? क्या इसे अंतिम कॉलम की चौड़ाई में शामिल किया जाना चाहिए, या अंतिम शीर्षलेख के दाईं ओर दिखाया जाना चाहिए? – Phrogz

+0

मैंने इस सवाल में उल्लेख नहीं किया कि तालिका आरटीएल है इसलिए वास्तव में यह पहला स्तंभ है। मुझे लगता है कि एक स्क्रॉलबार होने पर मुझे स्क्रॉलबार की चौड़ाई के मान से हेडर को इंडेंट करना होगा। क्या आप ऐसा करने के लिए एक आसान तरीका जानते हैं? –

1

overflowtbody के लिए सभी ब्राउज़रों द्वारा समर्थित नहीं है !!

अद्यतन: आपको न्यूनतम निर्माण करना पड़ सकता है। हेडर के लिए दो टेबल और सामग्री के लिए एक और दूसरे को div पर डालें और overflow का उपयोग करें और आपको javascipt का उपयोग करके कॉलम चौड़ाई सिंक करना होगा।

+0

आप सही हैं कि मैं Google क्रोम के लिए विकास कर रहा हूं - इसका उल्लेख करना भूल गया - मैं इसे अपने प्रश्न में जोड़ दूंगा। इस पर ध्यान दिलाने के लिए धन्यवाद! –

+0

क्या आप कॉलम के आकार को सिंक करने का एक अच्छा तरीका जानते हैं? –

+0

@ जुलिअन वास्तव में नहीं, मैं अपने सिस्टम के लिए jqGrid जैसे तैयार किए गए ग्रिड का उपयोग करना पसंद करता हूं। यह लिंक आपको मदद कर सकता है http://www.smashingmagazine.com/2007/05/30/tables-and-data-grids-with-ajax-dhtml-javascript/ –

संबंधित मुद्दे

 संबंधित मुद्दे