使用类似于 word 的 html 中的符号可视化换行符和段落符

2024-01-21

是否有可能在 html 中像在 word 中一样可视化换行符和段落符符号?


据我所知,答案是是和否仅适用于 CSS,yes用于 CSS 和 JavaScript。

对于该段落的结尾,::after选择器来拯救:

p::after {
  content: "¶";
  color: #6495ED;
}
<p>This is a pragraph.</p>
<p>Here goes another paragraph.</p>

然而,这并不能可靠地工作<br>,除非您想使用 JavaScript(见下文)。
检查这些问题以获取有关该问题的更多详细信息:

  • “你能瞄准<br \>用CSS?” https://stackoverflow.com/questions/899252/can-you-target-br-with-css
  • “换行符(例如<br>)仅使用 CSS” https://stackoverflow.com/questions/10933837/line-break-like-br-using-only-css

仅 CSS(不跨浏览器兼容)

这个仅 CSS 的解决方案适用于以下浏览器 (Windows 10):
Chrome 56 和 Opera 43。它不适用于 Firefox 51、IE 11 或 Edge 38。

br {
  content: " ";
}

br::after {
  content: "↵\a";
  white-space: pre;
  color: #6495ED;
}

p::after {
  content: "¶";
  color: #6495ED;
}
<p>This is a pragraph with two sentences.<br>This is the second sentence, it follows a line break.</p>
<p>Here goes another paragraph.</p>

CSS 和 JavaScript 解决方案(跨浏览器)

如果您可以使用 JavaScript,这里是我的普通方法。
免责声明:我对 JS 没有经验,也许有更好的方法。
对我来说,这适用于上面提到的所有浏览器。

var spanbr = document.createElement("span");
spanbr.className = "br";

var brs = document.getElementsByTagName("br");

for (var i = 0; i < brs.length; ++i) {
  brs[i].parentElement.insertBefore(spanbr, brs[i]);
}
.br::after {
  content: "↵";
  color: #6495ED;
}

p::after {
  content: "¶";
  color: #6495ED;
}
<p>This is a pragraph with two sentences.<br>This is the second sentence, it follows a line break.</p>
<p>Here goes another paragraph.</p>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用类似于 word 的 html 中的符号可视化换行符和段落符 的相关文章

随机推荐