Summary

Overview

本课程为前端开发培训的第一天内容,聚焦于Web前端三大核心技术:HTML、CSS与JavaScript的基础知识。课程系统讲解了网页结构定义(HTML)、样式控制(CSS)、交互逻辑(JavaScript)的核心概念与实践,重点深入Flex布局与响应式设计的实现机制,并通过实际代码示例与VS Code环境演示,帮助学员建立前端开发的完整认知框架。课程为后续Vue框架与微信小程序开发奠定坚实基础。

Topic (Timeline)

1. 课程介绍与前端技术概览 [00:01:40 - 00:06:17]

  • 本次培训为期三天:第一天聚焦前端基础(HTML/CSS/JavaScript),第二天使用Vue 3开发前后端分离项目,第三天基于Vue开发微信小程序。
  • 前端技术虽繁多(如React、TypeScript、Node.js),但最终所有网站均落地为HTML、CSS、JavaScript三者组合。
  • HTML(超文本标记语言)定义网页结构与内容,核心标签包括<table>, <form>, <input>, <select>, <button>, <label>等。
  • HTML5是当前主流标准,新增语义化标签(<header>, <footer>, <article>, <section>)以适配社交媒体内容展示,新增<audio><video>标签支持多媒体嵌入,新增emaildate等输入类型API提升表单验证能力。

2. CSS样式系统与选择器 [00:06:18 - 00:10:08]

  • CSS负责网页视觉表现,类比为“装修”:定义颜色、布局、装饰元素。
  • 核心机制为选择器:通过标签名、类名、ID等精准选中元素并应用样式。
  • Flex布局是现代网页布局的核心工具,用于实现灵活、响应式的容器内元素排布。
  • 响应式设计取代旧式WAP分离站点,通过@media查询根据设备屏幕宽度动态调整布局(如320px手机端、1024px笔记本端)。
  • 常用CSS特性:transition(过渡动画)、:hover(悬停效果)、:focus(聚焦状态)等交互反馈。

3. JavaScript交互逻辑与DOM操作 [00:10:08 - 00:13:13]

  • JavaScript为网页赋予“智能控制”能力:为HTML元素添加行为逻辑。
  • 核心功能包括:变量声明、函数定义、条件判断、循环、事件监听、DOM操作。
  • DOM(文档对象模型):网页中每个元素(如按钮、图片)均为一个DOM节点,JS可通过其ID、类名等进行动态修改(如改变颜色、内容、位置)。
  • 示例:点击按钮触发表单提交、鼠标悬停改变样式、日期选择后联动后端数据。

4. HTML结构详解与语义化标签 [00:13:13 - 00:34:54]

  • 标准HTML页面结构:<head>(元信息) + <body>(可见内容)。
  • <head>包含浏览器与搜索引擎使用的元数据:
    • <title>:浏览器标签页标题;
    • <meta charset="UTF-8">:字符编码;
    • <meta name="robots" content="all">:控制搜索引擎抓取;
    • <meta name="author">:作者信息;
    • <link rel="icon">:网站图标;
    • <link rel="stylesheet">:引入CSS文件。
  • <head>内容不直接展示给用户,用于SEO、浏览器渲染与第三方服务(如搜索引擎、社交媒体预览)。
  • 样式应用三种方式:
    1. 外部CSS文件(推荐,便于维护);
    2. <style>标签内嵌;
    3. style属性内联(不推荐,难维护)。
  • CSS优先级:内联 > 内嵌 > 外部;同级时后定义覆盖前定义。

5. Flex布局核心机制与属性详解 [00:34:57 - 01:16:38]

  • Flex容器(Flex Container):通过display: flex定义,作为布局根容器。
  • 主轴(main axis)与交叉轴(cross axis)
    • flex-direction: row(默认):主轴为水平方向;
    • flex-direction: column:主轴为垂直方向。
  • 容器属性
    • flex-wrap: nowrap/wrap/wrap-reverse:控制换行行为;
    • justify-content:主轴方向对齐(flex-start, center, flex-end, space-between, space-around, space-evenly);
    • align-items:交叉轴对齐(flex-start, center, flex-end, stretch, baseline);
    • flex-flowflex-directionflex-wrap的简写。
  • 子元素属性
    • order:改变渲染顺序(数值越小越靠前);
    • flex-grow:占用剩余空间的比例;
    • flex-shrink:空间不足时收缩比例(0表示不收缩);
    • flex-basis:初始主轴尺寸;
    • flexgrowshrinkbasis的简写(如flex: 1 1 auto);
    • align-self:单独覆盖align-items设置。

6. 响应式设计实战与媒体查询 [01:16:38 - 01:54:07]

  • 使用@media查询实现响应式:
    @media (min-width: 1024px) { /* PC布局 */ }
    @media (max-width: 767px) { /* 手机布局 */ }
  • 实例演示:笔记本屏幕下为横向Flex布局,手机屏幕下自动切换为纵向(flex-direction: column)。
  • 响应式优势:单套代码适配多设备,无需维护独立WAP站点。
  • 通过VS Code打开项目文件index.htmlmedia.html,实时观察布局随窗口尺寸变化的动态效果。

7. 实战项目解析与HTML表单元素 [01:54:07 - 01:54:07]

  • 项目结构包含完整前端代码(HTML/CSS/JS),最终目标为生产数据上报表单系统。
  • 核心HTML元素:
    • <form>:表单容器,用于数据提交;
    • <label>:表单标签,通过for="id"<input>绑定,提升可访问性(点击标签聚焦输入框);
    • <input type="date"><select><button>:标准表单控件;
    • <section><header><footer>:语义化结构标签,增强代码可读性;
    • <table>:用于展示提交后的数据列表。
  • 课程强调:上午内容为下午后端集成(Node.js)与项目实操的基础,需熟练掌握HTML结构与CSS布局。

Appendix

Key Principles

  • 三要素统一:所有前端网站最终由HTML(结构)、CSS(样式)、JavaScript(行为)构成。
  • 语义化优先:使用<header><section><article>等语义标签提升可读性与SEO。
  • 响应式为标准:通过@media查询适配设备,取代多站点方案。
  • Flex布局主导:现代网页布局首选Flex,取代传统float与position。
  • CSS分离原则:避免内联样式,使用外部CSS文件便于维护与复用。

Tools Used

  • VS Code:主流前端开发编辑器,支持语法高亮、实时预览、插件扩展。
  • Chrome浏览器:主流开发调试环境,内置开发者工具(DevTools)用于审查元素与调试CSS/JS。
  • HTML5/CSS3:当前标准,支持现代Web特性。

Common Pitfalls

  • 忽略<label><input>for绑定,降低表单可访问性。
  • 使用floatposition: absolute实现布局,导致维护困难。
  • 未设置viewport元标签(<meta name="viewport" content="width=device-width, initial-scale=1">),移动端布局错乱。
  • CSS选择器过于泛化(如div),导致样式污染。
  • 忽视flex-shrink: 0,在小屏设备上关键元素被过度压缩。

Practice Suggestions

  • 手动创建index2.html,复现课程中index.html的表单结构。
  • 尝试修改flex-directionjustify-contentalign-items,观察布局变化。
  • @media查询中添加新断点(如768px),测试平板适配。
  • 练习使用console.log()在JS中输出DOM元素状态,理解事件驱动逻辑。
  • 用浏览器开发者工具实时修改CSS,观察即时效果。