如何获得制表符?

在 HTML 中,没有用于制表符的字符,但是我很困惑为什么我可以在这里复制和粘贴一个: 。(你看不到它的全宽,但如果你点击编辑我的问题,你会看到字符。)如果我可以复制和粘贴制表符,那么应该有一个 Unicode 等价物可以被编码成 html。我知道它不存在,但这是一个我永远无法理解的谜。

所以我的问题是: 为什么即使我可以复制粘贴标签,却没有一个 Unicode字符?

400044 次浏览

当然,有一个用于制表符的实体:

	

(选项卡是 ASCII 字符9,或 Unicode U + 0009。)

然而,就像文字制表符(您在文本编辑器中输入的制表符)一样,HTML 解析器将所有制表符视为空格,并将其折叠为一个空格除了 <pre>块中的制表符之外,其中文字制表符将以单一空格字体呈现为 8个空格

选项卡是[ HT ] ,即 Unicode 库中的字符号9。

把它放在 <pre></pre>标签之间,然后使用这个字符 &#9;

没有 <pre></pre>标签它就不能工作

张贴另一个选择,以便更加完整。当我尝试“预先”为基础的答案,他们增加了额外的垂直断行以及。

每个选项卡可以转换为不需要换行的序列非中断空格。

"&nbsp;&nbsp;&nbsp;&nbsp;"

不建议在页面中重复或广泛使用这种方法。

试试 &emsp;

根据文件:

字符实体 &ensp;&emsp;表示一个 en 空格和一个 em 空间,其中 en 空间为点大小的一半,em 空间为 空间等于当前字体的点大小。对于固定的间距 字体,用户代理可以将 en 空格等效为 A 空间特征,而 em 空间等价于两个空间 角色。

文档链接: https://www.w3.org/MarkUp/html3/specialchars.html

我使用 <span style="display: inline-block; width: 2ch;">&#9;</span>作为两个字符宽的选项卡。

如前所述,出于效率的原因,顺序空间被合并为浏览器实际显示的一个空间。记住 HTML 中的 ML 代表什么。它是一种标记语言,旨在控制文本的显示方式。.不是空格: p

不过,您可以假装浏览器尊重选项卡,因为 TAB 所做的一切就是预置4个空格,这对 CSS 来说很容易。要么排队..。

 <div style="padding-left:4.00em;">Indenented text </div>

或者作为样式表中的常规类

.tabbed {padding-left:4.00em;}

那么 HTML 可能看起来像

<p>regular paragraph regular paragraph regular paragraph</p>
<p class="tabbed">Indented text Indented text Indented text</p>
<p>regular paragraph regular paragraph regular paragraph</p>