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>标签支持多媒体嵌入,新增email、date等输入类型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、浏览器渲染与第三方服务(如搜索引擎、社交媒体预览)。- 样式应用三种方式:
- 外部CSS文件(推荐,便于维护);
<style>标签内嵌;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-flow:flex-direction与flex-wrap的简写。
- 子元素属性:
order:改变渲染顺序(数值越小越靠前);flex-grow:占用剩余空间的比例;flex-shrink:空间不足时收缩比例(0表示不收缩);flex-basis:初始主轴尺寸;flex:grow、shrink、basis的简写(如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.html与media.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绑定,降低表单可访问性。 - 使用
float或position: absolute实现布局,导致维护困难。 - 未设置
viewport元标签(<meta name="viewport" content="width=device-width, initial-scale=1">),移动端布局错乱。 - CSS选择器过于泛化(如
div),导致样式污染。 - 忽视
flex-shrink: 0,在小屏设备上关键元素被过度压缩。
Practice Suggestions
- 手动创建
index2.html,复现课程中index.html的表单结构。 - 尝试修改
flex-direction、justify-content、align-items,观察布局变化。 - 在
@media查询中添加新断点(如768px),测试平板适配。 - 练习使用
console.log()在JS中输出DOM元素状态,理解事件驱动逻辑。 - 用浏览器开发者工具实时修改CSS,观察即时效果。