`
rensanning
  • 浏览: 3547954 次
  • 性别: Icon_minigender_1
  • 来自: 大连
博客专栏
Efef1dba-f7dd-3931-8a61-8e1c76c3e39f
使用Titanium Mo...
浏览量:38135
Bbab2146-6e1d-3c50-acd6-c8bae29e307d
Cordova 3.x入门...
浏览量:607261
C08766e7-8a33-3f9b-9155-654af05c3484
常用Java开源Libra...
浏览量:682256
77063fb3-0ee7-3bfa-9c72-2a0234ebf83e
搭建 CentOS 6 服...
浏览量:89318
E40e5e76-1f3b-398e-b6a6-dc9cfbb38156
Spring Boot 入...
浏览量:401805
Abe39461-b089-344f-99fa-cdfbddea0e18
基于Spring Secu...
浏览量:69685
66a41a70-fdf0-3dc9-aa31-19b7e8b24672
MQTT入门
浏览量:91692
社区版块
存档分类
最新评论

你所不知道的<html>, <head>, <body>

 
阅读更多
(1)HTML并没有要求一定要有<html>, <head>, <body>(XHTML会做校验)
<!DOCTYPE html>
<meta charset=utf-8>
<title>Browsers add html, head, body elements</title>
<p>There is no html, head, body element in the source code but if you check - in any browser - you'll find they've been inserted.</p>

浏览器会正常解析,并自动构建了包含标准标签的DOM树,解析后的DOM树如下:
<!DOCTYPE html>
<html><head><meta charset="utf-8">
<title>Browsers add html, head, body elements</title>
</head><body><p>There is no html, head, body element in the source code but if you check - in any browser - you'll find they've been inserted.</p></body></html>


(2)浏览器如何判断<head>结束<body>开始的呢?
<!DOCTYPE html>
<meta charset=utf-8>
<title>Browsers add html, head, body elements</title>
<vomitingotter>This is in a &lt;vomitingotter> element. (this is, as yet, not officially part of HTML. hurry up, Hixie!) But how does the browser know it should be in the &lt;body>?</vomitingotter>

浏览器遇到不认识的<vomitingotter>就认为是<body>开始,解析后的DOM树如下:
<!DOCTYPE html>
<html><head><meta charset="utf-8">
<title>Browsers add html, head, body elements</title>
</head><body><vomitingotter>This is in a &lt;vomitingotter&gt; element. (this is, as yet, not officially part of HTML. hurry up, Hixie!) But how does the browser know it should be in the &lt;body&gt;?</vomitingotter></body></html>


(3)只要遇到<head>中可识别的Metadata(<base>, <link>, <meta>, <noscript>, <script>, <style>, <template>, <title>)以外的标签就结束<head>,如果你把Metadata写在了后边也不会被自动识别到<head>中。
<!DOCTYPE html>
<viewport>This is the content of a pretend &lt;viewport> element, which in the source is the first line after the DOCTYPE, before the charset declaration or title element. But if you look in any DOM inspector in any browser, you'll see that it's been put in the body.</viewport>
<meta charset=utf-8>
<title>Browsers add html, head, body elements</title>

浏览器遇到不认识的标签<viewport>就认为是<body>开始,<meta>和<title>被解析到了<body>中:
<html><head></head><body><viewport>This is the content of a pretend &lt;viewport&gt; element, which in the source is the first line after the DOCTYPE, before the charset declaration or title element. But if you look in any DOM inspector in any browser, you'll see that it's been put in the body.</viewport>
<meta charset="utf-8">
<title>Browsers add html, head, body elements</title></body></html>


(4)即使你把不该出现在<head>中的标签强制放到<head>里,比如:
<!DOCTYPE html>
<html>
<head>
<viewport>This is the content of a pretend &lt;viewport> element, which in the source is the first line after the DOCTYPE</viewport>
<meta charset=utf-8>
<title>Browsers add html, head, body elements</title>
</head>
<body>
<p>Paragraph in body element</p>
</body>
</html>

浏览器也不认为他们是<head>信息:
<html><head>
</head><body><viewport>This is the content of a pretend &lt;viewport&gt; element, which in the source is the first line after the DOCTYPE</viewport>
<meta charset="utf-8">
<title>Browsers add html, head, body elements</title>


<p>Paragraph in body element</p>

</body></html>


以上使用的浏览器是:Google Chrome 版本:35.0.1916.153。

参考:
http://www.brucelawson.co.uk/2014/why-is-viewport-in-a-meta-tag/
http://www.w3.org/TR/html401/struct/global.html
分享到:
评论

相关推荐

    HTML&JavaScript经典PPT 讲的都是重点

    &lt;HEAD&gt; &lt;TITLE&gt;诗词学习&lt;/TITLE&gt; &lt;/HEAD&gt; &lt;BODY&gt; &lt;P&gt;我是第一段&lt;/P&gt; &lt;P&gt;我是第二段&lt;/P&gt; &lt;P align="left"&gt;左对齐显示&lt;P&gt; &lt;P align="center"&gt;居中显示&lt;P&gt; &lt;P align="right"&gt;右对齐显示&lt;P&gt; &lt;/BODY&gt; &lt;/HTML&gt; &lt;HEAD&gt; ...

    html完整教程(<html>标志用于Html文档的最前边,用来标识Html文档的开始。)

    &lt;body&gt;&lt;/body&gt;是Html文档的主体部分,在此标志对之间可包含&lt;p&gt;、&lt;/p&gt;、&lt;h1&gt;、&lt;/h1&gt;、&lt;br&gt;、&lt;hr&gt;等等众多的标志,它们所定义的文本、图像等将会在浏览器的框内显示出来。两个标志必须一块使用。&lt;body&gt;标志中还可以有...

    形考任务四活动1:采用CSS样式来设置背景、标题和段落的颜色。.zip

    &lt;/head&gt; &lt;body&gt; &lt;h1&gt;这是一个红色的一级标题&lt;/h1&gt; &lt;p&gt;这是一个绿色的段落。&lt;/p&gt; &lt;/body&gt; &lt;/html&gt; ``` 通过这种方式,我们能够有效地控制HTML文档的视觉呈现,创建出丰富多彩、个性化的网页。掌握CSS的基础知识,...

    图书管理系统代码

    &lt;head&gt; &lt;meta http-equiv="Content-Type" content="text/html;charset=UTF-8"&gt; &lt;title&gt;登录图书管理系统&lt;/title&gt; &lt;style type="text/css"&gt; .STYLE1 { font-size: 36px; font-weight: bold; } &lt;/style&gt; &lt;/...

    web开发设计教程,常用指令讲解,实际案例资源代码详细讲解并附注释.txt

    标签:如&lt;html&gt;、&lt;head&gt;、&lt;body&gt;、&lt;h1&gt;到&lt;h6&gt;(标题)、&lt;p&gt;(段落)、&lt;a&gt;(链接)、&lt;img&gt;(图像)等。 示例代码: &lt;!DOCTYPE html&gt; &lt;html&gt; &lt;head&gt; &lt;title&gt;我的网页&lt;/title&gt; &lt;/head&gt; &lt;body&gt; &lt;h1&gt;欢迎来到我的网页&lt;/...

    HTML语言源代码实例

    **知识点**: HTML文档的基本结构包括`&lt;html&gt;`、`&lt;head&gt;`、`&lt;title&gt;`以及`&lt;body&gt;`等标签。 - **`&lt;html&gt;`标签**: 标识整个HTML文档的开始与结束。 - **`&lt;head&gt;`标签**: 包含关于文档的信息,如标题、样式表链接等,并...

    以下是一个简单的HTML网页代码示例

    DOCTYPE html&gt;&lt;html&gt;&lt;head&gt; &lt;title&gt;我的网页&lt;/title&gt;&lt;/head&gt;&lt;body&gt; &lt;h1&gt;欢迎来到我的网页&lt;/h1&gt; &lt;p&gt;这是一个简单的HTML网页示例。&lt;/p&gt; &lt;ul&gt; &lt;li&gt;列表项1&lt;/li&gt; &lt;li&gt;列表项2&lt;/li&gt; &lt;li&gt;列表项3&lt;/li&gt; &lt;/ul&gt;&lt;/body&gt;&lt;/html&gt;...

    JSF2.0实战 - 7、自定义<h:head>

    &lt;/body&gt; &lt;/html&gt; ``` 接下来,我们来看看Dojo4j库。Dojo是一个强大的JavaScript库,提供了丰富的UI组件、数据绑定、动画效果和异步通信等功能。在JSF项目中,Dojo4j可以帮助我们更好地集成Dojo框架,简化前后端交互...

    网页设计作业网页设计作业

    &lt;body&gt; &lt;header&gt; &lt;h1&gt;欢迎来到我的博客&lt;/h1&gt; &lt;/header&gt; &lt;nav&gt; &lt;ul&gt; &lt;li&gt;&lt;a href="#home"&gt;主页&lt;/a&gt;&lt;/li&gt; &lt;li&gt;&lt;a href="#articles"&gt;文章&lt;/a&gt;&lt;/li&gt; &lt;li&gt;&lt;a href="#about"&gt;关于我&lt;/a&gt;&lt;/li&gt; &lt;/ul&gt; ...

    表格 html 表格 html 表格 html

    &lt;/head&gt; &lt;body&gt; &lt;table border="1"&gt; &lt;tr&gt; &lt;th&gt;表头一&lt;/th&gt; &lt;th&gt;表头二&lt;/th&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;单元格内容&lt;/td&gt; &lt;td&gt;单元格内容&lt;/td&gt; &lt;/tr&gt; &lt;/table&gt; &lt;/body&gt; &lt;/html&gt; ``` 此示例创建了一个简单的表格,其中...

    在JSP中使用Session制作简单的登录模块

    charset=GB2312" %&gt;&lt;br&gt;&lt;br&gt;&lt;html&gt;&lt;br&gt;&lt;head&gt;&lt;br&gt;&lt;title&gt;CH5 - Login.jsp&lt;/title&gt;&lt;br&gt;&lt;/head&gt;&lt;br&gt;&lt;body&gt;&lt;br&gt;&lt;br&gt;&lt;h2&gt;javax.servlet.http.HttpSession - session 对象&lt;/h2&gt; &lt;br&gt;&lt;form action=Login.jsp method="POST...

    HTML语言_范例.pdf

    1. HTML文件结构:一个基础的HTML文件通常由`&lt;html&gt;`标签开始,接着是`&lt;head&gt;`标签,包含文档元数据如标题,然后是`&lt;body&gt;`标签,其中包含实际的网页内容。例如: ```html &lt;html&gt; &lt;title&gt;我的第一个网站&lt;/title&gt; ...

    HTML从入门到精通 第4章 列表

    &lt;head&gt; &lt;title&gt;无序列表示例&lt;/title&gt; &lt;/head&gt; &lt;body&gt; &lt;p&gt;我们提供的软件类别包括:&lt;/p&gt; &lt;ul&gt; &lt;li&gt;系统程序&lt;/li&gt; &lt;li&gt;媒体工具&lt;/li&gt; &lt;li&gt;管理软件&lt;/li&gt; &lt;li&gt;游戏娱乐&lt;/li&gt; &lt;/ul&gt; &lt;/body&gt; &lt;/html&gt; ``` 此代码...

    Java&servlet

    在这个例子中,`&lt;html&gt;` 标签表示HTML文档的开始和结束,而 `&lt;head&gt;` 和 `&lt;body&gt;` 分别定义了文档的头部信息和主体内容。`&lt;p&gt;` 标签则用来表示一个段落。 ##### 1.2 基础标记的用法 - **`&lt;br&gt;`** 表示换行。 - **`...

    ssd1 quiz3答案

    &lt;center&gt;&lt;p&gt;&lt;font size="10px"&gt;&lt;B&gt;Practical Quiz 3&lt;/B&gt;&lt;/font&gt;&lt;/p&gt;&lt;/center&gt; &lt;form color="#FF00FF"&gt; &lt;center&gt;Login Name:&lt;input type="text"&gt;&lt;/center&gt;&lt;br&gt; &lt;center&gt; Password:&lt;input type="password"&gt;...

    1.html的语法+基本结构+文档标记,对网页制作感兴趣的很有帮助,浅显易懂,只需要TXT可操作,本人已学,有笔记,大纲,源码

    2、HTML的基本机构(&lt;html&gt;&lt;head&gt;&lt;title&gt;&lt;body&gt;) 3、文档设置标记上-格式标(&lt;br&gt;&lt;p&gt;&lt;center&gt;&lt;pre&gt;&lt;li&gt;&lt;ul&gt;&lt;ol&gt;&lt;dl&gt;&lt;dt&gt;&lt;dd&gt;&lt;hr&gt;&lt;div&gt;) 4、文档设置标记下-文本标记(&lt;hn&gt;&lt;font&gt;&lt;b&gt;&lt;i&gt;&lt;sub&gt;&lt;sup&gt;&lt;tt&gt;&lt;cite&gt;&lt;em&gt;...

    网页设计文字与段落.ppt

    在HTML中,我们还可以使用`&lt;font&gt;`标签(虽然在现代HTML5中不推荐使用)来调整字体、大小和颜色,或者使用CSS来更精细地控制文本样式。 总之,理解和熟练运用这些HTML标签是网页设计的基础,它们使得我们可以创建...

    html文件head内部标记浅析(meta,link,base,body)

    HTML文件的结构主要由&lt;head&gt;和&lt;body&gt;两大部分组成,其中&lt;head&gt;标签包含了与文档元信息相关的内容,而&lt;body&gt;则包含实际可见的网页内容。本文将深入解析&lt;head&gt;内部的几个关键标记:&lt;meta&gt;、&lt;link&gt;、&lt;base&gt;以及&lt;body&gt;的...

Global site tag (gtag.js) - Google Analytics