目录
一、认识列表元素
![6f86bbbfa9774dcebbca1ad8d97b15be.png](https://img-blog.csdnimg.cn/direct/6f86bbbfa9774dcebbca1ad8d97b15be.png)
二、列表的实现方式
![58ecc887b89d48d5a2b6009ff0dc74ee.png](https://img-blog.csdnimg.cn/direct/58ecc887b89d48d5a2b6009ff0dc74ee.png)
三、有序列表 – ol – li
![397939e789634a8a9dd0075667c51fb4.png](https://img-blog.csdnimg.cn/direct/397939e789634a8a9dd0075667c51fb4.png)
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<style>
ol, li {
padding: 0;
margin: 0;
list-style: none;
}
</style>
</head>
<body>
<h1>自己喜欢的电影排名: </h1>
<ol>
<li>星际穿越</li>
<li>大话西游</li>
<li>盗梦空间</li>
<li>喜洋洋和灰太狼</li>
<li>熊出没</li>
<li>奥特曼</li>
</ol>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
</body>
</html>
四、无序列表 – ul - li
![4f8f05dd25e04b6e8addd5766ddbb83d.png](https://img-blog.csdnimg.cn/direct/4f8f05dd25e04b6e8addd5766ddbb83d.png)
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<style>
ul, body, h1, p {
list-style-type: none;
padding: 0;
margin: 0;
}
</style>
</head>
<body>
<h1>常见的编程语言</h1>
<ul>
<li>
<span>1</span>
JavaScript
</li>
<li>Java</li>
<li>C++</li>
<li>Objective-C</li>
<li>Swift</li>
<li>Ruby</li>
<li>Python</li>
</ul>
</body>
</html>
五、定义列表 – dl – dt - dd
![c66903e7663c4caf966e2148e7184d87.png](https://img-blog.csdnimg.cn/direct/c66903e7663c4caf966e2148e7184d87.png)
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<style>
dl, dt, dd {
padding: 0;
margin: 0;
}
dt {
font-size: 20px;
font-weight: 700;
margin: 10px 0;
}
dd {
margin: 5px;
}
</style>
</head>
<body>
<!-- 列出前端开发各个阶段 -->
<h1>前端开发</h1>
<dl>
<dt>阶段一: 打好基础</dt>
<dd>HTML</dd>
<dd>CSS</dd>
<dd>JavaScript</dd>
<dd>JavaScript DOM</dd>
<dd>JavaScript BOM</dd>
<dd>JavaScript高级语法</dd>
<dt>阶段二: 框架实战</dt>
<dd>Node基础</dd>
<dd>Webpack基础</dd>
<dd>Git源代码管理</dd>
<dd>Vue框架实战</dd>
<dd>React框架实战</dd>
<dd>小程序+云开发</dd>
<dd>uniapp+taro</dd>
<dt>阶段三: 课程进阶</dt>
<dd>TypeScript</dd>
<dd>Vue + TypeScript</dd>
<dd>React + TypeScript</dd>
<dd>Node/开发脚手架/Node服务器开发/MySQL</dd>
<dd>Webpack高级/性能优化/Vite/Rollup/gulp</dd>
<dd>数据结构和算法</dd>
</dl>
</body>
</html>
五、列表的练习
![0e46f1b77c75401c9af9baced7b07f78.png](https://img-blog.csdnimg.cn/direct/0e46f1b77c75401c9af9baced7b07f78.png)
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<link rel="stylesheet" href="./css/reset.css">
<!--
1. 先完成结构
2. 重置样式(body/a/ul)
3. 先整体, 后局部
* 顺序: 按照从外往里. 从上往下
4. 去除重复的代码(css)
* 将重复的逻辑放到一个单独的class中(.icon)
* 不同的代码抽到不同的class(.new .hot)
-->
<style>
ul > li {
margin-top: 18px;
}
ul > li > a {
display: inline-block;
}
ul > li > a:hover {
color: #f04142;
}
/* 局部 */
ul > li .ranking {
display: inline-block;
width: 24px;
height: 24px;
margin-right: 3px;
text-align: center;
line-height: 24px;
font-weight: 700;
color: #999;
}
/* 伪类: 结构伪类(后续会详细讲解) */
ul > li:nth-child(1) .ranking {
color: #f00;
}
ul > li:nth-child(2) .ranking {
color: #0f0;
}
ul > li:nth-child(3) .ranking {
color: #00f;
}
/* 内容相关 */
ul > li .content {
display: inline;
}
/* 图标相关的 */
ul > li .icon {
position: relative;
top: 2px;
left: 4px;
display: inline-block;
width: 16px;
height: 16px;
background-image: url(../images/new_icon.svg);
}
ul > li .new {
background-image: url(../images/new_icon.svg);
}
ul > li .hot {
background-image: url(../images/hot_icon.svg);
}
</style>
</head>
<body>
<ul>
<li class="item">
<a href="#">
<span class="ranking">1</span>
<div class="content">
一花一世界明媚春天杜鹃花开满枝头色彩艳丽繁花似锦
</div>
<i class="icon"></i>
</a>
</li>
<li class="item">
<a href="#">
<span class="ranking">2</span>
<div class="content">
一花一世界明媚春天杜鹃花开满枝头色彩艳丽繁花似锦
</div>
<i class="icon new"></i>
</a>
</li>
<li class="item">
<a href="#">
<span class="ranking">3</span>
<div class="content">
一花一世界明媚春天杜鹃花开满枝头色彩艳丽繁花似锦
</div>
</a>
</li>
<li class="item">
<a href="#">
<span class="ranking">4</span>
<div class="content">
一花一世界明媚春天杜鹃花开满枝头色彩艳丽繁花似锦
</div>
<i class="icon"></i>
</a>
</li>
<li class="item">
<a href="#">
<span class="ranking">5</span>
<div class="content">
一花一世界明媚春天杜鹃花开满枝头色彩艳丽繁花似锦
</div>
<i class="icon hot"></i>
</a>
</li>
<li class="item">
<a href="#">
<span class="ranking">6</span>
<div class="content">
一花一世界明媚春天杜鹃花开满枝头色彩艳丽繁花似锦
</div>
</a>
</li>
<li class="item">
<a href="#">
<span class="ranking">7</span>
<div class="content">
一花一世界明媚春天杜鹃花开满枝头色彩艳丽繁花似锦
</div>
<i class="icon"></i>
</a>
</li>
<li class="item">
<a href="#">
<span class="ranking">8</span>
<div class="content">
一花一世界明媚春天杜鹃花开满枝头色彩艳丽繁花似锦
</div>
<i class="icon"></i>
</a>
</li>
<li class="item">
<a href="#">
<span class="ranking">9</span>
<div class="content">
一花一世界明媚春天杜鹃花开满枝头色彩艳丽繁花似锦
</div>
<i class="icon hot"></i>
</a>
</li>
</ul>
</body>
</html>
继承属性和自己的属性
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<style>
.box {
color: red !important;
}
.container {
color: #0f0;
}
</style>
</head>
<body>
<div class="box">
aaaaaaaaaa
<div class="container">我是container的内容</div>
</div>
</body>
</html>
六、认识表格元素
![6fe28ebb6ff342ed9401df5aea8466a0.png](https://img-blog.csdnimg.cn/direct/6fe28ebb6ff342ed9401df5aea8466a0.png)
七、表格常见的元素
![a2164b3869a44b9bb52e43b232fdc9e4.png](https://img-blog.csdnimg.cn/direct/a2164b3869a44b9bb52e43b232fdc9e4.png)
八、表格的练习
![2856462a68ec4885a9a26f67236f79f4.png](https://img-blog.csdnimg.cn/direct/2856462a68ec4885a9a26f67236f79f4.png)
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<style>
table {
text-align: center;
border-collapse: collapse;
}
td {
border: 1px solid #333;
padding: 8px 16px;
}
table tr:nth-child(1) {
font-weight: 700;
}
</style>
</head>
<body>
<table>
<tr>
<td>排名</td>
<td>股票名称</td>
<td>股票代码</td>
<td>股票价格</td>
<td>股票的涨跌</td>
</tr>
<tr>
<td>1</td>
<td>贵州茅台</td>
<td>600519</td>
<td>1800</td>
<td>5%</td>
</tr>
<tr>
<td>1</td>
<td>贵州茅台</td>
<td>600519</td>
<td>1800</td>
<td>5%</td>
</tr>
<tr>
<td>2</td>
<td>腾讯控股</td>
<td>00700</td>
<td>400</td>
<td>3%</td>
</tr>
<tr>
<td>3</td>
<td>五粮液</td>
<td>000858</td>
<td>160</td>
<td>8%</td>
</tr>
</table>
</body>
</html>
九、表格的其他元素
![6d966922d575450aa291c327d2d77518.png](https://img-blog.csdnimg.cn/direct/6d966922d575450aa291c327d2d77518.png)
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<style>
table {
text-align: center;
border-collapse: collapse;
}
td, th {
border: 1px solid #333;
padding: 8px 16px;
}
table tbody tr:nth-child(1) {
color: red;
font-weight: 700;
}
</style>
</head>
<body>
<table>
<caption>热门股票</caption>
<thead>
<tr>
<th>排名</th>
<th>股票名称</th>
<th>股票代码</th>
<th>股票价格</th>
<th>股票的涨跌</th>
</tr>
</thead>
<tbody>
<tr>
<td>1</td>
<td>贵州茅台</td>
<td>600519</td>
<td>1800</td>
<td>5%</td>
</tr>
<tr>
<td>1</td>
<td>贵州茅台</td>
<td>600519</td>
<td>1800</td>
<td>5%</td>
</tr>
<tr>
<td>2</td>
<td>腾讯控股</td>
<td>00700</td>
<td>400</td>
<td>3%</td>
</tr>
<tr>
<td>3</td>
<td>五粮液</td>
<td>000858</td>
<td>160</td>
<td>8%</td>
</tr>
</tbody>
<tfoot>
<tr>
<td>其他</td>
<td>其他</td>
<td>其他</td>
<td>其他</td>
<td>其他</td>
</tr>
</tfoot>
</table>
</body>
</html>
十、单元格合并
![2e08f4d4e4454edd9b9645deef6b207b.png](https://img-blog.csdnimg.cn/direct/2e08f4d4e4454edd9b9645deef6b207b.png)
十一、如何使用单元格合并呢?
![056e2a9f5aec403b864f5c0c2a2bb9f6.png](https://img-blog.csdnimg.cn/direct/056e2a9f5aec403b864f5c0c2a2bb9f6.png)
十二、单元格合并练习
![e38e1b7fa82c4c4f9bf0e7684527a0cd.png](https://img-blog.csdnimg.cn/direct/e38e1b7fa82c4c4f9bf0e7684527a0cd.png)
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<style>
table {
border-collapse: collapse;
text-align: center;
}
td {
border: 1px solid red;
padding: 10px 20px;
}
</style>
</head>
<body>
<!--
1.确定 "谁" 需要跨行或者跨列
2.确定是跨"行"还是跨"列"
3.跨几行或者几列
-->
<!-- 跨列演练 -->
<!-- <table>
<tr>
<td colspan="2">1-1</td>
</tr>
<tr>
<td>2-1</td>
<td>2-2</td>
</tr>
</table> -->
<!-- 跨行演练 -->
<table>
<tr>
<td rowspan="2">1-1</td>
<td>1-2</td>
</tr>
<tr>
<td>2-2</td>
</tr>
</table>
</body>
</html>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<style>
table {
border-collapse: collapse;
text-align: center;
}
/* tr.head {
font-weight: 700;
font-size: 20px;
} */
/* n的取值: 0和整数 */
/* 0, 1, 2, 3, 4, 5, 6......... */
table tr:nth-child(-n + 2) {
font-weight: 700;
font-size: 20px;
}
/* 属性选择器 */
table tr td[rowspan] {
font-weight: 700;
font-size: 18px;
}
td {
border: 1px solid red;
width: 100px;
height: 30px;
}
</style>
</head>
<body>
<table>
<tr>
<td colspan="6">课程表</td>
</tr>
<tr>
<td></td>
<td>星期一</td>
<td>星期二</td>
<td>星期三</td>
<td>星期四</td>
<td>星期五</td>
</tr>
<tr>
<td rowspan="4">上午</td>
<td>数学</td>
<td>数学</td>
<td>数学</td>
<td>数学</td>
<td>数学</td>
</tr>
<tr>
<td>数学</td>
<td>数学</td>
<td>数学</td>
<td>数学</td>
<td>数学</td>
</tr>
<tr>
<td>数学</td>
<td>数学</td>
<td>数学</td>
<td>数学</td>
<td>数学</td>
</tr>
<tr>
<td>数学</td>
<td>数学</td>
<td>数学</td>
<td>数学</td>
<td>数学</td>
</tr>
<tr>
<td rowspan="4">下午</td>
<td>数学</td>
<td>数学</td>
<td>数学</td>
<td>数学</td>
<td>数学</td>
</tr>
<tr>
<td>数学</td>
<td>数学</td>
<td>数学</td>
<td>数学</td>
<td>数学</td>
</tr>
<tr>
<td>数学</td>
<td>数学</td>
<td>数学</td>
<td>数学</td>
<td>数学</td>
</tr>
<tr>
<td>数学</td>
<td>数学</td>
<td>数学</td>
<td>数学</td>
<td>数学</td>
</tr>
<tr>
<td rowspan="2">晚自习</td>
<td>数学</td>
<td>数学</td>
<td>数学</td>
<td>数学</td>
<td>数学</td>
</tr>
<tr>
<td>数学</td>
<td>数学</td>
<td>数学</td>
<td>数学</td>
<td>数学</td>
</tr>
</table>
</body>
</html>
十三、作业布置
![4ae5056cdb2e44b987d3a536a95066ef.png](https://img-blog.csdnimg.cn/direct/4ae5056cdb2e44b987d3a536a95066ef.png)
十四、认识表单
![ab0605bc48964768a33a9ebe7ba30ee9.png](https://img-blog.csdnimg.cn/direct/ab0605bc48964768a33a9ebe7ba30ee9.png)
十五、常见的表单元素
![b9c1511aeee14b3bb77a3f5b66d53cc3.png](https://img-blog.csdnimg.cn/direct/b9c1511aeee14b3bb77a3f5b66d53cc3.png)
十六、input元素的使用
![05b4fe4c18e948e29abe584af8aa27cb.png](https://img-blog.csdnimg.cn/direct/05b4fe4c18e948e29abe584af8aa27cb.png)
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<!-- 行内(替换元素?) -->
<div>
<input type="text">
</div>
<div>
<input type="password">
</div>
<div>
<input type="time">
</div>
<div>
<input type="date">
</div>
<div>
<input type="file">
</div>
<input type="text" readonly>
<input type="text" readonly="readonly">
<input type="text" disabled>
<input type="text" autofocus>
</body>
</html>
十七、布尔属性(boolean attributes)
![d9a1088f181e49c68a2172acba5732af.png](https://img-blog.csdnimg.cn/direct/d9a1088f181e49c68a2172acba5732af.png)
十八、表单按钮
![46434036a0364184b361dd7042f88a75.png](https://img-blog.csdnimg.cn/direct/46434036a0364184b361dd7042f88a75.png)
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<!-- <button>我是按钮</button> -->
<!-- 用input来实现按钮的效果 -->
<form action="">
<input type="text">
<input type="date">
<div>
<input type="button" value="普通按钮">
<button>普通按钮</button>
</div>
<!-- reset可以对form中的其他表单元素进行重置 -->
<div>
<input type="reset" value="重置按钮">
<button type="reset">重置按钮</button>
</div>
<!-- submit可以对form中的其他表单元素进行提交(将数据提交给服务器) -->
<div>
<input type="submit" value="提交按钮">
<button type="submit">提交按钮</button>
</div>
</form>
</body>
</html>
十九、input和label的关系
![74c37f25765b49129278c92fe685b7de.png](https://img-blog.csdnimg.cn/direct/74c37f25765b49129278c92fe685b7de.png)
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<div>
<label for="username">
用户:
<input id="username" type="text">
</label>
</div>
<div>
<label for="password">
密码:
<input id="password" type="password">
</label>
</div>
</body>
</html>
二十、radio的使用
![f5788c06174a41adb0eef64babcad657.png](https://img-blog.csdnimg.cn/direct/f5788c06174a41adb0eef64babcad657.png)
二十一、checkbox的使用
![c383b302aa2642beb23390bcd95636bf.png](https://img-blog.csdnimg.cn/direct/c383b302aa2642beb23390bcd95636bf.png)
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<form action="/cba">
<div>
您的爱好:
<label for="basketball">
<input id="basketball" type="checkbox" name="hobby" checked value="basketball">篮球
</label>
<label for="football">
<input id="football" type="checkbox" name="hobby" value="football">足球
</label>
</div>
<input type="submit">
</form>
</body>
</html>
二十二、textarea的使用
![dd97a15de0c344899ff2a9622c9ee65f.png](https://img-blog.csdnimg.cn/direct/dd97a15de0c344899ff2a9622c9ee65f.png)
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<style>
textarea {
resize: vertical;
}
</style>
</head>
<body>
<form action="">
<label for="info">
个人描述:
<textarea name="info" id="info" cols="10" rows="6"></textarea>
</label>
</form>
</body>
</html>
二十三、select和option的使用
![2408615d192440388d2a2a39a750ac55.png](https://img-blog.csdnimg.cn/direct/2408615d192440388d2a2a39a750ac55.png)
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<select name="fruits" id="" multiple size="2">
<option value="apple" selected>苹果</option>
<option value="banana">香蕉</option>
<option value="orange">橘子</option>
</select>
</body>
</html>
二十四、form常见的属性
![27c913a866d24c04a0f09904cd8b9544.png](https://img-blog.csdnimg.cn/direct/27c913a866d24c04a0f09904cd8b9544.png)
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<form action="http://hongyuancoder.com/abc" method="post" target="_blank">
<div>
<label for="username">
用户: <input id="username" type="text" name="username">
</label>
</div>
<div>
<label for="password">
密码: <input id="password" type="password" name="password">
</label>
</div>
<!-- 性别 -->
<div>
性别:
<label for="male">
<input id="male" type="radio" name="sex" value="male">男
</label>
<label for="female">
<input id="female" type="radio" name="sex" value="female">女
</label>
</div>
<!-- 爱好 -->
<div>
爱好:
<label for="basketball">
<input id="basketball" type="checkbox" name="hobby" checked value="basketball">篮球
</label>
<label for="football">
<input id="football" type="checkbox" name="hobby" value="football">足球
</label>
</div>
<!-- 提交按钮 -->
<button type="reset">重置内容</button>
<button type="submit">提交内容</button>
</form>
</body>
</html>
二十五、请求方式的对比
![118a299a532c496d8cbc6163aad806ae.png](https://img-blog.csdnimg.cn/direct/118a299a532c496d8cbc6163aad806ae.png)
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<form action="http://www.baidu.com/s">
<input type="text" name="wd">
<button type="submit">百度一下</button>
</form>
</body>
</html>