aboutsummaryrefslogtreecommitdiff
path: root/files/ca/learn/html/tables/advanced/index.html
blob: 8ccd08e053513d5b7afd9b7bb85e9bb79f50ce1b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
---
title: 'Taules HTML: característiques avançades i accessibilitat'
slug: Learn/HTML/Tables/Advanced
tags:
  - Accessibility
  - Advanced
  - Article
  - Beginner
  - CodingScripting
  - HTML
  - Headers
  - Learn
  - caption
  - nesting
  - scope
  - sumary
  - table
  - tbody
  - tfoot
  - thead
translation_of: Learn/HTML/Tables/Advanced
original_slug: Learn/HTML/Taules_HTML/Taula_HTML_característiques_avançades_i_laccessibilitat
---
<div>{{LearnSidebar}}</div>

<div>{{PreviousMenuNext("Learn/HTML/Tables/Basics", "Learn/HTML/Tables/Structuring_planet_data", "Learn/HTML/Tables")}}</div>

<p class="summary">En el segon article d'aquest mòdul ens fixem en algunes de les característiques més avançades de les taules HTML, com ara les llegendes/resums i l'agrupament de files en seccions de capçalera, cos i peu de taula, i en l'accessibilitat de les taules per als usuaris amb discapacitat visual.</p>

<table class="learn-box standard-table">
 <tbody>
  <tr>
   <th scope="row">Requisits previs:</th>
   <td>Fonaments d'HTML (consulta la <a href="/ca/docs/Learn/HTML/Introducció_al_HTML">Introducció a l’HTML</a>).</td>
  </tr>
  <tr>
   <th scope="row">Objectiu:</th>
   <td>Aprendre les característiques més avançades de les taules HTML i qüestions d'accessibilitat de les taules.</td>
  </tr>
 </tbody>
</table>

<h2 id="Afegir_un_títol_a_la_taula_amb_&lt;caption>">Afegir un títol a la taula amb &lt;caption&gt;</h2>

<p>Pots donar a la taula una títol, que es posa dins d'un element {{htmlelement("caption")}} que està imbricat dins de l'element {{htmlelement("table")}}. Aquest títol s'ha de posar just sota l'etiqueta d'obertura <code>&lt;table&gt;</code>.</p>

<pre class="brush: html notranslate">&lt;table&gt;
  &lt;caption&gt;Dinosaurs in the Jurassic period&lt;/caption&gt;

  ...
&lt;/table&gt;</pre>

<p>Com es pot deduir del breu exemple anterior, el títol està destinat a contenir una descripció del contingut de la taula. Això és útil per a tots els lectors que volen tenir una idea ràpida de si la taula els és útil a partir de donar una ullada a la pàgina, però ho és en particular per als usuaris cecs perquè, en lloc d’haver-se d’esperar que el lector de pantalla llegeixi el contingut de moltes cel·les per a esbrinar quina informació proporciona la taula, podran decidir a partir del títol si llegeixen la taula amb més detall.</p>

<p>Un títol es col·loca directament sota l'etiqueta <code>&lt;table&gt;</code>.</p>

<div class="note">
<p><strong>Nota</strong>: Per a proporcionar una descripció també pots utilitzar l'atribut {{htmlattrxref("summary","table")}} en l'etiqueta <code>&lt;table&gt;</code>, que els lectors de pantalla també poden llegir. Tanmateix, et recomanem que empris l'element <code>&lt;caption&gt;</code>, perquè l’atribut {{htmlattrxref("summary","table")}} està {{glossary("desaprovat")}} per l'especificació HTML 5, i a més els usuaris vidents no el poden llegir (no apareix a la pàgina).</p>
</div>

<h3 id="Aprenentatge_actiu_Afegir_un_títol">Aprenentatge actiu: Afegir un títol</h3>

<p>Tornem al primer exemple de l'article anterior i observem com es fa això.</p>

<ol>
 <li>Obre l’exemple de la taula horària de la professora d'idiomes del final de l’article <a href="https://wiki.developer.mozilla.org/ca/docs/Learn/HTML/Taules_HTML/Fonaments_de_la_taula_HTML#Aprenentatge_actiu_colgroup_i_col">Fonaments bàsics de les taules HTML</a>, o fes una còpia local de l'arxiu <a href="https://github.com/mdn/learning-area/blob/master/html/tables/basic/timetable-fixed.html">timetable-fixed.html</a></li>
 <li>Afegeix un títol adequat a la taula.</li>
 <li>Desa el codi i obre’l en el navegador, i observa com es veu.</li>
</ol>

<div class="note">
<p><strong>Nota</strong>: Pots trobar a GitHub la nostra versió del fitxer <a href="https://github.com/mdn/learning-area/blob/master/html/tables/advanced/timetable-caption.html">timetable-caption.html</a>; i també el pots consultar en l’<a href="http://mdn.github.io/learning-area/html/tables/advanced/timetable-caption.html">exemple en viu</a>).</p>
</div>

<h2 id="Afegir_estructura_amb_&lt;thead>_&lt;tfoot>_i_&lt;tbody>">Afegir estructura amb &lt;thead&gt;, &lt;tfoot&gt; i &lt;tbody&gt;</h2>

<p>A mesura que l’estructura de les taules es fa més complexa, és útil aprofundir en la definició estructural. Una manera clara de fer això és amb l'ús de {{htmlelement("thead")}}, {{htmlelement("tfoot")}} i {{htmlelement("tbody")}}, que et permeten etiquetar les seccions de capçalera, peu i cos de la taula.</p>

<p>Aquests elements no fan la taula més accessible als usuaris de lectors de pantalla, i no proporcionen cap millora visual, però són molt útils per a l'aplicació d’estil i el disseny de pàgina web perquè actuen com «ganxos» amb què s’afegeix CSS a la taula. Podem esmentar com a exemples interessants que es repeteixin en cada pàgina impresa la capçalera i el peu de pàgina d’una taula molt llarga, o que el cos de la taula es mostri en una sola pàgina i el contingut disponible es pugui desplaçar amunt i avall.</p>

<p><span class="short_text" id="result_box" lang="ca">Per a utilitzar aquests elements cal tenir en compte el següent:</span></p>

<ul>
 <li>L'element <code>&lt;thead&gt;</code> ha d'etiquetar la part de la taula que és la capçalera; normalment és la primera fila, que conté les capçaleres de columna, però no sempre és així. Si utilitzes els elements {{htmlelement("col")}}/{{htmlelement("colgroup")}}, la capçalera de la taula hi ha de venir just a sota.</li>
 <li>L'element <code>&lt;tfoot&gt;</code> ha d'etiquetar la part de la taula que és el peu, que podria ser la fila del final, que conté la suma dels elements de les files anteriors, per exemple. Pots incloure el peu de taula a la part inferior de la taula, com es podria esperar, o just sota la capçalera de la taula (el navegador la mostrarà a la part inferior de la taula).</li>
 <li>L'element <code>&lt;tbody&gt;</code> ha d'etiquetar les altres parts del contingut de la taula que no estan a la capçalera ni al peu de taula. Apareix a sota de la capçalera de la taula, o de vegades a sota del peu de taula, segons com decideixis estructurar-la (consulta els articles anteriors).</li>
</ul>

<div class="note">
<p><strong>Nota</strong>: <code>&lt;tbody&gt;</code> sempre s'inclou implícitament en totes les taules, si no s'especifica en el codi. Per comprovar-ho, obre un dels exemples anteriors que no inclogui <code>&lt;tbody&gt;</code> i observa el codi HTML amb les <a href="/en-US/docs/Learn/Common_questions/What_are_browser_developer_tools">eines de desenvolupador del navegador</a>; observa que el navegador hi ha afegit aquesta etiqueta. Et podries demanar per què molestar-nos a incloure-la; s’ha de fer, perquè ens proporciona més control sobre l’estructura de la taula i l'estil.</p>
</div>

<h3 id="Aprenentatge_actiu_afegir_estructura_a_la_taula">Aprenentatge actiu: afegir estructura a la taula</h3>

<p>Posarem aquests elements nous en acció.</p>

<ol>
 <li>Primer de tot, fes una còpia local de <a href="https://github.com/mdn/learning-area/blob/master/html/tables/advanced/spending-record.html">spending-record.html</a> i <a href="https://github.com/mdn/learning-area/blob/master/html/tables/advanced/minimal-table.css">minimal-table.css</a> en una carpeta nova.</li>
 <li>Obre’l en un navegador; observa que no està malament, però es podria millorar. La fila «SUM» conté una suma de les quantitats que s’han gastat i no sembla que estigui en el lloc adequat, i falten alguns detalls de codi.</li>
 <li>Posa les capçaleres òbvies de fila dins d'un element <code>&lt;thead&gt;</code>, la fila «SUM» dins d'un element <code>&lt;tfoot&gt;</code>, i la resta del contingut dins d'un element <code>&lt;tbody&gt;</code>.</li>
 <li>Desa i actualitza, i observa que en afegir l'element <code>&lt;tfoot&gt;</code> la fila «SUM» s’ha col·locat a la part inferior de la taula.</li>
 <li>A continuació, afegeix un atribut {{htmlattrxref("colspan","td")}} perquè la cel·la «SUM» ocupi les quatre primeres columnes, de manera que el nombre aparegui a la part inferior de la columna «Cost».</li>
 <li>Afegeix una mica d'estil extra a la taula i observa la utilitat d’aplicar CSS a aquests elements. Observa que en la capçalera (<code>head</code>) del document HTML hi ha un element {{htmlelement("style")}} buit. Afegirem dins d'aquest element les línies de codi CSS següents:
  <pre class="brush: css notranslate">tbody {
  font-size: 90%;
  font-style: italic;
}

tfoot {
  font-weight: bold;
}
</pre>
 </li>
 <li>Desa i actualitza, i dona una ullada al resultat. Si els elements <code>&lt;tbody&gt;</code> i <code>&lt;tfoot&gt;</code> no estan a lloc, serà molt més complicat escriure selectors/regles i aplicar-los el mateix estil.</li>
</ol>

<div class="note">
<p><strong>Nota</strong>: No esperem que entenguis del tot el CSS en aquest moment. N’aprendràs més en els nostres mòduls dedicats al CSS (<a href="/ca/docs/Learn/CSS/First_steps">Introducció al CSS</a> és un bon lloc per on començar; també hi ha un article concret sobre <a href="/ca/docs/Learn/CSS/Building_blocks/Styling_tables">aplicar estil a les taules</a>).</p>
</div>

<p>La taula acabada ha de presentar un aspecte semblant a aquest:</p>

<div class="hidden">
<h6 id="Hidden_example">Hidden example</h6>

<pre class="brush: html notranslate">&lt;!DOCTYPE html&gt;
&lt;html&gt;
  &lt;head&gt;
    &lt;meta charset="utf-8"&gt;
    &lt;title&gt;My spending record&lt;/title&gt;
    &lt;style&gt;

        html {
          font-family: sans-serif;
        }

          table {
          border-collapse: collapse;
          border: 2px solid rgb(200,200,200);
          letter-spacing: 1px;
          font-size: 0.8rem;
        }

        td, th {
          border: 1px solid rgb(190,190,190);
          padding: 10px 20px;
        }

        th {
          background-color: rgb(235,235,235);
        }

        td {
          text-align: center;
        }

        tr:nth-child(even) td {
          background-color: rgb(250,250,250);
        }

        tr:nth-child(odd) td {
          background-color: rgb(245,245,245);
        }

        caption {
          padding: 10px;
        }

        tbody {
          font-size: 90%;
          font-style: italic;
        }

        tfoot {
          font-weight: bold;
        }
    &lt;/style&gt;
  &lt;/head&gt;
  &lt;body&gt;
      &lt;table&gt;
        &lt;caption&gt;How I chose to spend my money&lt;/caption&gt;
        &lt;thead&gt;
          &lt;tr&gt;
            &lt;th&gt;Purchase&lt;/th&gt;
            &lt;th&gt;Location&lt;/th&gt;
            &lt;th&gt;Date&lt;/th&gt;
            &lt;th&gt;Evaluation&lt;/th&gt;
            &lt;th&gt;Cost (€)&lt;/th&gt;
          &lt;/tr&gt;
        &lt;/thead&gt;
        &lt;tfoot&gt;
          &lt;tr&gt;
            &lt;td colspan="4"&gt;SUM&lt;/td&gt;
            &lt;td&gt;118&lt;/td&gt;
          &lt;/tr&gt;
        &lt;/tfoot&gt;
        &lt;tbody&gt;
          &lt;tr&gt;
            &lt;td&gt;Haircut&lt;/td&gt;
            &lt;td&gt;Hairdresser&lt;/td&gt;
            &lt;td&gt;12/09&lt;/td&gt;
            &lt;td&gt;Great idea&lt;/td&gt;
            &lt;td&gt;30&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
            &lt;td&gt;Lasagna&lt;/td&gt;
            &lt;td&gt;Restaurant&lt;/td&gt;
            &lt;td&gt;12/09&lt;/td&gt;
            &lt;td&gt;Regrets&lt;/td&gt;
            &lt;td&gt;18&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
            &lt;td&gt;Shoes&lt;/td&gt;
            &lt;td&gt;Shoeshop&lt;/td&gt;
            &lt;td&gt;13/09&lt;/td&gt;
            &lt;td&gt;Big regrets&lt;/td&gt;
            &lt;td&gt;65&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
            &lt;td&gt;Toothpaste&lt;/td&gt;
            &lt;td&gt;Supermarket&lt;/td&gt;
            &lt;td&gt;13/09&lt;/td&gt;
            &lt;td&gt;Good&lt;/td&gt;
            &lt;td&gt;5&lt;/td&gt;
          &lt;/tr&gt;
        &lt;/tbody&gt;
    &lt;/table&gt;

  &lt;/body&gt;
&lt;/html&gt;</pre>
</div>

<p>{{ EmbedLiveSample('Hidden_example', '100%', 300) }}</p>

<div class="note">
<p><strong>Nota</strong>: Pots trobar el fitxer a GitHub com <a href="https://github.com/mdn/learning-area/blob/master/html/tables/advanced/spending-record-finished.html">spending-record-finished.html</a> (i també consultar l’<a href="http://mdn.github.io/learning-area/html/tables/advanced/spending-record-finished.html">exemple en viu</a>).</p>
</div>

<h2 id="Taules_imbricades">Taules imbricades</h2>

<p>És possible imbricar una taula dins d'una altra, sempre que s'hi inclogui l'estructura completa, que inclou l'element <code>&lt;table&gt;</code>. No és en aconsellable en general perquè dona un marcatge més confús i menys accessible als usuaris de lectors de pantalla, i perquè en molts casos es pot resoldre afegint cel·les/files/columnes addicionals a la taula d’origen. Això no obstant, de vegades és necessari, per exemple, per a importar contingut fàcilment d'altres fonts.</p>

<p>El marcatge següent mostra una imbricació de taules senzilla:</p>

<pre class="brush: html notranslate">&lt;table id="table1"&gt;
  &lt;tr&gt;
    &lt;th&gt;title1&lt;/th&gt;
    &lt;th&gt;title2&lt;/th&gt;
    &lt;th&gt;title3&lt;/th&gt;
  &lt;/tr&gt;
  &lt;tr&gt;
    &lt;td id="nested"&gt;
      &lt;table id="table2"&gt;
        &lt;tr&gt;
          &lt;td&gt;cell1&lt;/td&gt;
          &lt;td&gt;cell2&lt;/td&gt;
          &lt;td&gt;cell3&lt;/td&gt;
        &lt;/tr&gt;
      &lt;/table&gt;
    &lt;/td&gt;
    &lt;td&gt;cell2&lt;/td&gt;
    &lt;td&gt;cell3&lt;/td&gt;
  &lt;/tr&gt;
  &lt;tr&gt;
    &lt;td&gt;cell4&lt;/td&gt;
    &lt;td&gt;cell5&lt;/td&gt;
    &lt;td&gt;cell6&lt;/td&gt;
  &lt;/tr&gt;
&lt;/table&gt;</pre>

<p>La sortida presenta aquest aspecte:</p>

<table id="table1">
 <tbody>
  <tr>
   <th>title1</th>
   <th>title2</th>
   <th>title3</th>
  </tr>
  <tr>
   <td id="nested">
    <table id="table2">
     <tbody>
      <tr>
       <td>cell1</td>
       <td>cell2</td>
       <td>cell3</td>
      </tr>
     </tbody>
    </table>
   </td>
   <td>cell2</td>
   <td>cell3</td>
  </tr>
  <tr>
   <td>cell4</td>
   <td>cell5</td>
   <td>cell6</td>
  </tr>
 </tbody>
</table>

<h2 id="Taules_per_a_usuaris_amb_discapacitats_visuals"><span class="short_text" id="result_box" lang="ca">Taules per a usuaris amb discapacitats visuals</span></h2>

<p>Recapitulem breument sobre com la manera de fer servir les taules de dades. Una taula pot ser una eina molt útil perquè ens dona un accés ràpid a les dades i ens permet buscar-hi valors. Per exemple, només cal un cop d'ull breu a la taula de sota per a esbrinar quants anells es van vendre a Gant (Gent) l'agost passat. Per a entendre la informació, fem associacions visuals entre les dades i les capçaleres de les files i columnes d'aquesta taula.</p>

<table>
 <caption>Items Sold August 2016</caption>
 <tbody>
  <tr>
   <td></td>
   <td></td>
   <th colspan="3" scope="colgroup">Clothes</th>
   <th colspan="2" scope="colgroup">Accessories</th>
  </tr>
  <tr>
   <td></td>
   <td></td>
   <th scope="col">Trouses</th>
   <th scope="col">Skirts</th>
   <th scope="col">Dresses</th>
   <th scope="col">Bracelets</th>
   <th scope="col">Rings</th>
  </tr>
  <tr>
   <th rowspan="3" scope="rowgroup">Belgium</th>
   <th scope="row">Antwerp</th>
   <td>56</td>
   <td>22</td>
   <td>43</td>
   <td>72</td>
   <td>23</td>
  </tr>
  <tr>
   <th scope="row">Gent</th>
   <td>46</td>
   <td>18</td>
   <td>50</td>
   <td>61</td>
   <td>15</td>
  </tr>
  <tr>
   <th scope="row">Brussels</th>
   <td>51</td>
   <td>27</td>
   <td>38</td>
   <td>69</td>
   <td>28</td>
  </tr>
  <tr>
   <th rowspan="2" scope="rowgroup">The Netherlands</th>
   <th scope="row">Amsterdam</th>
   <td>89</td>
   <td>34</td>
   <td>69</td>
   <td>85</td>
   <td>38</td>
  </tr>
  <tr>
   <th scope="row">Utrecht</th>
   <td>80</td>
   <td>12</td>
   <td>43</td>
   <td>36</td>
   <td>19</td>
  </tr>
 </tbody>
</table>

<p>Però... i si no pots fer associacions visuals? Com es pot llegir una taula com l'anterior, llavors? Les persones que tenen alguna discapacitat visual sovint utilitzen lectors de pantalla que els llegeixen la informació de les pàgines web. Això no és cap problema quan es llegeix text sense format, però la interpretació d'una taula pot ser tot un repte per a una persona cega. Tanmateix, amb el marcatge adequat, les associacions visuals es poden substituir per unes de programàtiques.</p>

<p>En aquesta secció de l'article t'oferim tècniques que confereixen a les taules una accessibilitat màxima.</p>

<h3 class="attTitle" id="Utilitza_capçaleres_per_a_les_files_i_les_columnes"><span class="short_text" id="result_box" lang="ca">Utilitza capçaleres per a les files i les columnes</span></h3>

<p>Els lectors de pantalla identifiquen totes les capçaleres i les utilitzen per a fer associacions programàtiques entre les capçaleres i les cel·les amb què es relacionen. La combinació de les capçaleres de les files i les columnes identifica i interpreta les dades que hi ha en cada cel·la perquè l'usuari lector de pantalla pugui interpretar la taula de manera similar a com ho fa un usuari sense discapacitats visuals.</p>

<p>Ja hem exposat les capçaleres en l’article anterior; consulta <a href="https://wiki.developer.mozilla.org/ca/docs/Learn/HTML/Taules_HTML/Fonaments_de_la_taula_HTML#Afegeix_cap%C3%A7aleres_amb_elements_%3Cth%3E">Afegir capçaleres amb elements &lt;th&gt;</a>.</p>

<h3 class="attTitle" id="Latribut_scope">L'atribut scope</h3>

<p>Un tema nou d'aquest article és l'atribut {{htmlattrxref("scope","th")}}, que s’afegeix a l'element <code>&lt;th&gt;</code> i informa els lectors de pantalla exactament de quines cel·les són capçalera les cel·les de capçalera; per exemple, la capçalera és de la fila o de la columna en què es troba? Si tornem enrere al nostre exemple de registre de despeses, les capçaleres de columna es podrien definir sense ambigüitats com capçaleres de columna de la manera següent:</p>

<pre class="brush: html notranslate">&lt;thead&gt;
  &lt;tr&gt;
    &lt;th scope="col"&gt;Purchase&lt;/th&gt;
    &lt;th scope="col"&gt;Location&lt;/th&gt;
    &lt;th scope="col"&gt;Date&lt;/th&gt;
    &lt;th scope="col"&gt;Evaluation&lt;/th&gt;
    &lt;th scope="col"&gt;Cost (€)&lt;/th&gt;
  &lt;/tr&gt;
&lt;/thead&gt;</pre>

<p>I cada fila podria tenir una capçalera definida de la mateixa manera (si afegíssim capçaleres a les files, a més de les capçaleres de columna):</p>

<pre class="brush: html notranslate">&lt;tr&gt;
  &lt;th scope="row"&gt;Haircut&lt;/th&gt;
  &lt;td&gt;Hairdresser&lt;/td&gt;
  &lt;td&gt;12/09&lt;/td&gt;
  &lt;td&gt;Great idea&lt;/td&gt;
  &lt;td&gt;30&lt;/td&gt;
&lt;/tr&gt;</pre>

<p>Els lectors de pantalla reconeixen un marcatge estructurat com aquest i permeten als usuaris llegir tota una columna o tota una fila alhora, per exemple.</p>

<p><code>scope</code> té dos valors possibles més; <code>colgroup</code> i <code>rowgroup</code>. S'utilitzen per als títols que es col·loquen a la part superior de diverses columnes o files. Si tornem enrere a la taula d’exemple dels articles venuts l’agost del 2016 (Items Sold August 2016) que hi ha al començament d'aquesta secció de l'article, pots observar que la cel·la «Clothes» fa de capçalera de les cel·les «Trousers», «Skirts» i «Dresses». Totes aquestes cel·les haurien de marcar-se com capçaleres (<code>&lt;th&gt;</code>), però «Clothes» és un títol de nivell superior i defineix els altres tres subtítols. Per tant, «Clothes» ha de tenir un atribut <code>scope="colgroup"</code>, mentre que les altres tindrien un atribut <code>scope="col"</code>.</p>

<h3 class="attTitle" id="Els_atributs_id_i_headers">Els atributs id i headers</h3>

<p>Una alternativa a l'ús de l'atribut <code>scope</code> és utilitzar els atributs {{htmlattrxref("id")}} i {{htmlattrxref("headers", "td")}} per a crear associacions entre les capçaleres i les cel·les. La forma en què s'utilitzen és la següent:</p>

<ol>
 <li>Afegeix un <code>id</code> únic per a cada element <code>&lt;th&gt;</code>.</li>
 <li>Afegeix un atribut <code>headers</code> per a cada element <code>&lt;td&gt;</code>. Cada atribut <code>headers</code> ha d’incloure una llista dels <code>id</code> de tots els elements <code>&lt;th&gt;</code> que actuen de capçalera per a aquesta cel·la, separats per espais.</li>
</ol>

<p>Això dona a la taula HTML una definició explícita de la posició de cada cel·la de la taula, definida per les capçaleres de cada columna i de cada fila de què forma part, de manera semblant a un full de càlcul. Perquè funcioni bé, la taula necessita les dues capçaleres, de fila i de columna.</p>

<p>Tornem al nostre exemple de les despeses; dos fragments anteriors es podrien reescriure així:</p>

<pre class="brush: html notranslate">&lt;thead&gt;
  &lt;tr&gt;
    &lt;th id="purchase"&gt;Purchase&lt;/th&gt;
    &lt;th id="location"&gt;Location&lt;/th&gt;
    &lt;th id="date"&gt;Date&lt;/th&gt;
    &lt;th id="evaluation"&gt;Evaluation&lt;/th&gt;
    &lt;th id="cost"&gt;Cost (€)&lt;/th&gt;
  &lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
  &lt;th id="haircut"&gt;Haircut&lt;/th&gt;
  &lt;td headers="location haircut"&gt;Hairdresser&lt;/td&gt;
  &lt;td headers="date haircut"&gt;12/09&lt;/td&gt;
  &lt;td headers="evaluation haircut"&gt;Great idea&lt;/td&gt;
  &lt;td headers="cost haircut"&gt;30&lt;/td&gt;
&lt;/tr&gt;

  ...

&lt;/tbody&gt;</pre>

<div class="note">
<p><strong>Nota</strong>: Aquest mètode crea associacions molt precises entre les capçaleres i les cel·les de dades però utilitza <strong>molt</strong> més etiquetatge i no deixa gens d’espai per a errors. L'enfocament de <code>scope</code> sol ser prou per a la majoria de les taules.</p>
</div>

<h3 id="Aprenentatge_actiu_Juga_amb_l’scope_i_les_capçaleres">Aprenentatge actiu: Juga amb l’scope i les capçaleres</h3>

<ol>
 <li>Per a aquest exercici final, et proposem de fer, primer, còpies locals dels fitxers <a href="https://github.com/mdn/learning-area/blob/master/html/tables/advanced/items-sold.html">items-sold.html</a> i <a href="https://github.com/mdn/learning-area/blob/master/html/tables/advanced/minimal-table.css">minimal-table.css</a>, en un directori nou.</li>
 <li>A continuació, afegeix els atributs <code>scope</code> apropiats per a fer aquesta taula més adequada.</li>
 <li>Per acabar, fes una altra còpia dels fitxers inicials i millora l’accessibilitat de la taula utilitzant els atributs <code>id</code> i <code>header</code>.</li>
</ol>

<div class="note">
<p><strong>Nota</strong>: Pots verificar el teu treball comparant-lo amb els nostres exemples acabats, que pots consultar a <a href="https://github.com/mdn/learning-area/blob/master/html/tables/advanced/items-sold-scope.html">items-sold-scope.html</a> (o també consultar l’<a href="http://mdn.github.io/learning-area/html/tables/advanced/items-sold-scope.html">exemple en viu</a>) i <a href="https://github.com/mdn/learning-area/blob/master/html/tables/advanced/items-sold-headers.html">items-sold-headers.html</a> (o també consultar l’<a href="http://mdn.github.io/learning-area/html/tables/advanced/items-sold-headers.html">exemple en viu</a>).</p>
</div>

<h2 id="Resum">Resum</h2>

<p>Es poden aprendre més coses sobre les taules en HTML, però de fet t’hem proporcionat tot el que et cal saber ara mateix. En aquest punt, pot ser que vulguis aprendre com aplicar estil a les taules HTML; ves a l’article <a href="/ca/docs/Learn/CSS/Building_blocks/Styling_tables">Aplicar estil a les taules</a>.</p>

<div>{{PreviousMenuNext("Learn/HTML/Tables/Basics", "Learn/HTML/Tables/Structuring_planet_data", "Learn/HTML/Tables")}}</div>