现在的业界的标准,网页技术严格的三层分离:html就是负责描述页面语义的语言;css负责描述页面的样式;js负责描述页面的动态效果的。

  • HTML:除了描述语义什么都干不了,页面语义是什么 :文档中不知道谁是主标题,谁是副标题,谁是段落。这就是页面的语义。

HTML 基础标签:HTML 标签参考手册 - 功能排序

一,html有基本骨架

骨架抽象出来:

1<html>
2   <head>
3
4   </head>
5   <body>
6
7   </body>
</html>

网页的最外层的标签对儿是<html></html>标签对儿,里面有两部分,分别是head和body。

head标签中,描述网页的配置;body中的内容,才是用户可以看见的内容。

完整的骨架:

1<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
3   <head>
4       <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
5       <title>哈哈哈</title>
6   </head>
7   <body>
8        <h1>我是一个主标题</h1>
9         <p>我是一个小段落</p>
10  </body>
</html>

第1行,就是网页的声明头,这行语句,千万不要背诵,谁背谁傻。术语叫做DocType Defintion,文档类型定义,简称DTD。这行语句非常的复杂,里面暗含了一个网址。W3C就是出web规范的组织机构。html、css、js的规范都是W3C定义发布的。world wide web coalition , 国际万维网联盟。网页声明头可以告诉浏览器,这是一个什么标准的页面。

第2行,是最大的html标签,所有的网页内容,都要包裹在这个标签对儿里面。

我们发现,html标签中,有两个属性:

xmlns="http://www.w3.org/1999/xhtml"   命名空间,就是一个规范;

xml:lang="en"   语言是英语

第3行,就是head标签,就是配置。

第4行,<meta http-equiv="Content-Type" content="text/html;charset=UTF-8"> 字符集的配置

第5行,<title>哈哈哈</title>  网页的标题,可以显示在浏览器的标签栏中。

第7行,body标签就是网页的内容,用户能够看见。

二,文档声明头

任何一个标准的HTML页面,第一行一定是一个以

<!DOCTYPE ……

开头的语句。这一行,就是文档声明头,DocType Declaration。此标签可告知浏览器文档使用哪种 HTML 或 XHTML 规范。(规范不做详细讲解)

HTML5中极大的简化了DTD,也就是说HTML5中就没有XHTML了

<!DOCTYPE html>

三,字符集

<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">

中文能够使用的字符集两种:

第一种:UTF-8

<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">

第二种:gb2312

<meta http-equiv="Content-Type" content="text/html;charset=gb2312">

也可以写成gbk

<meta http-equiv="Content-Type" content="text/html;charset=gbk">

什么是字符集?活字印刷术,所有的汉字都有一个个小印章,需要哪个字,就取哪个字。

但是,有两个人都发明了字库。老王发明了一个,老李也发明了一个。

比如同一个汉字,“传”字在老王的字库里面是第2个大盘子第4行第43列的。

而这个汉字“传”在老李的字库里面是第5个大盘子第6行第13列的。

计算机,不能直接存储汉字,而是存储的是编码,所以,计算机记录“传”这个字,就是这么记录的:

老王:

20443

老李

50613

有两个字库UTF-8和gb2312。

UTF-8是国际通用字库,里面涵盖了所有地球上所有人类的语言文字,比如阿拉伯文、汉语、鸟语……

gb2312 是国标,是中国的字库,里面涵盖了汉字和一些常用外文,比如日文片假名,和常见的符号。

字库规模:  UTF-8(字全) > gb2312(只有汉字)

我们用meta标签可以声明当前这个html文档的字库,但是一定要和保存的类型一样,否则乱码!(重点)

当我们不设置的时候,sublime默认类型就是UTF-8。而一旦更改为gb2312的时候,就一定要记得设置一下sublime的保存类型: 文件→ set File Encoding to → Chinese Simplified(GBK)

记住两者匹配:

注意,由于UTF-8里面保存了世界上所有人类语言,所以描述一个汉字需要的码更多。

UTF-8里面存储一个汉字3个字节。而gb2312中存储一个汉字2个字节。

保存大小:   UTF-8(更臃肿、加载更慢) > gb2312 (更小巧,加载更快)

总结:

UTF-8 字多,有各种国家的语言,但是保存尺寸大,文件臃肿;

gb2312字少,只用中文和少数外语和符号,但是尺寸小,文件小巧。

列出2个使用情形:

1) 你们公司是做日本动漫的,经常出现一些日语动漫的名字,网页要使用UTF-8。如果用gb2312将无法显示日语。

2) 你们公司就是中文网页,极度的追求网页的显示速度,要使用gb2312。如果使用UTF-8将每个汉字多一个byte,所以5000个汉字,多5kb。

四,关键字和页面描述

meta除了可以设置字符集,还可以设置关键字和页面描述。

设置页面描述:

<meta name="Description" content="网易是中国领先的互联网技术公司,为用户提供免费邮箱、游戏、搜索引擎服务,开设新闻、娱乐、体育等30多个内容频道,及博客、视频、论坛等互动交流,网聚人的力量。" />

只要设置的Description页面面熟,那么百度搜索结果,就能够显示这些语句,这个技术叫做SEO,search engine optimization,搜索引擎优化。

抽象一下:<meta name=”” content=”” />

name就是“名字”的意思,content是“内容”的意思。

也就是说,我们定义了一个名字是“Description”(描述)的meta。内容是网易是中国领先……

定义关键词:

<meta name="Keywords" content="网易,邮箱,游戏,新闻,体育,娱乐,女性,亚运,论坛,短信" />

这些关键词,就是告诉搜索引擎,这个网页是干嘛的,能够提高搜索命中率。让别人能够找到你,搜索到你。

Keywords就是“关键词”的意思。

所以,一个比较完整的骨架是这样:

1<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
3<head>
4   <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
5   <meta name="Keywords" content="牛逼,很牛逼,特别牛逼" />
6   <meta name="Description" content="网易是中国领先的互联网技术公司,为用户提供免费邮箱、游戏、搜索引擎服务,开设新闻、娱乐、体育等30多个内容频道,及博客、视频、论坛等互动交流,网聚人的力量。" />
7   <title>Document</title>
8</head>
9<body>
10
11</body>
</html>

第4行 :   字符集设置

第5行: 关键词

第6行: 描述

五,title标签

<title>网页的标题</title>

title也是有助于SEO搜索引擎优化的:

<title>传智播客官网-传智播客提供java培训、web前端培训、php培训、C/C++培训、iOS培训、网页设计培训、平面设计培训、UI设计培训、游戏开发培训、网络营销培训服务</title>

网页的head标签里面,表示的是页面的配置,有什么配置?

字符集、关键词、页面描述、页面标题。

今后我们还能看见一些配置:IE适配、视口、iPhone小图标等等……

六,HTML 基本语法特性

6.1,HTML 对换行不敏感,对tab 不敏感

HTML只在乎标签的嵌套结构,嵌套的关系。谁嵌套了谁,谁被谁嵌套了,和换行、tab无关。

换不换行、tab不tab,都不影响页面的结构。

1<div>
2<h3></h3>
3    <p></p></div>

完全等价于

1<div>
2       <h3></h3>
3       <p></p>
</div>

也就是说,HTML不是依靠缩进来表示嵌套的,就是看标签的包裹关系。但是,我们发现有良好的缩进,代码更易读。要求大家都正确缩进标签。

百度为了追求极致的显示速度,所以HTML标签都没有换行、都没有缩进(tab),HTML和换不换行无关,标签的层次依然清晰,只不过程序员不可读了:

6.2,空白折叠现象

HTML中所有的文字之间,如果有空格、换行、tab都将被折叠为一个空格显示。

代码:里面有空格、缩进、换行

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<meta name="Keywords" content="牛逼,很牛逼,特别牛逼" />
<meta name="Description" content="网易是中国领先的互联网技术公司,为用户提供免费邮箱、游戏、搜索引擎服务,开设新闻、娱乐、体育等30多个内容频道,及博客、视频、论坛等互动交流,网聚人的力量。" />
<title>Document</title>
</head>
<body><p>我爱陈伟</p>
</body>
</html>

6.3,标签要严格封闭

标签不封闭是灾难的:

多说一嘴,HTML、CSS就是写代码,不能算“编程”,因为这里面没有业务逻辑,加减乘除,与或非。说白了,就是用代码画画。

6.4,h和p标签

6.4.1 h 系列

<h1> 到 <h6> 都是标签:

<h1></h1> 一级标题

<h2></h2> 二级标题

……

<h6></h6> 六级标题

h标签没有嵌套关系的。由于h3跟着一个h2,所以,我们自己就知道了这个h3是h2子标题。

1<h1>今日学习内容</h1>
2   <h2>一、复习上节课的内容</h2>
3   <h2>二、HTML骨架</h2>
4   <h3>2.1 文档声明头</h3>
5   <h3>2.2 字符集</h3>
6   <h3>2.3 关键字和页面描述</h3>
7   <h3>2.4 title标签</h3>
8   <h2>三、HTML的基本语法特性 </h2>
9   <h3>3.1 HTML对换行不敏感,对tab不敏感</h3>
10  <h3>3.2 空白折叠现象</h3>
11  <h3>3.3 标签要严格封闭</h3>
12  <h2>四、h和p标签</h2><h3>4.1 h系列</h3>

h是容器级的标签。理论上里面可以放置p、ul,只是法律上的允许,在语义上,不要这么写。

6.4.2 p 标签

段落,是英语paragraph“段落”缩写。

HTML标签是分等级的,HTML将所有的标签分为两种:容器级、文本级

顾名思义,容器级的标签,里面可以放置任何东西;文本级的标签里面,只能放置文字、图片、表单元素

<body><p><!-- p 标签只能包含文字,图片,表单元素 -->我爱摩托车<br><img src="./9d422aa4ly1go47nb6kpqj21w80u0dnh.jpg" alt="摩托车"/></p>
</body>

p标签是一个文本级标签。从学习p的第一天开始,就要死死记住:p里面只能放文字、图片、表单元素。其他的一律不能放。

Chrome浏览器 是世界上HTML5支持最好的浏览器。提供了非常好的开发工具,非常适合我们开发人员使用。审查元素功能的快捷键是F12。

Chrome的英语原意“硅”,是谷歌公司的产品,所以也叫作谷歌浏览器。

6.4.3 图片

6.3.1 能用的图片类型

页面上可以插入图片,能够插入的图片类型是:jpg(jpeg)、gif、png、bmp。类型和类型之间有什么区别,css课上讲。不能往网页中插入的图片格式是:psd、ai

6.3.2 语法

HTML页面不是直接插入图片,而是插入图片的引用地址,所以也要把图片上传到服务器上。

img是英语image“图片”的简写

src 是英语source“资源”的简写,千万不要写成scr。

src是img标签的属性,baby.jpg是这个属性的值。

这个标签和我们之前学的,都不一样,因为这个标签不是“对儿”。自封闭标签,也称为单标签。

为什么?原因很简单,如果是对儿,里面就要有内容,表示给这个内容增加语义。比如

<h1>哈哈哈哈,我是主标题啦!!!</h1>

图片就是一个图片,不需要给什么文字增加语义,所以就是自己一个人活得挺好:

我们上午学习的meta也是自封闭标签:

<meta http-equiv="Content-Type" content="text/html;charset=UTF-8" /> 

6.3.3 alt 属性

alt属性:

<img src="baby.jpg" alt="巴黎结婚照" />

alt是英语alternate“替代”的意思,就表示不管因为什么原因,当这个图片无法被显示的时候,出现的替代

6.3.4 相对路径

HTML中插入图片,所以现在有两个文件,一个html文件,一个是jpg文件。

我们关心的就是这两个文件的相对位置。即使这个网站项目,被用u盘拷给了别人,只要相对路径不变。图片一定能够正常显示。

当图片在文件夹里面的时候:

/ 基准所在的最顶级目录即根目录,根目录是相对于其他子目录来说的

./ 基准所在的当前目录

../ 基准所在的当前目录的上一级目录(当前目录的父级目录)

七,超级链接

7.1 基本写法

一个网站,是由很多html网页组成的,html网页之间能够通过超级链接互相跳转,从而形成了“网”。

语法:

<a href="1.html">结婚照</a>

7.2 a标签的另外两个属性

  • title 悬停标签

<a href="./01_我的第一个网页.html" title="html 页面">网页</a>
  •  target 是否在新窗口中打开
    <a href="./01_我的第一个网页.html" title="html 页面" target="_blank">网页</a>

blank就是“空白”的意思,就表示新建一个空白窗口。为毛有一个_ ,就是规定,没啥好解释的。

也就是说,如果不写target=”_blank”那么就是在相同的标签页打开,如果写了,就是在新的空白标签页中打开。

7.3 页面内的锚点

页面当中可以有锚点,所谓的锚点,就是一个小标记,这个小标记是用户不可察觉的,用户不知道这里有一个标记。

锚点用name属性来设置,一个a标签如果name属性(或者id属性),那么就是页面的一个锚点。

<a name="wdzp">我的作品</a>
或者:
<a id="wdzp">我的作品</a>

就能够让这个锚点在页面最顶端显示,此时页面有卷动。

这样子,用户体验会好一点,用户可以直接看到页面的内容。

#a标签id或name 名称,会跳转到页面内的链接

7.4  a是一个文本级的标签

比如一个段落中的所有文字都能够被点击,那么应该:

p包裹a:

<p><a href="">段落段落段落段落段落段落</a>
</p>

而不是a 包裹p

1<a href="">
2   <p>
3       段落段落段落段落段落段落
4   </p>
</a>

a的语义要小于p,a就是可以当做文本来处理,所以p里面相当于放的就是纯文字。

HTML骨架和基本语法相关推荐

  1. python刷题_11.学习Python,刷题才能让你感受到快(差)乐(距)!

    猜数字游戏可用一个简单的while循环来实现. 其中 随机数 的生成在第4篇介绍过, 键盘输入在上一篇介绍过 import random result = round(random.random()* ...

  2. 论文浅尝 | CoRR - 面向复杂知识问答的框架语义解析方法

    论文笔记整理:谭亦鸣,东南大学博士. 来源:CoRR abs/2003.13956 (2020) 链接:https://arxiv.org/pdf/2003.13956.pdf KBQA任务中的语义解 ...

  3. web前端学习之———互联网与HTML篇

    互联网基础原理 1.什么是互联网? 互联网:凡是能彼此通信的设备组成的网络就叫互联网. (1)内部结构: 互联网指的是通过TCP/IP协议族相互连接在一起的计算机的网络.TCP是Transmissio ...

  4. 咸鱼前端—html初识

    咸鱼前端-html HTML 初识 HTML骨架格式 HTML标签分类 HTML标签关系 字符集 HTML标签的语义化 HTML 初识 HTML(英文Hyper Text Markup Languag ...

  5. Java寒假学习总结

    一.Java语言学习:Java - 幕布 基础学习: 数据类型划分.基本数据类型.数据类型转换.运算符.表达式与语句.选择与循环语句.数组的定义及使用.方法的声明及使用,数组引用传递 面向对象编程: ...

  6. 学习日报 day02 java的语法骨架 myeclipse编辑java代码

    学习日报 day02 java的语法骨架 myeclipse编辑java代码 https://cloud.189.cn/t/3MJrm2MRNBRf 开发前的基本知识 java环境名词解释 JRE J ...

  7. html语言语法骨架格式,0002 认识HTML(骨架、DOCTYPE、lang、charset)

    学习目标 理解 1.HTML的概念 2.HTML标签的分类 3.HTML标签的关系 4.HTML标签的语义化 应用 1.HTML骨架格式 2.sublime基本使用 1. HTML 初识 HTML 指 ...

  8. J. Cheminform. | 基于SMILES的利用骨架的分子生成模型

    今天给大家介绍的是瑞典制药公司阿斯利康,伯尔尼大学和广州再生医学与健康中心广东省实验室于2020年2月4日联合发表在Journal of Cheminformatics的一篇论文,这篇文章提出了一种新 ...

  9. 第4章 JSP语法、内置对象

    第4章 JSP语法.内置对象 关于Spring Boot+Vue全栈开发实战(三方面)前端 全栈 Spring Boot JSP概述 4.1.1 什么是JSP(Java Server Page) 4. ...

最新文章

  1. Linux修改文件权限为777
  2. 疯抢当当图书 618 优惠码,花 120 买 300
  3. [Android Pro] 完美解决隐藏Listview和RecyclerView去掉滚动条和滑动到边界阴影的方案...
  4. 人工机器:作为归纳系统的深度学习
  5. MySQL数据库服务器优化详细
  6. Serilog 日志框架如何自动删除超过 N 天的日志 ?
  7. Oracle对表空间、用户、用户权限的操作
  8. Atom 编辑器系列视频课程
  9. 4.C++深入理解 面向对象部分3
  10. EventBus 发布/订阅 机制的 java 实现
  11. 阿里云文字转语音接口
  12. 萨达阿萨德发送到在线橙V
  13. Springboot 整合 RabbitMQ「三种模式使用」
  14. spark 客户端工具_邮件客户端—spark
  15. 后端使用postman进行测试
  16. 老五苏-34:慧眼独具 比起“大哥”苏-27,苏-34的个子要高大一些。
  17. 简易android通讯录
  18. 用好CRM,它能通过这6种步为企业开源节流
  19. Toast(提示信息),Dialog(弹窗).
  20. C# EF框架基础(非MVC)使用笔记

热门文章

  1. P2E的元宇宙赛车PVE正式开启,Supercars的全新赋能征程
  2. UniPro升级甘特图 推进项目进度可视化
  3. 自动化办公:教你如何快速合并Excel文件
  4. Android Realm数据库完美解析
  5. 潜龙号开启水下机器人_潜龙二号水下机器人:我的老家在沈阳
  6. 6大核心议题首度揭晓,2021下半年最强热点来了! | 2021世界区块链大会·杭州...
  7. 日复一日,年复一年,祝我們都好在新的一年.
  8. 多年前的《曹操传》存档修改器
  9. 基于Hive的搜狗搜索日志与结果Python可视化设计
  10. 图片瀑布流差异化设计尝试