走进HTML | 青训营笔记

130 阅读3分钟

这是我参与『第四届青训营』笔记创作活动的第1天

1、初识HTML

HTML: Hyper Text Markup Language ----- 超文本标记语言

HTML 不是一种编程语言,而是一种标记语言

① 基本骨架

<!-- 文档类型 -->
<!DOCTYPE html>
<!-- 根标签 -->
<html lang="en">
  <!-- 标头部标签 -->
  <head>
    <!-- 字符集 -->
    <meta charset="UTF-8" />
    <!-- 标题标签 -->
    <title></title>
  </head>
  <!-- 文档主体内容 -->
  <body>
  </body>
</html>

② 文档类型

  • 指明了文件使用的HTML的版本, 决定了浏览器使用哪一种渲染模式,如果不写DOCTYPE,浏览器会以一种老旧的怪异模式去渲染页面,页面的浏览效果就不太符合预期。

③ 页面语言lang

  • lang 指定该HTML标签内容所用的语言
  • en --- English zh-CN ----- Chinese

④ HTML 语法

  • 标签和属性不区分大小写,推荐小写
  • 空标签可以不闭合,比如 inputmeta
  • 属性值推荐用双引号包裹
  • 某些属性值可以省略,比如 requiredreadonly

2、HTML语义化标签

① 语义化是什么

  • HTML中的元素、属性及属性值都拥有某些含义
  • 开发者应该遵循语义来编写HTML
    • 有序列表用ol;无序列表用ul
    • lang 属性表示内容所使用的语言
    • ......

② 如何理解HTML语义化 (语义化的好处)

  • 让人更容易读懂 (增加代码可读性)
  • 让搜索引擎更容易读懂 (SEO)
  • 让开发者更易维护代码
  • 提升无障碍性

③ 谁在使用我们写的HTML

  • 开发者---修改、维护页面
  • 浏览器---展示页面
  • 搜索引擎---提取关键词、排序
  • 屏幕阅读器---给盲人读页面内容

④ 如何做到语义化

  • 了解每个标签和属性的含义
  • 思考什么标签最适合描述这个内容
  • 不使用可视化工具生成代码

3、块状元素 & 内联元素

① 常见的块级元素(display: block / table)

  • div --- 常见的块级盒子
  • h1 - h6 --- 标题
  • table --- 表格
  • ul / ol --- 无序列表 / 有序列表
  • p --- 段落
  • form --- 交互表单
  • pre --- 格式化文本
  • blockquote --- 块引用
  • address --- 地址

② 常见的内联元素(display: inline / inline-block)

  • a --- 锚点
  • span --- 常用内联容器,定义文本内区块
  • input --- 输入框
  • img --- 图片
  • button --- 按钮
  • b --- 加粗
  • em --- 强调
  • i --- 斜体
  • label --- 表格标签
  • textarea --- 多行文本输入框

4、HTML 5 新特性

1.语义化标签 (见下文)

2.视频和音频 (见下文)

3.form表单增强

4.Canvas绘图

5.SVG绘图

6.地理位置定位(Geolocation API )

7.拖放API

8.Web Worker

9.Web Storage

10.Web Socket

① 语义标签

image.png

header 定义文章的头部,通常是一些引导和导航信息,包含h1~h6、搜索框、logo等。

footer 定义section或document的页脚,一般配合address标签(显示地址),包含作者信息、相关链接等。

article 标签包含文章,一般内嵌header、footer、h1、p标签。

aside 用来转载非正文内容,对于主题内容的说明,例如广告、侧边栏。

section 定义文档中的节,例如小说中的一章。

nav 定义显示导航链接

② 视频和音频

  • 视频播放: <video src=""></video>

    • 查看视频的所有属性、方法、事件: console.log(videoBirds)
  • 音频播放: <audio src=""></audio>

    • 查看音频的所有属性、方法、事件: console.log(bgMusic)

最后

HTML 是前端工程师的必经之路,学习 HTML是作为一名前端开发者的本分,学好 HTML 是作为一名前端开发者的职责,寒霜傲剑,梅花自香,加油!