我在网络开发方面有很强的非常经验,所以这可能是一个非常基本的问题。
只是,根据我做的有限经验(一点点PHP和一点Ruby on Rails),似乎动态生成HTML的方式是格式化只是“没关系”;它最终变得丑陋,有着奇怪的缩进,没人关心,因为那不是用户所看到的。
当然,除非用户是开发人员,否则只是一个好奇地想看一点HTML来尝试学习的人。
也许你不知道我在说什么;让我举个例子。
在Ruby文件中,我可能会有这样的代码:
<h1>Heading</h1>
<div>
<%= render :partial => '/layouts/body' %>
</div>
然后,在我的“/layouts/_body.html.erb”文件中,我可能会这样:
<p>Here is some content!</p>
<ul>
<li>List item 1</li>
<li>List item 2</li>
<li>List item 3</li>
</ul>
当所有这些都被渲染时,它看起来会很好。但是如果用户试图查看源代码,那么HTML看起来会非常糟糕:
<h1>Heading</h1>
<div>
<p>Here is some content!</p>
<ul>
<li>List item 1</li>
<li>List item 2</li>
<li>List item 3</li>
</ul>
</div>
显然,这不是什么大问题。我完全可以理解流行的观点是否只是“无所谓”。但这只是它必须的方式吗? HTML的可读性对任何人都无关紧要吗?
我只是想知道这是否曾经让其他人为他/她提出足够的“解决方案”(显然它必须是第一个将其视为“问题”的人)位)。
答案 0 :(得分:3)
语义正确的验证HTML很重要;很重要。一些空格和换行并不重要 - 任何体面的格式化程序都可以轻松解决这个问题。大多数情况下,除了浏览器之外,没有任何东西可以查看它,因此与验证相比,它确实没那么重要。
当然,如果你花时间缩进和格式化,对我们这些懒得看的人来说会更好看。
答案 1 :(得分:2)
如果您在将文件发送给用户之前对文件进行额外传递以美化它,那么您将会:
增加文件大小(下载速度较慢),因此让您的用户感觉您的网站“滞后”且速度很慢(就是这样)
在你的服务器上增加了额外的开销,可能最大化并减慢甚至更多
除了帮助一两个阅读源代码的人(可以在大多数编辑器中自动美化)之外,你希望用什么来实现它的价值呢?
答案 2 :(得分:2)
不管你喜不喜欢,HTML是一种浏览器可读格式,不一定是用户可读的格式。应该使用工具(WYSIWIG编辑器,标记语言,如Markdown,MediaWiki等以及您最喜欢的Web框架)来生成HTML。有很多程序可以让开发人员读取HTML;看其他帖子。
XHTML和XML生成工具在可读性方面有一些承诺,因为它们的输出可以更容易地进行后处理(例如通过浏览器的源视图)以获得适当的缩进,但是(恕我直言)还不是很成熟从所谓的“符合W3C XHTML标准”的网站数量来看,实际上并非如此。较新版本的,例如,WordPress付出了努力,但他们的扩展,插件等充满了坏(X)HTML,甚至没有考虑它们产生的JavaScript数量。 (我们如何缩进呢?)
目前的建议:
答案 3 :(得分:2)
HAML模板引擎专门创建,目的是生成正确的缩进,嵌套和格式化的HTML。没有理由为什么其他模板引擎不能做同样的事情。
所以,是的,这只是懒惰。
答案 4 :(得分:1)
我从不真正关心,因为如果我想看看格式很好的HTML,我可以在看到它之前run it though TIDY。
答案 5 :(得分:1)
它在过去曾经让我感到烦恼,但我也认为让它看起来不可读有它的优点。它是代理的半混淆代码。
然而,许多工具(例如FireBug)会在DOM结构中很好地格式化代码,因此对于开发人员而言,这并不重要。
答案 6 :(得分:1)
要查看更好的格式化html,您可以使用Google Chrome的“Inspect Element”功能或Firefox中的firebug插件。我一直处理动态生成的html(使用php),而且我从不使用'view page source',这些其他工具的工作效果要好得多。
答案 7 :(得分:1)
流行的观点是“无关紧要”,因为如果您确实想要查看它,那么可以使用大量的格式化程序,而且使用自动格式化程序会浪费系统资源。
对于它的情况,您可以考虑:
答案 8 :(得分:1)
当我试图查看源代码以查看div或样式可能丢失的位置时,这可能很烦人。我总是尝试生成任何具有合适布局的html,因为9/10我将不得不寻找错误。
所以,从我的观点来看,它确实很重要,即使它不是第一优先,它应该优先考虑2或至少3,我认为当然。
如今,作为一名C#开发人员,我通常会将源代码复制到Visual Studio并执行ctrl + k + f来缩进代码,以便更容易看到。
有可能并且很有可能其他IDE具有类似的功能,可供开发人员使用,并具有此类轻微烦恼。
答案 9 :(得分:0)
你是对的,它无关紧要,当使用不同的功能和类时,它很难避免。
如果您需要正确格式化源代码,大多数IDE和面向编程的编辑器都包含将代码“整理”为正确缩进版本的工具。
答案 10 :(得分:0)
如果我要通过任何工具发送我的网页,那么它将是 minifier 。
不幸的是,浏览器没有托管代码美容选美:)
答案 11 :(得分:0)
几乎所有可敬的ides都有自动格式化的快捷方式: Visual Studio - ctrl + k + f Netbeans - alt + shift + f Eclipse - ctrl + shift + f
所以我认为不需要格式化。
答案 12 :(得分:0)
重要的是HTML生成代码整洁可读。在您的示例中,任何函数调用,包含等都应该与其余代码进行适当的缩进。
除此之外,只要代码正确形成并且有效的XHTML就没有关系。 XHTML规范没有定义空格,但确实定义了正确的结束标记等。
基本上,如果输出代码有效并且服务器端代码是可读的,那么一切都很好。 (当然,假设您的应用程序也有效。)