<head> 和 <body> 标签是否应该与 <html> 处于不同的缩进级别?
Should <head> and <body> tags be on a different level of indentation to <html>?
我一直想知道,但如果有任何关于缩进 body 或 head 标签的固定标准,我真的无法在任何地方找到答案。
这个版本正确吗?
<html>
<head>
</head>
<body>
</body>
</html>
还是这个?
<html>
<head>
</head>
<body>
</body>
</html>
虽然我很欣赏它可能不会对最终网站的功能产生丝毫影响,但我们都是人类,并且都拥有好奇心这一天赋/负担。
有没有固定的标准或者没有关系?
HTML 不关心缩进,它只需要适当的嵌套。它被解析为相同的(当然除了空白文本节点),正确性并不重要。
虽然适当的缩进对可读性很重要,但许多人选择不缩进 <html>
、<head>
和 <body>
标签,因为它们的结构微不足道,并且只会将整个文档向右移动不必要地。这些标签的内容应始终缩进以进行干净的标记,以便 reader.
清楚嵌套结构
明确回答您的问题:
Should <head>
and <body>
tags be on a different level of indentation to <html>
?
没有必要,因为每个人都知道它们嵌套在 <html>
中。如果你愿意,你可以做到。两者
<html>
<head>
<title>…</title>
…
<head>
<body>
<div>
<div>…</div>
…
</div>
…
</body>
<html>
和
<html>
<head>
<title>…</title>
…
<head>
<body>
<div>
<div>…</div>
…
</div>
…
</body>
<html>
没问题,下面的就不行了:
<html>
<head>
<title>…</title>
…
<head>
<body>
<div>
<div>…</div> <!-- which nesting level ??? -->
…
</div>
…
</body>
<html>
在功能上无所谓,但为了干净、可读和可管理[=15] =] 代码你应该总是缩进孩子。
而不是这个:
<html>
<head>
</head>
<body>
<h1>That's 2 levels of indenting and we haven't even started yet.</h1>
</body>
</html>
或者这个(没人知道为什么人们开始这样做):
<html>
<head>
</head>
<body>
</body>
</html>
我想提出另一种风格。三行通用结构:
<html><head>
</head><body>
</body></html>
插入一些HTML:
<html><head>
<style>
</style>
</head><body>
<div>
</div>
</body></html>
在这种情况下,我们以自然的方式摆脱了缩进级别(因为双缩进没有意义)。 head
和 body
元素导致其内容缩进。
我教一门网页设计入门课程,向学生解释为什么缩进很重要,尤其是对刚接触 HTML 的人来说,这是一个很大的挑战。我经常向他们展示 the W3schools website 中的 DOM 图作为 HTML 页面的树结构示例。老实说,虽然我完全清楚这没有丝毫影响,但缩进 <head></head>
和 <body></body>
有助于更好地显示 HTML 树结构。正如上面有人所说,缩进使代码清晰可读,但不仅仅是 <head>
和 <body>
都是 <html>
的子级,因此应该缩进以表明这一事实。
我一直想知道,但如果有任何关于缩进 body 或 head 标签的固定标准,我真的无法在任何地方找到答案。
这个版本正确吗?
<html>
<head>
</head>
<body>
</body>
</html>
还是这个?
<html>
<head>
</head>
<body>
</body>
</html>
虽然我很欣赏它可能不会对最终网站的功能产生丝毫影响,但我们都是人类,并且都拥有好奇心这一天赋/负担。
有没有固定的标准或者没有关系?
HTML 不关心缩进,它只需要适当的嵌套。它被解析为相同的(当然除了空白文本节点),正确性并不重要。
虽然适当的缩进对可读性很重要,但许多人选择不缩进 <html>
、<head>
和 <body>
标签,因为它们的结构微不足道,并且只会将整个文档向右移动不必要地。这些标签的内容应始终缩进以进行干净的标记,以便 reader.
明确回答您的问题:
Should
<head>
and<body>
tags be on a different level of indentation to<html>
?
没有必要,因为每个人都知道它们嵌套在 <html>
中。如果你愿意,你可以做到。两者
<html>
<head>
<title>…</title>
…
<head>
<body>
<div>
<div>…</div>
…
</div>
…
</body>
<html>
和
<html>
<head>
<title>…</title>
…
<head>
<body>
<div>
<div>…</div>
…
</div>
…
</body>
<html>
没问题,下面的就不行了:
<html>
<head>
<title>…</title>
…
<head>
<body>
<div>
<div>…</div> <!-- which nesting level ??? -->
…
</div>
…
</body>
<html>
在功能上无所谓,但为了干净、可读和可管理[=15] =] 代码你应该总是缩进孩子。
而不是这个:
<html>
<head>
</head>
<body>
<h1>That's 2 levels of indenting and we haven't even started yet.</h1>
</body>
</html>
或者这个(没人知道为什么人们开始这样做):
<html>
<head>
</head>
<body>
</body>
</html>
我想提出另一种风格。三行通用结构:
<html><head>
</head><body>
</body></html>
插入一些HTML:
<html><head>
<style>
</style>
</head><body>
<div>
</div>
</body></html>
在这种情况下,我们以自然的方式摆脱了缩进级别(因为双缩进没有意义)。 head
和 body
元素导致其内容缩进。
我教一门网页设计入门课程,向学生解释为什么缩进很重要,尤其是对刚接触 HTML 的人来说,这是一个很大的挑战。我经常向他们展示 the W3schools website 中的 DOM 图作为 HTML 页面的树结构示例。老实说,虽然我完全清楚这没有丝毫影响,但缩进 <head></head>
和 <body></body>
有助于更好地显示 HTML 树结构。正如上面有人所说,缩进使代码清晰可读,但不仅仅是 <head>
和 <body>
都是 <html>
的子级,因此应该缩进以表明这一事实。