2010-01-30 65 views
14

编写代码时,我几乎痴迷于完美的缩进和对齐,但出于某种原因,我不喜欢缩进HTML标记。也许因为有时缩进程度太深,但我通常只是(ab)使用VIM的折叠功能。这被认为是不好的做法?标记缩进的风格是什么?您是否缩进了您的HTML代码?

+3

你将如何决定什么正确的答案是什么?当然,这似乎是一个CW问题。 – random 2010-01-30 10:30:11

+3

Dupe:http://stackoverflow.com/questions/304055/dear-fsm-not-again – random 2010-01-30 10:30:59

+0

危机:这是非常不同的。这是关于生成的HTML;不是手写的。 – 2010-01-30 10:33:35

回答

9

我做缩进,它保持可读的东西。 考虑缩进2个空格而不是4个或8个。 我只缩进块元素,将其余部分放在一行上。

1

我按照与任何XML样式文档(XHTML是其子集)相同的方式缩进。

1

它并不重要,因为你有像萤火虫这样的工具,但我也尝试在div,p,ul之后得到一些新的行。元素。主要的问题是:当我的php代码看起来不错时,它会在生成的html中打断。

8

我做缩进。

此外,只要有可能,尽量减少嵌套HTML。标记越简单越好。虽然构建深层次结构可能具有逻辑意义,但一般来说,应用CSS维护可能是一个实际的噩梦。

如果可以的话,简化你的html。这将停止过度缩进并使其更易于阅读。更好的是,根据您使用的服务器端技术(如果有),您可能能够将复杂文件分解为单独的文件(例如MVC中的部分视图或webforms中的用户控件)

+0

“如果可以的话,简化你的html。”究竟。如果缩进HTML太深,那就意味着你的HTML过于复杂,应该分解为其他的includes/tags/modules /等。这也应该使它更加可重复使用。 – Cerin 2013-12-31 15:22:40

3

我很公平关于缩进一切的狂热。 HTML包含在这里。我有一些我自己的小规则,例如不要缩进<tr>等等,但我坚持遵守我的规则。

0

我使用Visual Web Developer自动处理缩进自动

1

必须缩进! ...从PEP8下面的文字 - 总结了我如何努力做的事情在所有的语言..

*愚蠢的一致性是小小的心灵

风格指南是关于一致性的妖怪。与此风格指南的一致性非常重要。项目中的一致性更重要。一个模块或功能内的一致性是最重要的。 但最重要的是:知道什么时候不一致 - 有时风格指南不适用。如有疑问,请使用您的最佳判断。看看其他例子,并决定什么看起来最好。不要犹豫,问!

两个很好的理由,打破了特定规则:

(1)在适用该规则会使代码的可读性,甚至有人谁是用来阅读下面的规则代码。

(2)为了与周围的代码,也打破它(也许是因为历史原因)一致 - 虽然这也是清理别人的混乱的机会*

2

是的!

,如果你使用Visual Studio CTRL+KCTRL+D,一切都被组织这会让你的生活更轻松

3

我让我的HTML通过我的编辑缩进。

老实说,这些编辑器在其他方面是什么?

+7

我不是问*怎么做* – 2010-01-30 10:59:35

+2

做_you_缩进你的代码吗?不,我不缩进,我的编辑。我认为这是最佳做法。 – 2010-01-30 11:10:17

+8

你也读过问题或只是标题? – 2010-01-30 12:07:06

4

它看起来更好,如果我们缩进,它也更易读,但!缩进是最糟糕的性能问题,因为缩进实际上留下了很多空白,尤其是当嵌套变得更深时。尝试编写两个html页面,使第一页完美缩进,第二页没有任何缩进,您会注意到第二页实际上缩小了大约60%(这意味着它在浏览器中加载速度更快)。

我在开发过程中做了完美缩进,但我切换到部署完美缩小。

+0

我希望在其他答案中看到更多关于表现的评论,所以我从+1开始。 – zacharydl 2015-01-09 01:05:11

0

Notepad ++实现了HTMLTidy,它也可以用来自动缩进HTML。我发现它在过去特别有用,特别是在处理来自服务器端控件的HTML输出时,它可能有效,也可能无效。

0

我认为缩进HTML非常重要,就像你写的每一段代码一样,是Python,C#,JavaScript还是CSS。缩进是为了可读性,以便当您或其他人尝试理解和编辑文件时,它将尽可能少地花费时间。缩进HTML代码是否使其更具可读性?我认为:是的,非常。

我不仅缩进了元素,还缩进了属性。这是一个总的烂摊子都在同一行有3个以上属性读取HTML元素,如:

<textarea placeholder="Content" aria-label="Message content" name="content" rows="5" required="" ng-model="contactPage.content"></textarea> 

虽然它是如此更容易理解,并在单独的行每个属性编辑:

<textarea placeholder="Content" 
      aria-label="Message content" 
      name="content" 
      rows="5" 
      required="" 
      ng-model="contactPage.content"></textarea> 

缩进的问题是,除非你制作一个非常小的网页,否则HTML容易变得很深(一些元素具有很高的嵌套级别)。这可能导致可读性差 - 当某些东西缩进7级时,很难掌握结构,线条也变得很长 - 并且由于需要存储制作缩进的空格字符而增加了文件大小。这就是为什么它也很重要:

  • 将HTML代码拆分为单独的模板(有无数的模板机制可用,例如Nunjucks)。这会随着每个模板文件重置缩进而增加可读性。
  • 缩小您的HTML生产。这通过缩进消除了文件大小的增加。
0

是的,当然。
我使用制表符缩进(通常与等宽字符中的4个空格相同,但它只是1个字符而不是4个!)。

当标签只有一个属性,我把它写内联的标签开口道:

<button onclick="clicked()"> 

当标签具有多个属性我把它们写在标签上名后为每一个新行:

<button 
    id="helloButton" 
    onclick="clicked()"> 

当一个元素只包含纯文本,我把它写内联的标签打开和关闭:

<button>Hello world</button> 

当元素包含子元素或者文本节点,我写他们在新的一行,由标签打开和关闭缩进:

<button> 
    Hello <span>world</span> 
</button> 

<!-- OR --> 

<div> 
    <button>Hello world</button> 
</div> 
相关问题