第一章 HTML
文章目录
- [第一章 HTML](#第一章 HTML)
- 前言
- 一、简要
-
- [1. HTML作用](#1. HTML作用)
- [2. HTML文件基本结构](#2. HTML文件基本结构)
- [二. 小技巧](#二. 小技巧)
- [三. 常见标签](#三. 常见标签)
- [四. 表格标签table](#四. 表格标签table)
- [五. 表单标签](#五. 表单标签)
-
- [1. input 文本框](#1. input 文本框)
- [2. password 密码框](#2. password 密码框)
- [3. radio 单选框](#3. radio 单选框)
- [4. label 绑定单标签](#4. label 绑定单标签)
- [5. checkbox 复选框](#5. checkbox 复选框)
- [6. textare 文本域](#6. textare 文本域)
- [7. button 按钮](#7. button 按钮)
- [8. form 数据打包容器](#8. form 数据打包容器)
- [9. checked 设置默认选项](#9. checked 设置默认选项)
- [10. select 下拉选项](#10. select 下拉选项)
- [六. 无语义标签](#六. 无语义标签)
- [七 . 用户登录网页](#七 . 用户登录网页)
- 总结
前言
今天选前端技术----HTML , 超文本标记语言 , 正常文本就是存文字 , 这个好啊 , 照片啥的都行 , 前端要用的东西有HTML , CSS , JS
一、简要
CS 客户端 / 服务器模式
BS 浏览器 / 服务器模式
1. HTML作用
HTML负责页面有什么
CSS负责内容的排版样式
JS负责交互
2. HTML文件基本结构
html标签是整个html文件的根标签(最顶层标签)
head标签中写页面的属性.
body标签中写的是页面上显示的内容
title标签中写的是页面的标题.
二. 小技巧
1.vscode
- 它不会自动保存,记得保存
- ! 后按tab或者enter , 直接生成html格式
- alt+shift+↑多行复制
- 注释注释,ctrl+/注释标签
- 标签不用写尖括号,写完标签直接回车就有了
2.浏览器
- 看成品 , 点击文件夹里代码文件直接就进去了,是浏览器页面
- 浏览器鲁棒性很强,就是有一个地方不规范但他还能理解
- 有时候运行代码和我们写的不一样,运行之后网页右键看源代码,看看一不一样
- ctrl+f5强制刷新
- 浏览器F12调试页面 , 右边小箭头点击可以定位
三. 常见标签
1.标题标签h
从h1到h6
html
<h1>一级标题</h1>
<h2>二级标题</h2>
<h3>三级标题</h3>
<h4>四级标题</h4>
效果

2.段落标签p
vscode输入Lorem直接随机生成一段话
html
<p>文本</p>
注意
- 换行与多个空格没有用 , 只相当于一个空格
- 缩进什么的是css来处理
- 换行标签要用到单独的标签
3. 换行标签br
他是单标签 , 在结尾写
或者
html
<p >ri sit neque.</p><br>
<p >ri sit neque.</p>
<p >ri sit neque.</p>
效果

4.图片标签img
img里有两个属性 : 源src , 目标alte
src : 填照片绝对路径或者相对路径 , 相对路径是以当前文件所在位置为基准,.../是上一级目录 , ./是指当前目录
同时它也可以放网页的某个图片链接
代码那一页 , 鼠标放到那里停留一会点击 , 可以借阅
实际开发项目中相对路径比较多,有需要的可以放在同一目录下 , 方便上传
alt : 写入文字,如果图片不能加载会显示文字
html
<img src="./一张图片.jpg" alt="一张老虎图片">
效果图

我们可以调宽度 width,高度 height
单位px,指像素
html
<img width ="36px" height="24px" src="./一张图片.jpg" alt="一张老虎图片">
效果图

一般设置其中一个就可以,会等比例缩放
html
<img width ="12px" src="./一张图片.jpg" alt="一张老虎图片">
效果图

可以设置边框border
html
<img width ="140px" height="120px" border="90px" src="./一张图片.jpg" alt="一张老虎图片">
效果图

注意
属性之间不分先后,属性不能写到标签之前,属性之间可以是换行或者空格,属性用键值对表示
5. 超链接a
提示里只有a:(带冒号的)才是a标签
href后面放超链接,也可以是内部网页,尽量用相对路径来写,文件放进去就是下载的意思了
HTML
<a href="http://baidu.com">百度</a>
效果演示

点击后跳转

空链接,直接写#,表示占位,项目中演示作用
HTML
<a href="#">百度</a>
属性 target,设置以哪种方式打开,black是空白页面 , 也就是它会新开一个页面
HTML
<a href="http://baidu.com" target="black">百度</a>
四. 表格标签table
表格中有行和列 :
tr表示一行 ;
td表示一个单元格,也就是列 .
table包含tr,tr包含td , 是父子关系
如果我们想用三行两列呢 , 输入
table>tr*3>td*2
回车后就变成(这里用的编译软件为vscode)
HTML
<table>
<tr>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td></td>
<td></td>
<td></td>
</tr>
</table>
但打开网页发现空白 , 因为默认没有边框 , 添加边框 , 还是用border
HTML
<table border>
<tr>
<td></td>
<td></td>
</tr>
<tr>
<td></td>
<td></td>
</tr>
<tr>
<td></td>
<td></td>
</tr>
</table>
效果 (华夫饼一样呢)

能否将缝隙删掉?
可以的 ,单元格之间有空隙,去掉
cellspacing ="0"
HTML
<table border cellspacing="0" width="90px" height="90px" >
效果

cellpadding: 内容距离边框的距离, 默认 1 像素
能否加入提示词呢?像姓名 , 班级...
用placehoder属性 , 它需要放到input标签里面
HTML
<table border width="90px" height="90px" cellspacing="0">
<tr >
<td><input type="text" placeholder="姓名"></td>
<td><input type="text" placeholder="班级"></td>
</tr>
<tr>
<td>张三</td>
<td>1班</td>
</tr>
<tr>
<td>李四</td>
<td>2班</td>
</tr>
</table>
效果 ( 展示的时候有失误 , 第二行第二列请用眼部直觉替换成1班 )

当然 , 这个带提示词的地方现在像是一个输入框(就是)
表格居中align="center"
HTML
<table border cellspacing="0" align="center" width="90px" height="90px">
<tr>
<td><input type="text" placeholder="姓名"></td>
<td><input type="text" placeholder="班级"></td>
</tr>
<tr>
<td>张三</td>
<td><1班/td>
</tr>
<tr>
<td>李四</td>
<td>2班</td>
</tr>
</table>
效果 ( 展示的时候有失误 , 第二行第二列请用眼部直觉替换成1班 )

这些其实是CSS
合并单元格
- 列合并,左边右边合并,在左边td那里 colspan="2",合并两个单元格
HTML
<table border cellspacing="0" align="center" width="90px" height="90px">
<tr>
<td><input type="text" placeholder="姓名"></td>
<td><input type="text" placeholder="班级"></td>
</tr>
<tr>
<td colspan="2">张三</td>
<td>1班</td>
</tr>
<tr>
<td>李四</td>
<td>2班</td>
</tr>
</table>
效果图

错版了!!!
被合并的地方不能写东西!!!
改
HTML
<table border cellspacing="0" align="center" height="90px">
<tr>
<td><input type="text" placeholder="姓名"></td>
<td><input type="text" placeholder="班级"></td>
</tr>
<tr>
<td colspan="2">张三</td>
<td ></td>
</tr>
<tr>
<td >李四</td>
<td>2班</td>
</tr>
</table>
效果图

- 行合并,上和下,上边td那里写rowspan
HTML
<table border cellspacing="0" align="center" height="90px">
<tr>
<td><input type="text" placeholder="姓名"></td>
<td><input type="text" placeholder="班级"></td>
</tr>
<tr>
<td colspan="2">张三</td>
</tr>
<tr>
<td >李四</td>
<td>2班</td>
</tr>
</table>
效果图

五. 表单标签
1. input 文本框
让用户输入信息的,有交互按钮两个部分,表单域,表单控件表单控件所在区域表单域表单域input后面带:
- text , 文本框
HTML
<input type="text"><br>
效果图

2. password 密码框
HTML
<input type="text">
效果图

3. radio 单选框
需要设置,让他们名字一样,代码知道是一组 , 才能进行单选
HTML
<input type="radio" name="1">羽毛球
<input type="radio" name="1">乒乓球
<input type="radio" name="1">足球
<input type="radio" name="1">羽毛球
效果图

一个现象 , 只能点击圆纽才能选上 , 那如何点击文字也可以选择上
需要让选项和文本捆绑在一起
4. label 绑定单标签
还要用到id,理论上这个input里的id和整个网页文档都不能重复
HTML
<input type="radio" name="1" id="2"><label for="2">羽毛球</label>
<input type="radio" name="1" id="3"><label for="3">乒乓球</label>
<input type="radio" name="1" id="4"><label for="4">足球</label>
<input type="radio" name="1" id="5"><label for="5">排球</label>
效果图

5. checkbox 复选框
HTML
<input type="checkbox" name="6">羽毛球
<input type="checkbox" name="6">乒乓球
<input type="checkbox" name="6">足球
<input type="checkbox" name="6">排球
效果图

6. textare 文本域
无语义标签本身没有含义,只用来包裹内容、做布局样式;当没有合适的语义标签的时候,就用它们替代。
textare,就像写简介的 , 空格有效
HTML
<textarea name="" id="">wooooo ~ 四个空格呦呦呦~~~</textarea>
效果

rows cols , 可以用这两个属性设置可见行数和字符数
7. button 按钮
HTML
<button>提交</button>
button和input submit是一样作用哦
效果图

我想通过这个按钮把数据传入后端
8. form 数据打包容器
form action=......,省略号里面写另一个接口或者页面,也就是要提交到的页面 , method 填get或者post
注意: form标签要包裹住按钮 !
HTML
<form action="Submit.html" method="get">
<input type="radio" name="1" id="2" ><label for="2">羽毛球</label>
<input type="radio" name="1" id="3" ><label for="3">乒乓球</label>
<input type="radio" name="1" id="4" ><label for="4">足球</label>
<input type="radio" name="1" id="5" ><label for="5">排球</label>
<br><br>
<input type="checkbox" name="6">羽毛球
<input type="checkbox" name="6">乒乓球
<input type="checkbox" name="6">足球
<input type="checkbox" name="6">排球
<br>
<br>
<button>提交</button>
</form>
点击提交 , 跳转后发现上面地址栏URL没有真正接收数据

因为我们没有写name , 表单提交不会把这个数据传给服务器!
name此处变成命名传输数据的类型
value是给传输的数据命名的 , 一个组里面不要一样
id是给前端的
现在我们只给单选添加value , 看看效果怎么样
HTML
<form action="Submit.html" method="get">
<input type="radio" name="1" id="2" value="羽毛球"><label for="2">羽毛球</label>
<input type="radio" name="1" id="3" value="乒乓球"><label for="3">乒乓球</label>
<input type="radio" name="1" id="4" value="足球"><label for="4">足球</label>
<input type="radio" name="1" id="5" value="排球"><label for="5">排球</label>
<br><br>
<input type="checkbox" name="6">羽毛球
<input type="checkbox" name="6">乒乓球
<input type="checkbox" name="6">足球
<input type="checkbox" name="6">排球
<br>
<br>
<button>提交</button>
</form>

效果

看 , 多选没有value , 提交显示on
9. checked 设置默认选项
HTML
<input type="radio" name="1" id="2" checked><label for="2">羽毛球</label>
刷新完就是选上的

10. select 下拉选项
用option标签,提交还是用到name,value
HTML
<select name="喜欢" id="">
<option value="足球">足球</option>
<option value="排球">排球</option>
<option value="乒乓球">乒乓球</option>
</select>


六. 无语义标签
像包装盒子
div大盒子 块级元素,独占一行
span小盒子 行级元素,不独占一行
select是块级元素 , 不会独占一行
场景
HTML
<select name="喜欢" id="">
<option value="足球">足球</option>
<option value="排球">排球</option>
<option value="乒乓球">乒乓球</option>
</select>
<textarea name="" id="">wooooo ~ 四个空格呦呦呦~~~</textarea>
效果

纯文本文字建议用span包起来,方便后续去加样式,css
HTML
<div>
<select name="喜欢" id="">
<option value="足球">足球</option>
<option value="排球">排球</option>
<option value="乒乓球">乒乓球</option>
</select>
</div>
<span>
<textarea name="" id="">wooooo ~ 四个空格呦呦呦~~~</textarea>
</span>
效果

七 . 用户登录网页
HTML
<body>
<h1>用户注册</h1>
用户名:
<input type="text" placeholder="请输入用户名"><br>
手机号码:
<input type="text" placeholder="请输入手机号码"><br>
密码:
<input type="password" placeholder="请输入密码"><br>
<button>注册</button>
已有帐号?
<a href="#">登录</a>
</body>
效果

唉呦嘿 , 着不对齐有点丑啊
稍等 , 可以用table解决
HTML
<body>
<h1>用户注册</h1>
<table>
<tr>
<td>用户名:</td>
<td><input type="text" placeholder="请输入用户名"><br></td>
</tr>
<tr>
<td>手机号码:</td>
<td><input type="text" placeholder="请输入手机号码"><br></td>
</tr>
<tr>
<td>密码:</td>
<td><input type="password" placeholder="请输入密码"><br></td>
</tr>
</table>
<button>注册</button>
已有帐号?
<a href="#">登录</a>
</body>
效果

总结
阿西 , 中间那些JavaEE的博客只写了大体草稿 , 还没有整理 , 真是蜀掉^^
不过`今天整理完了这个还是蛮开心的^^