浏览器在表格中添加重复的标题元素
Browsers adding duplicate caption element in tables
我有这个简单的 html table:
<!DOCTYPE html>
<html lang="pt" >
<head>
<style>
caption {margin-bottom: 24px}
</style>
</head>
<body>
<table>
<caption>My caption<caption>
<tr><td>a</td><td>1</td></tr>
<tr><td>b</td><td>2</td></tr>
<tr><td>c</td><td>3</td></tr>
<tr><td>d</td><td>4</td></tr>
</table>
</body></html>
现在在 Chrome 和 Firefox 中使用 "inspect element"(尚未在其他浏览器中测试),我发现这两种浏览器都在代码中插入了一个额外的空标题标签,位于原始标签下方。
现在,如上例所示,我在标题元素上有一个边距,在 Chrome 中,边距重复了,所以我得到了 48 像素的底部边距,而不是所需的 24 像素,因为它应用于两个标题标签,但在 Firefox 中,边距不应用于空标题,因此结果边距为 24px。
那么为什么浏览器会插入这个空的标题标签?
这是因为您没有关闭 <caption>
元素。当浏览器看到它时,它会插入附加标签。
caption {
margin-bottom: 24px
}
<table>
<caption>My caption</caption>
<tr>
<td>a</td>
<td>1</td>
</tr>
<tr>
<td>b</td>
<td>2</td>
</tr>
<tr>
<td>c</td>
<td>3</td>
</tr>
<tr>
<td>d</td>
<td>4</td>
</tr>
</table>
我有这个简单的 html table:
<!DOCTYPE html>
<html lang="pt" >
<head>
<style>
caption {margin-bottom: 24px}
</style>
</head>
<body>
<table>
<caption>My caption<caption>
<tr><td>a</td><td>1</td></tr>
<tr><td>b</td><td>2</td></tr>
<tr><td>c</td><td>3</td></tr>
<tr><td>d</td><td>4</td></tr>
</table>
</body></html>
现在在 Chrome 和 Firefox 中使用 "inspect element"(尚未在其他浏览器中测试),我发现这两种浏览器都在代码中插入了一个额外的空标题标签,位于原始标签下方。
现在,如上例所示,我在标题元素上有一个边距,在 Chrome 中,边距重复了,所以我得到了 48 像素的底部边距,而不是所需的 24 像素,因为它应用于两个标题标签,但在 Firefox 中,边距不应用于空标题,因此结果边距为 24px。
那么为什么浏览器会插入这个空的标题标签?
这是因为您没有关闭 <caption>
元素。当浏览器看到它时,它会插入附加标签。
caption {
margin-bottom: 24px
}
<table>
<caption>My caption</caption>
<tr>
<td>a</td>
<td>1</td>
</tr>
<tr>
<td>b</td>
<td>2</td>
</tr>
<tr>
<td>c</td>
<td>3</td>
</tr>
<tr>
<td>d</td>
<td>4</td>
</tr>
</table>