2011-05-03 13 views
8

के अंदर होना चाहिए क्या तालिका तालिका (<tr>) तालिका तालिका में होनी चाहिए (<tbody>), यदि तालिका में टेबल बॉडी है, या यह टेबल बॉडी के बाहर मौजूद हो सकता है?क्या <tr><tbody>

<table> 
    <tr> 
     <td colspan='2'>...</td> 
    </tr> 

    <tbody> 
     <tr> 
     <td>...</td> 
     <td>...</td> 
     </tr> 
    </tbody> 

    <tr> 
     <td colspan='2'>...</td> 
    </tr> 

    <tbody> 
     <tr> 
     <td>...</td> 
     <td>...</td> 
     </tr> 
    </tbody> 

</table> 
+1

आप ऊपर कोड की कोशिश की है? http://jsfiddle.net/wQpfb/ – Dutchie432

+0

उपरोक्त कोड काम करता है, मुझे आश्चर्य है कि यह w3 – superUntitled

+1

http: //validator.w3 के अनुसार मान्य है या नहीं।संगठन/ – Dutchie432

उत्तर

5

नहीं है, <tr><thead>, <tbody>, <tfoot> में हो सकता है या यह उनमें से किसी में होने की जरूरत नहीं है।

+6

जबकि * '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '_' 'tr's। तो, यह थोड़े * करता है *। –

+0

क्या जोड़ा गया 'प्रस्तुत एचटीएमएल में दिखाया जाएगा, या यह कोड को बदलने के बिना कुछ गतिशील रूप से किया गया है? –

+0

क्रोमियम (उबंटू 11.04) में 'tbody' तत्व गतिशील रूप से जोड़ा जाता है (वेब ​​इंस्पेक्टर में दिखाई देता है, लेकिन फ्रेम के स्रोत में नहीं)। प्रदर्शन [जेएस फिडल पर] (http://jsfiddle.net/davidThomas/UMMVS/)। –

1

<tbody> अपने <table> के शरीर चिह्नित करने के लिए प्रयोग किया जाता है, यदि आपका तालिका <thead> (तालिका शीर्ष लेख) शामिल हैं। । या <tfoot> (तालिका पाद लेख) तत्व अपनी मेज उन तत्वों शामिल नहीं है, तो आप <tbody> का उपयोग नहीं के लिए स्वतंत्र हैं

सही उपयोग होगा:।

<table> 
<thead><tr><th>Item   </th><th>Cost </th></tr></thead> 
<tbody><tr><td>Stack Overflow</td><td>Free </td></tr> 
     <tr><td>Something cool</td><td>$1.00</td></tr></tbody> 
</table> 

HTML4 specification to tables

1

आप एक <tbody> के <tr> बाहर है, तो पृष्ठ को मान्य नहीं होगा: जब तक आप <thead> या <tfoot> का उपयोग कर रहे http://validator.w3.org

दूसरों के रूप में उल्लेख किया है, <tbody> वैकल्पिक है। बाद के दो तत्वों का उपयोग करने का मुख्य कारण यह है कि यदि लंबी तालिका मुद्रित की जाती है तो प्रत्येक पृष्ठ पर शीर्षलेख और पाद लेख दोहराया जाता है।

ऐसा लगता है कि आप कैलेंडर की तरह कुछ बना सकते हैं, जहां आप <th> (उदाहरण के लिए, तिथियों के लिए) और <td> (उदा।, उस तारीख की घटनाओं के लिए) की वैकल्पिक पंक्तियां रखना चाहते हैं। यदि ऐसा है, तो आपको <thead> और <tbody> में वैकल्पिक पंक्तियों को लपेटना नहीं चाहिए - ऐसा करने से पृष्ठ को प्रिंट करने के दौरान ब्राउज़र से बिल्ली को भ्रमित कर दिया जाएगा। यदि आप समूहबद्ध तत्वों को छोड़ देते हैं, तो आपकी तालिका मान्य होगी। हालांकि, कुछ स्क्रीन पाठकों को उस मार्कअप द्वारा भ्रमित किया जा सकता है और शीर्षकों की शीर्ष पंक्ति को उनके नीचे सभी कोशिकाओं पर लागू किया जा सकता है। इस तरह की एक जटिल तालिका के लिए, आपको यह सुनिश्चित करने के लिए अतिरिक्त मार्कअप जोड़ना होगा कि स्क्रीन पाठक समझते हैं कि तालिका कैसे व्यवस्थित की जाती है।

<table summary="A brief description of how the table is organized, for screen reader users"> 
    <tr> 
    <th colspan='2' id="header1">...</th> 
    </tr> 
    <tr> 
    <td headers="header1">...</td> 
    <td headers="header1">...</td> 
    </tr> 
    <tr> 
    <th colspan='2' id="header2">...</th> 
    </tr> 
    <tr> 
    <td headers="header2">...</td> 
    <td headers="header2">...</td> 
    </tr> 
</table> 

वैकल्पिक रूप से, आप पर विचार करना है कि क्या डेटा एकाधिक तालिकाओं में आयोजित किया जा सकता है, या एक वैकल्पिक संस्करण प्रदान किया जा सकता है, तो स्क्रीन रीडर उपयोगकर्ताओं के लिए उपयोग करने के लिए आसान होगा कि चाहते हो सकता है: यहाँ सुलभ मार्कअप के साथ अपनी मेज है। उदाहरण के लिए, घटनाओं कैलेंडर को घटनाओं की सूची के रूप में प्रस्तुत किया जा सकता है।

6

क्या Terrill थॉमसन ने कहा के विपरीत, <thead>, <tfoot> और <tbody> टैग के बाहर किंतु <table> टैग के अंदर <tr> टैग के साथ एक मेज W3C Markup Validation Service के खिलाफ मान्य होगा।

इस दस्तावेज़ को सफलतापूर्वक एचटीएमएल 4.01 संक्रमणकालीन के रूप में जांच की गई:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 
<html lang="en"> 
    <head> 
    </head> 
    <body> 
    <table> 
     <thead> 
     <th colspan="2">head1</th> 
     <th>head2</th> 
     </thead> 
     <tfoot> 
     <th colspan="2">foot1</th> 
     <th>foot2</th> 
     </tfoot> 

     <tr><td colspan="3">this row is outside of thead and tfoot</td></tr> 

     <tbody> 
     <tr> 
      <td>1-1</td> 
      <td>1-2</td> 
      <td>1-3</td> 
     </tr> 
     <tr> 
      <td>2-1</td> 
      <td>2-2</td> 
      <td>3-3</td> 
     </tr> 
     <tr> 
      <td>3-1</td> 
      <td>3-2</td> 
      <td>3-3</td> 
     </tr> 
     </tbody> 
    </body> 
</html>