<!DOCTYPE html>
<html lang="en">
<head>
<style>
tbody:empty::after { content: 'empty'; }
</style>
</head>
<body>
<table>
<tbody>text </tbody> <!-- output: "text " (newline) "empty" -->
<!-- <tbody>text</tbody> <!-- output: "text" (newline) "empty" -->
<!-- <tbody></tbody> <!-- output: "empty" -->
<!-- <tbody> </tbody> <!-- output: "" -->
<!-- <tbody><p></tbody> <!-- output: "empty" -->
<!-- <tbody><tr><td></td></tr></tbody> <!-- output: "" -->
</table>
</body>
</html>
这根本不直观。
“text”测试为空 “文本”测试为空 “”测试为空 “”测试不是空的 “&lt; tr&gt;&lt; td&gt;&lt; / td&gt;&lt; / tr&gt;”测试不是空的 “&lt; p&gt;”测试为空
所以基本上除了所有空格(或表标签)以外的任何东西都测试为空。 这有多倒退? 我希望“”和“”测试为空。或者除了有效标签之外的其他任何东西,以便测试为空。 但是对于文本测试为空而空白测试为非空,是疯了。 适用于至少IE11和Chrome。可能也是其他浏览器。
这是问题所在。在这种情况下,如何对所有空格体进行测试并注入内容?