Skip to content

Commit cd15313

Browse files
authored
Don't emit unnecessary classes in HTML tables (#9376)
Pandoc used to emit a `header` class on the `tr` element that forms the table header. This is no longer needed, because `head > tr` will do the same thing. Similarly, pandoc used to emit `even` and `odd` classes on `tr`s, allowing striped styling. This is no longer needed, because one can use e.g. `tbody tr:nth-child(2n)`. We now omit these classes, which have a good chance of conflicting with classes used for other things. Closes #9325.
1 parent bfb0475 commit cd15313

35 files changed

+197
-203
lines changed

src/Text/Pandoc/Writers/HTML.hs

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1264,12 +1264,6 @@ tableRowToHtml :: PandocMonad m
12641264
-> TableRow
12651265
-> StateT WriterState m Html
12661266
tableRowToHtml opts (TableRow tblpart attr rownum rowhead rowbody) = do
1267-
let rowclass = case rownum of
1268-
Ann.RowNumber x | x `rem` 2 == 1 -> "odd"
1269-
_ | tblpart /= Thead -> "even"
1270-
_ -> "header"
1271-
let attr' = case attr of
1272-
(id', classes, rest) -> (id', rowclass:classes, rest)
12731267
let celltype = case tblpart of
12741268
Thead -> HeaderCell
12751269
_ -> BodyCell

test/command/1166.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -17,28 +17,28 @@ col 1 col 2
1717
^D
1818
<table>
1919
<thead>
20-
<tr class="header">
20+
<tr>
2121
<th>col 1</th>
2222
<th>col 2</th>
2323
</tr>
2424
</thead>
2525
<tbody>
26-
<tr class="odd">
26+
<tr>
2727
<td>1</td>
2828
<td>Second column of row 1.</td>
2929
</tr>
30-
<tr class="even">
30+
<tr>
3131
<td><p>2</p></td>
3232
<td><p>Second column of row 2. Second line of paragraph.</p></td>
3333
</tr>
34-
<tr class="odd">
34+
<tr>
3535
<td><p>3</p></td>
3636
<td><ul>
3737
<li>Second column of row 3.</li>
3838
<li>Second item in bullet list (row 3, column 2).</li>
3939
</ul></td>
4040
</tr>
41-
<tr class="even">
41+
<tr>
4242
<td></td>
4343
<td>Row 4; column 1 will be empty.</td>
4444
</tr>

test/command/1881.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,15 +3,15 @@
33
<table>
44
<caption>Demonstration of simple table syntax.</caption>
55
<thead>
6-
<tr class="header">
6+
<tr>
77
<th align="right">Right</th>
88
<th align="left">Left</th>
99
<th align="center">Center</th>
1010
<th>Default</th>
1111
</tr>
1212
</thead>
1313
<tbody>
14-
<tr class="odd">
14+
<tr>
1515
<td align="right">12</td>
1616
<td align="left">12</td>
1717
<td align="center">12</td>
@@ -111,7 +111,7 @@
111111
```
112112
% pandoc -f html -t native
113113
<table>
114-
<tr class="odd">
114+
<tr>
115115
<td style="text-align: right;">12</td>
116116
<td style="text-align:left;">12</td>
117117
<td style="text-align: center">12</td>

test/command/2606.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
^D
77
<table>
88
<tbody>
9-
<tr class="odd">
9+
<tr>
1010
<td><p>* hello</p></td>
1111
</tr>
1212
</tbody>
@@ -22,7 +22,7 @@
2222
^D
2323
<table>
2424
<tbody>
25-
<tr class="odd">
25+
<tr>
2626
<td><ul>
2727
<li>hello</li>
2828
</ul></td>
@@ -40,7 +40,7 @@
4040
^D
4141
<table>
4242
<tbody>
43-
<tr class="odd">
43+
<tr>
4444
<td><p><code>* hello</code></p></td>
4545
</tr>
4646
</tbody>

test/command/2649.md

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
^D
88
<table>
99
<tbody>
10-
<tr class="odd">
10+
<tr>
1111
</tr>
1212
</tbody>
1313
</table>
@@ -31,24 +31,24 @@
3131
^D
3232
<table>
3333
<tbody>
34-
<tr class="odd">
34+
<tr>
3535
<td><p>peildatum Simbase</p></td>
3636
<td><p>november 2005</p></td>
3737
<td colspan="2"><p><strong>uitslagen Flohrgambiet</strong></p></td>
3838
</tr>
39-
<tr class="even">
39+
<tr>
4040
<td><p>totaal aantal partijen Simbase</p></td>
4141
<td><p>7.316.773</p></td>
4242
<td><p>wit wint</p></td>
4343
<td><p>53%</p></td>
4444
</tr>
45-
<tr class="odd">
45+
<tr>
4646
<td><p>percentage (en partijen) Flohrgambiet</p></td>
4747
<td><p>0.023 % (1.699)</p></td>
4848
<td><p>zwart wint</p></td>
4949
<td><p>27%</p></td>
5050
</tr>
51-
<tr class="even">
51+
<tr>
5252
<td><p>percentage Flohrgambiet in aug 2003</p></td>
5353
<td><p>0.035 %</p></td>
5454
<td><p>remise</p></td>
@@ -80,26 +80,26 @@
8080
^D
8181
<table>
8282
<thead>
83-
<tr class="header">
83+
<tr>
8484
<th><p>Plaats</p></th>
8585
<th><p>Rijder</p></th>
8686
<th><p>Aantal</p></th>
8787
</tr>
8888
</thead>
8989
<tbody>
90-
<tr class="odd">
90+
<tr>
9191
<td><p>1</p></td>
9292
<td style="text-align: left;"><p><a href="Sébastien_Loeb"
9393
title="wikilink">Sébastien Loeb</a></p></td>
9494
<td><p>78</p></td>
9595
</tr>
96-
<tr class="even">
96+
<tr>
9797
<td><p>2</p></td>
9898
<td style="text-align: left;"><p><strong><a href="Sébastien_Ogier"
9999
title="wikilink">Sébastien Ogier</a></strong></p></td>
100100
<td><p>38</p></td>
101101
</tr>
102-
<tr class="odd">
102+
<tr>
103103
<td><p>10</p></td>
104104
<td style="text-align: left;"><p><a href="Hannu_Mikkola"
105105
title="wikilink">Hannu Mikkola</a></p></td>

test/command/3314.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,12 +18,12 @@ See #3315 and <http://docutils.sourceforge.net/docs/ref/rst/restructuredtext.htm
1818
<col style="width: 15%" />
1919
</colgroup>
2020
<tbody>
21-
<tr class="odd">
21+
<tr>
2222
<td>First</td>
2323
<td>12.0</td>
2424
<td>Example row spanning lines</td>
2525
</tr>
26-
<tr class="even">
26+
<tr>
2727
<td>Second</td>
2828
<td>5.0</td>
2929
<td>Another</td>

test/command/3432.md

Lines changed: 22 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -28,24 +28,24 @@ List-table with header-rows and widths options.
2828
<col style="width: 54%" />
2929
</colgroup>
3030
<thead>
31-
<tr class="header">
31+
<tr>
3232
<th>Treat</th>
3333
<th>Quantity</th>
3434
<th>Description</th>
3535
</tr>
3636
</thead>
3737
<tbody>
38-
<tr class="odd">
38+
<tr>
3939
<td>Albatross</td>
4040
<td>2.99</td>
4141
<td>On a stick!</td>
4242
</tr>
43-
<tr class="even">
43+
<tr>
4444
<td>Crunchy Frog</td>
4545
<td>1.49</td>
4646
<td>If we took the bones out, it wouldn't be crunchy, now would it?</td>
4747
</tr>
48-
<tr class="odd">
48+
<tr>
4949
<td>Gannet Ripple</td>
5050
<td>1.99</td>
5151
<td>On a stick!</td>
@@ -79,24 +79,24 @@ List-table whose widths is "auto".
7979
<table>
8080
<caption>Frozen Delights!</caption>
8181
<thead>
82-
<tr class="header">
82+
<tr>
8383
<th>Treat</th>
8484
<th>Quantity</th>
8585
<th>Description</th>
8686
</tr>
8787
</thead>
8888
<tbody>
89-
<tr class="odd">
89+
<tr>
9090
<td>Albatross</td>
9191
<td>2.99</td>
9292
<td>On a stick!</td>
9393
</tr>
94-
<tr class="even">
94+
<tr>
9595
<td>Crunchy Frog</td>
9696
<td>1.49</td>
9797
<td>If we took the bones out, it wouldn't be crunchy, now would it?</td>
9898
</tr>
99-
<tr class="odd">
99+
<tr>
100100
<td>Gannet Ripple</td>
101101
<td>1.99</td>
102102
<td>On a stick!</td>
@@ -130,24 +130,24 @@ List-table with header-rows which is bigger than 1. Only the first row is treate
130130
<table>
131131
<caption>Frozen Delights!</caption>
132132
<thead>
133-
<tr class="header">
133+
<tr>
134134
<th>Treat</th>
135135
<th>Quantity</th>
136136
<th>Description</th>
137137
</tr>
138138
</thead>
139139
<tbody>
140-
<tr class="odd">
140+
<tr>
141141
<td>Albatross</td>
142142
<td>2.99</td>
143143
<td>On a stick!</td>
144144
</tr>
145-
<tr class="even">
145+
<tr>
146146
<td>Crunchy Frog</td>
147147
<td>1.49</td>
148148
<td>If we took the bones out, it wouldn't be crunchy, now would it?</td>
149149
</tr>
150-
<tr class="odd">
150+
<tr>
151151
<td>Gannet Ripple</td>
152152
<td>1.99</td>
153153
<td>On a stick!</td>
@@ -176,17 +176,17 @@ List-table without header-rows.
176176
<table>
177177
<caption>Frozen Delights!</caption>
178178
<tbody>
179-
<tr class="odd">
179+
<tr>
180180
<td>Albatross</td>
181181
<td>2.99</td>
182182
<td>On a stick!</td>
183183
</tr>
184-
<tr class="even">
184+
<tr>
185185
<td>Crunchy Frog</td>
186186
<td>1.49</td>
187187
<td>If we took the bones out, it wouldn't be crunchy, now would it?</td>
188188
</tr>
189-
<tr class="odd">
189+
<tr>
190190
<td>Gannet Ripple</td>
191191
<td>1.99</td>
192192
<td>On a stick!</td>
@@ -219,24 +219,24 @@ List-table with empty cells. You need a space after '-', otherwise the row will
219219
<table>
220220
<caption>Frozen Delights!</caption>
221221
<thead>
222-
<tr class="header">
222+
<tr>
223223
<th>Treat</th>
224224
<th>Quantity</th>
225225
<th>Description</th>
226226
</tr>
227227
</thead>
228228
<tbody>
229-
<tr class="odd">
229+
<tr>
230230
<td>Albatross</td>
231231
<td>2.99</td>
232232
<td></td>
233233
</tr>
234-
<tr class="even">
234+
<tr>
235235
<td>Crunchy Frog</td>
236236
<td></td>
237237
<td>If we took the bones out, it wouldn't be crunchy, now would it?</td>
238238
</tr>
239-
<tr class="odd">
239+
<tr>
240240
<td>Gannet Ripple</td>
241241
<td>1.99</td>
242242
<td>On a stick!</td>
@@ -266,20 +266,20 @@ List-table with a cell having a bulletlist
266266
<table>
267267
<caption>Frozen Delights!</caption>
268268
<tbody>
269-
<tr class="odd">
269+
<tr>
270270
<td>Albatross</td>
271271
<td>2.99</td>
272272
<td><ul>
273273
<li>On a stick!</li>
274274
<li>In a cup!</li>
275275
</ul></td>
276276
</tr>
277-
<tr class="even">
277+
<tr>
278278
<td>Crunchy Frog</td>
279279
<td>1.49</td>
280280
<td>If we took the bones out, it wouldn't be crunchy, now would it?</td>
281281
</tr>
282-
<tr class="odd">
282+
<tr>
283283
<td>Gannet Ripple</td>
284284
<td>1.99</td>
285285
<td>On a stick!</td>

test/command/3494.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -14,22 +14,22 @@
1414
^D
1515
<table>
1616
<tbody>
17-
<tr class="odd">
17+
<tr>
1818
<td style="text-align: right;"><span><strong>ﺍ</strong></span></td>
1919
<td style="text-align: left;"></td>
2020
<td style="text-align: left;"></td>
2121
</tr>
22-
<tr class="even">
22+
<tr>
2323
<td style="text-align: right;"><strong>ﺄﺤﺴﻨﺘـ(ﻭﺍ) IV</strong></td>
2424
<td style="text-align: left;"><em><span>ʾaḥsant(ū)</span></em></td>
2525
<td style="text-align: left;">thank you</td>
2626
</tr>
27-
<tr class="odd">
27+
<tr>
2828
<td style="text-align: right;"><em>blah</em></td>
2929
<td style="text-align: left;"><em>blah</em></td>
3030
<td style="text-align: left;"><em>blah</em></td>
3131
</tr>
32-
<tr class="even">
32+
<tr>
3333
<td style="text-align: right;">blah</td>
3434
<td style="text-align: left;">blah</td>
3535
<td style="text-align: left;">blah</td>

test/command/3499.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ Org-mode tables can't be on the same line as list markers:
99
<li>|something|</li>
1010
<li><table>
1111
<tbody>
12-
<tr class="odd">
12+
<tr>
1313
<td>else</td>
1414
</tr>
1515
</tbody>

test/command/3667.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
^D
55
<table>
66
<tbody>
7-
<tr class="odd">
7+
<tr>
88
<td><a href="http://example.com/">link text</a></td>
99
</tr>
1010
</tbody>

0 commit comments

Comments
 (0)