整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:

每天一个CSS小技巧 - 调整tab的宽度

是一个包含大量代码的网页(比如文档或教程)在样式上无法避免的问题。其中最大的一个问题就是让tab合适地用来缩进代码。默认情况下是这样的:

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Title</title>
  <style>
		pre, code{
			font-family: monospace;
		}

		pre{
			display: block;
			margin: 1em 0;
			white-space: pre;
		}

  </style>
</head>
<body>
<pre><code>while (true) {
	var d = new Date();
	if (d.getDate()==1 &&
	    d.getMonth()==3) {
		alert("TROLOLOL");
	}
}</code></pre>
</body>
</html>



你可以看到一个tab的大概是8个字符。

这里的方法很简单,只要如下就可以:

		pre{
			display: block;
			margin: 1em 0;
			white-space: pre;

			tab-size: 2;
		}


这里需要注意的是tab-size后的数字是指对应数字大小的几个字符的宽度。

进是 Word 文档中左页边距和文本开头之间的间隙。缩进表示段落中文本的开始。它也有不同的风格。在 Microsoft Word 中,您可以使用三种样式的段落缩进 – 标准、第一行和悬挂。

每种缩进样式在不同情况下都有其用途。对于标准缩进样式,每行文本都会缩进指定的量。首行缩进样式应用于每个段落的第一行。最后,将悬挂缩进样式应用于每个段落的第二行和后续行。

如何使用 TAB 键在 MICROSOFT WORD 中缩进单个段落

键盘上的 Tab 键是缩进段落的最快方法。但是,最好在缩进 Word 文档中的各个段落时使用它。使用方法如下:

步骤 1:单击任务栏上的“开始”按钮并输入单词来搜索该应用程序。

步骤 2:从结果中,单击 Microsoft Word 应用程序或文档将其打开。

步骤 3:将光标放在文档中要缩进的段落上。对于首行缩进,请将光标放在段落的开头。对于标准缩进,请将光标放在段落中任何其他行的开头。

步骤 4:按键盘上的 Tab 键。对于首行缩进,按 Tab 键应在左页边距和第一行之间留下间隙。对于标准缩进,请在左页边距和整个段落之间留出间隙。

用空格还是 tab 的这个问题,如同程序员之间的『语言之争』,『vim/emacs编辑器之争』一样是个永远的圣战,这个争论不会有结果,你怎么选择都有自己的道理,只是看你选择认同谁而已。

就我而言,我提倡尽可能用空格(除了少数必须用tab的情形以外)。理由如下:

  1. 空格在各种情况下代码都是你想要的样子。而 tab 仅仅当你与代码作者的 tab 尺寸设定为相同时,代码才好看。

    修改 tab 尺寸并不能解决这个问题,因为你很难做到每打开一个文件就修改一次 tab 尺寸,而每个人通常有不同的习惯(POSIX/Unix 标准的 tab 应当为 8 字符宽度,Linus 大神也规定 Linux 内核中所有代码的 tab 尺寸为 8)。如果存在行尾注释,则 tab 尺寸更加是必须设定为与作者相同,这就意味着你看不同的代码需要经常修改 tab 尺寸。我看过许多代码,其使用的 tab 尺寸有从 2,3,4,5,6,8,16 甚至 32 的,如果你使用的 tab 尺寸与作者不同,外观将很不理想。

  2. 靠谱的编辑器都能解决前进后退增加减少缩进的问题,即便是四个空格,一个退格键也能全退了,所以在使用的方便性方面根本不存在问题。——如果抱怨删除调整还不能有效解决的,你需要研究一下你的编辑器了。实际上增加减少缩进在主流编辑器中都直接有快捷键,无论是 tab 还是空格还是退格都很少直接被用于缩进。

  3. tab 是制表符而不是缩进符,正如在 html 页面中大量使用<table>进行布局是个不好的编程习惯一样,在编程中大量使用制表符布局通常也不是个好习惯。

  4. 如果代码需要压缩发布,使用空格的代码通常具有更好的压缩率。各位不信的可以使用批处理工具把代码用全空格或者全 tab 走一遍。——这里面的原理是信息量,使用 tab 缩进的代码中,仍然不可避免的含有空格(运算符之间的间隔,注释等等),但使用空格的代码中根本不含有 tab,这使得 tab 缩进代码虽然不压缩的时候更小,但熵更高,因而压缩率较差,压缩之后反而更大。——当然,压缩发布代码仅仅对开源软件有意义,商业软件可以无视。那么你觉得呢