是否可以在HTML中插入一个制表符,而不必键入 四次吗?


当前回答

p {background-color: #FFEEEE;保证金:0;填充:0.5em 0;} < span style=" font - family:宋体;tab-size: 4 " > & # 9 # 9 & # 9←←一个选项卡两个标签# 9 & # 9 & # 9←三个标签# 9 & # 9 & # 9 & # 9←四个选项卡。< / p > < span style=" font - family:宋体;tab-size: 4">←这是一个字符 < span style=" font - family:宋体;</p> . tab-size: 42">&#9←This one has come out too far.</p> . < span style=" font - family:宋体;tab-size: 8">&#9←说!</p>

太懒了;没有“运行代码”):

通过输入&#9在文本中插入制表符,或者(如果您确定文档是UTF-8编码的)按下制表键! 添加空白:预换行;到文本元素的CSS规则,以阻止空格字符(包括制表符)折叠。 添加tab-size: 4;到你的文本元素的CSS规则,以确保你的制表符宽度等于四个标准空格字符。

(在众多的回答和评论中,每一件事都有一些片段和线索,但没有一个像它的措辞那样把它们放在一起来回答这个问题。)

编辑:不幸的是,堆栈代码段将我的Unicode制表符转换为空格!因此,演示的这一部分(第2行)不起作用。如果通过代码格式化器运行代码,可能会遇到类似的问题。&#9避免了这些问题。

其他回答

阿菲克,唯一的办法就是使用

&nbsp;

如果你可以使用CSS,那么你可以使用填充或边距。参看Box模型,而对于ie浏览器,也可参阅ie浏览器的Box模型bug。

尽管在HTML3中引入了<tab>标签,但它从未进入浏览器。我一直认为这是一种遗憾,因为如果我们拥有它,在许多情况下生活会轻松得多。但是你可以很容易地纠正这个错误,给你一个假的<tab>标签。在你的HTML头部或CSS中添加以下内容(没有样式标签):

<style>
    tab { padding-left: 4em; }
</style>

从那时起,当你需要在你的文档中添加一个选项卡时,把<tab>放在那里。它不是一个真正的制表符,因为它不与制表符标记对齐,但它可以满足大多数需求,而不必为笨拙的字符实体或跨度而犹豫不决。它使检查源代码变得非常容易,并且在你不想使用表格或其他更复杂的“解决方案”的地方格式化简单的东西。

这个解决方案的一个优点是,您可以快速搜索/替换文本文档,用<tab>标记替换所有tab。

你可以定义一堆真正的绝对位置制表符,然后在需要的地方使用适当的制表符(例如<tab2>或<tab5>或其他),但我还没有找到一种方法来做到这一点,而不缩进后续行。

&ampnbsp单位与字体大小有关。为了理解这种依赖关系,使用CSS/HTML方法考虑em和rem度量单位。

CSS

.tab { margin-left: 1rem; }

HTML

<div class=“tab> ...p and h elements... </div>

显示

1em约等于4 &nbsp;但是,Em unit和&ampnbsp rem unit的显示取决于元素和样式的使用,像这样缩进。

--------h1 indented 1em
--p indented 1em
----h1 indented 1rem
----p indented 1rem

左边距和左填充都有效。在HTML或CSS中没有标签长度单位。可以使用.tab类选择器。

下面是HTML提供的插入空白的3种不同方法

类型,要添加单个空格。 类型&ensp;加两个空格。 类型&emsp;加4个空格。

不,就HTML而言,Tab只是空白。我推荐一个这么大的em-space(→| |←)…通常是4个空格宽,输入为&emsp;

如果幸运的话,您甚至可以使用Unicode字符(" ")来表示它。

下面是Unicode中空格字符和“零宽度空格”的列表。