web前端
一、HTML+CSS
1、HTML(不能定义)
官方网站
1、超文本:超越文本的限制
2、标记语言:由标签构成的语言,标签都是定义好的。
3、HTML代码直接在浏览器中运行,HTML标签由浏览器解析。
细节:1、HTML标签不区分大小写,标签属性值单双引号都可以,比较松散。
2、CSS
1、层叠样式表,用于控制页面的样式。
快速入门习题
1、在vscode中新建一个文件后缀名为.html或者.htm
2、在html文件中快捷键 (!+回车),快速生成HTML标签。
3、在 < body>中写入Hello world
<!-- 文档申明,表示html -->
<!DOCTYPE html>
<!-- 语言为en,英语 -->
<html lang="en">
<head>
<!-- 浏览器采用UTF-8字符串 -->
<meta charset="UTF-8">
<!-- 浏览器兼容性问题解决 -->
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<!-- 浏览器的标签页标题 -->
<title>入门第一步</title>
</head>
<body>
<h1 style="color:blue;">Hello world!</h1>
<!-- img src:要展示图片的路径,alt:如果图片展示不出来要显示的文件内容是 -->
<img src="images/卡莎.jpg" alt="">
<img src="images/卡莎1.jpg" alt="文件错误">
</body>
</html>
实例项目新闻
代码1
<!-- 文档申明,表示html -->
<!DOCTYPE html>
<!-- 语言为en,英语 -->
<html lang="en">
<head>
<!-- 浏览器采用UTF-8字符串 -->
<meta charset="UTF-8">
<!-- 浏览器兼容性问题解决 -->
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<!-- 浏览器的标签页标题 -->
<title>masha访谈:卡莎的故事</title>
<!-- 方式二:外联样式,写在style标签中 -->
<!-- <style>
h1{
color: bisque; /*字体颜色*/
font-size: 38px;/*字体大小*/
}
</style> -->
<!-- 方式三:外联样式:写在一个单独的.css文件中(需要通过link标签在网页中引用) -->
<link rel="stylesheet" href="css/news.css">
</head>
<body>
<!-- 标题部分 -->
<!-- 图片标签:img标签
src:定义图片路径
绝对路径:
绝对磁盘路径:以盘符开头的路径:例如:C:\Users\Administrator\Desktop\WEBstudy\images\newlogo.jpg
绝对网络路径:以https://或者https://开头路径:例如:https://game.gtimg.cn/images/lol/universe/images/void_emblem.png
相对路径:相对当前html页面所在的路劲。如果和html在同一目录下使用./表示当前目录(./可以省略不写),如果在html上级目录中,使用../表示。
width:宽度
具体的像素和百分比的写法:px & %
height:高度
具体的像素和百分比的写法:px & %
-->
<img src="images/newlogo.jpg" width="30px" height="30px">卡莎故事>正文
<!-- 标题标签 h1-h6,标签逐渐变小 -->
<!-- 方式1:行内样式:写在标签的style属性中
font-size:字体大小,单位像素px
-->
<!-- <h1 style="color: #937341;font-size: 38px;">回来的女孩</h1> -->
<h1>回来的女孩</h1>
<!-- 水平线 -->
<hr>
2024年5月30日 12:00 拳头官网
<hr>
<h2>百密一疏</h2>
</body>
</html>
知识点
1、图片标签: < img >
src:指定图像的url(绝对路径/相对路径)
width:图像的宽度(像素/相对于父元素的百分比)
height:图像的高度(像素/相对父元素的百分比)
2、标题标签:< h1>-< h6>
重要程度依次降低
3、水平线标签:< hr>
4、css引用
行内样式:写在标签的style属性中
内联样式:写在style标签中(通常约定写在head标签中)
外联样式:写在一个单独的css文件中(link标签在网页中引入)
5、颜色的表示方式
关键字:预定义的颜色名:red、blue、green
rgb表示法:红绿蓝三原色,每项取值范围:0-255 :rgb(0,0,0)/rgb(125,125,125)
十六进制表示法:#开头,将数字转换成十六进制表示 :#000000、#ff0000
晾在海边–颜色代码大全网址
颜色提取器博客
6、font-size:字体大小,单位像素px
代码2
<!-- 文档申明,表示html -->
<!DOCTYPE html>
<!-- 语言为en,英语 -->
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>masha访谈:卡莎的故事</title>
<!-- 方式二:外联样式,写在style标签中 -->
<style>
span{
color: gray;
}
/* 类选择器 */
/* .cls{
color: green;
} */
/* id选择器 */
#time{
color: gray;
line-height: 48px;
}
</style>
<link rel="stylesheet" href="css/news.css">
</head>
<body>
<img src="images/newlogo.jpg" width="30px" height="30px">卡莎故事>正文
<h1>回来的女孩</h1>
<hr>
<span id="time">2024年5月30日 12:00 </span><span>拳头官网</span>
<hr>
</body>
</html>
知识点
1、< span> 没有语义
2、css选择器:用来选取需要设置样式的元素(标签)
元素选择器:
类选择器:
id选择器:页面唯一,不重复
优先级:id选择>类选择>元素选择
3、行高line-height
代码3
<!-- 文档申明,表示html -->
<!DOCTYPE html>
<!-- 语言为en,英语 -->
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>masha访谈:卡莎的故事</title>
<!-- 方式二:外联样式,写在style标签中 -->
<style>
span{
color: gray;
}
/* 类选择器 */
/* .cls{
color: green;
} */
/* id选择器 */
#time{
color: gray;
line-height: 48px;
}
a{
text-decoration: none;/*去除下划线*/
color: #3F4449;
}
</style>
<link rel="stylesheet" href="css/news.css">
</head>
<body>
<img src="images/newlogo.jpg" width="30px" height="30px"><a href="https://yz.lol.qq.com/zh_CN/champions/">英雄故事</a>>卡莎
<h1>回来的女孩</h1>
<hr>
<span id="time">2024年5月30日 12:00 </span><span><a href="https://lol.qq.com/main.shtml" target="_blank">拳头官网</a></span>
<hr>
</body>
</html>
知识点
1、超链接< a href=" " target=“”>< /a>
href:指定资源访问的url
target:指定在何处打开资源链接
_self:默认值,在当前页面打开
_blank:在空白页面打开
2、text-decoration: none; 去除下划线
代码4
<!-- 文档申明,表示html -->
<!DOCTYPE html>
<!-- 语言为en,英语 -->
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>masha访谈:卡莎的故事</title>
<!-- 方式二:外联样式,写在style标签中 -->
<style>
span{
color: gray;
}
/* 类选择器 */
/* .cls{
color: green;
} */
/* id选择器 */
#time{
color: gray;
line-height: 48px;
}
a{
text-decoration: none;/*去除下划线*/
color: #3F4449;
}
p{
text-indent: 35px;
}
#plast{
text-align: right;
}
</style>
<link rel="stylesheet" href="css/news.css">
</head>
<body>
<img src="images/newlogo.jpg" width="30px" height="30px"><a href="https://yz.lol.qq.com/zh_CN/champions/">英雄故事</a>>卡莎
<h1>回来的女孩</h1>
<hr>
<span id="time">2024年5月30日 12:00 </span><span><a href="https://lol.qq.com/main.shtml" target="_blank">拳头官网</a></span>
<hr>
<!-- 正文部分 -->
<!-- 视频 -->
<video src="video/I Can Fly-POP-STARS - K-DA女团最新MV助力英雄联盟S8(标清).mp4" controls width="680px"></video>
<!-- 音频 -->
<br>
<!-- <audio src="audio/K_DA _ Madison Beer _ 曺薇娟 (MIYEON) _ Jaira Burns _ 田小娟 (SOYEON) - POP_STARS.flac"></audio> -->
<!-- 段落+图片 -->
<p><b>关于勇猛的虚空猎手卡莎</b>:
最值得称道的可能要数她不值一提的出身。
她并不是饱经战斗洗礼的部族战士的后裔,
也不是响应召唤远道而来,对抗恕瑞玛地下不可知邪魔的勇者。
相反,曾经的她只是个普通的小女孩。
虽然生在南部沙漠的残酷环境里,
但父母的关爱给予了她温暖。白天,
她和伙伴们玩耍嬉闹;夜里,
她憧憬着自己将来在这世上的位置。</p>
<p>正是在这一切都已流落的时刻,她看到了光。</p>
<img src="images/1.jpg" width="550px" height="320px" alt="">
<p>正是在这一切都已流落的时刻,她看到了光。她跟随光亮,一直向下。</p>
<p id="plast">编辑:masha</p>
</body>
</html>
知识点
1、视频标签:< video>
src:规定视频url
controls:显示播放控件
width:播放器的宽度
height:播放器的高度
2、音频标签< audio>
src:规定音频的url
controls:显示播放控件
3、段落标签< p>
文本加粗标签:< b>,< strong>
4、换行标签:< br>
5、首行缩进:text-indent
6、规定文本对齐方式:text-align (center–居中 left–左 right–右)
代码5
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>盒子模型</title>
<style>
div{
border: 10px solid red ;
width: 200px;
height: 200px;
box-sizing: border-box;
background-color: aquamarine;
padding: 20px;
margin: 30px;
}
</style>
</head>
<body>
<div>
A A A A A A A A A A A A A A A A A A A A A A
</div>
</body>
</html>
知识点
1、盒子模型:页面中所有的标签都可以看做事一个盒子,通过盒子的视角更方便的进行页面布局操作。
2、盒子模型的组成:内容区域(content)、内边距(padding)、边框(border)、外边距(margin)简单说,盒子模型其实就是三个css属性:padding 、border、margin
3、布局标签:
①实际开发网页中,会大量使用div 和span 。
②标签:< div>、< span>
③特点:
div 标签:一行只显示一个(独占一行) 宽度默认事父元素的宽度,高度默认由内容撑开,可以设置宽高。
span标签:一行可以显示多个 宽度和高度默认由内容撑开,不可以设置宽高。
4、设置边框 border (宽度、线条类型、颜色)
5、盒子的宽度:box-sizing :border-box —指定width height为盒子的宽度。
6、背景颜色:background-color
7、内边距(上下左右):paddding
8、外边距(上下左右)margin —auto(水平居中)
最终案例代码
<!-- 文档申明,表示html -->
<!DOCTYPE html>
<!-- 语言为en,英语 -->
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>masha访谈:卡莎的故事</title>
<!-- 方式二:外联样式,写在style标签中 -->
<style>
span{
color: gray;
}
/* 类选择器 */
/* .cls{
color: green;
} */
/* id选择器 */
#time{
color: gray;
line-height: 48px;
}
a{
text-decoration: none;/*去除下划线*/
color: #3F4449;
}
p{
text-indent: 35px;
}
#plast{
text-align: right;
}
#center{
width: 700px;
margin: auto;
}
</style>
<link rel="stylesheet" href="css/news.css">
</head>
<body>
<div id="center">
<img src="images/newlogo.jpg" width="30px" height="30px"><a href="https://yz.lol.qq.com/zh_CN/champions/">英雄故事</a>>卡莎
<h1>回来的女孩</h1>
<hr>
<span id="time">2024年5月30日 12:00 </span><span><a href="https://lol.qq.com/main.shtml" target="_blank">拳头官网</a></span>
<hr>
<!-- 正文部分 -->
<!-- 视频 -->
<video src="video/I Can Fly-POP-STARS - K-DA女团最新MV助力英雄联盟S8(标清).mp4" controls width="680px"></video>
<!-- 音频 -->
<br>
<!-- <audio src="audio/K_DA _ Madison Beer _ 曺薇娟 (MIYEON) _ Jaira Burns _ 田小娟 (SOYEON) - POP_STARS.flac"></audio> -->
<!-- 段落+图片 -->
<p><b>关于勇猛的虚空猎手卡莎</b>:
最值得称道的可能要数她不值一提的出身。
她并不是饱经战斗洗礼的部族战士的后裔,
也不是响应召唤远道而来,对抗恕瑞玛地下不可知邪魔的勇者。
相反,曾经的她只是个普通的小女孩。
虽然生在南部沙漠的残酷环境里,
但父母的关爱给予了她温暖。白天,
她和伙伴们玩耍嬉闹;夜里,
她憧憬着自己将来在这世上的位置。</p>
<p>正是在这一切都已流落的时刻,她看到了光。</p>
<img src="images/1.jpg" width="550px" height="320px" alt="">
<p>正是在这一切都已流落的时刻,她看到了光。她跟随光亮,一直向下。</p>
<p id="plast">编辑:masha</p>
</div>
</body>
</html>
代码6
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>表格演示</title>
</head>
<body>
<table border="1px" width="800px" cellspacing="0" align="center">
<tr>
<th>序号</th>
<th>品牌logo</th>
<th>品牌标签</th>
<th>企业名称</th>
</tr>
<tr align="center">
<td>001</td>
<td><img src="images/newlogo.jpg" width="50px" height="50px" ></td>
<td>图标1</td>
<td>tubiao1</td>
</tr>
<tr align="center">
<td>002</td>
<td><img src="images/newlogo.jpg" width="50px" height="50px"></td>
<td>图标2</td>
<td>tubiao2</td>
</tr>
</table>
</body>
</html>
知识点
1、html表格标签:
代码7
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>表单演示</title>
</head>
<body>
<!-- 将来学习了服务器相关知识,就改成服务器地址 -->
<form action="表格演示.html" method="get">
姓名:<input type="text" name="username"><br>
密码:<input type="text" name="password"><br>
<input type="submit">
</form>
</body>
</html>
知识点
1、表单标签
2、提交方式
①get:默认值,表单数据在url后面拼接,格式:url?username=java&age=22;url长度有限
②post:表单数据在请求体中,需要f12或者fn+f12==>点击network查看
两者区别:
1、get请求提交的数据在地址栏路劲后面,post请求提交的数据在请求体中
2、get请求提交数据相对不安全,post请求提交数据相对安全
3、get请求提交数据有大小限制,post请求提交数据没有大小限制
代码8
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>表单项演示</title>
</head>
<body>
<!-- 将来学习了服务器相关知识,就改成服务器地址 -->
<form action="表格演示.html" method="get">
<!-- text:普通文本输入框 -->
姓名:<input type="text" name="username"><br>
<!-- text:密码输入框 -->
密码:<input type="text" name="password"><br>
<!-- radio:单选按钮,多选1 -->
性别:<input type="radio" name="gender" value="men" checked>男
<input type="radio" name="gender" value="woman">女
<!-- checkbox:复选框,可以多选-->
爱好:
<input type="checkbox" name="hobby" value="sing">唱
<input type="checkbox" name="hobby" value="dance">跳
<input type="checkbox" name="hobby" value="rap" checked>rap
<input type="checkbox" name="hobby" value="basketball">篮球<br>
<!-- file:文件上传项,用来上传文件到服务器 -->
头像:<input type="file" name="icon">
<!-- hidden:隐藏项,从来提交不期望用户在页面看到的数据-->
<input type="hidden" name="id"><br>
<!-- email:邮箱输入框,自带简单的邮箱校验功能 -->
邮箱:<input type="email" ><br>
<!-- date:日期输入框,自带一个可以选择日期的控件 -->
生日:<input type="date" name="birthday"><br>
<!-- 下拉 -->
城市:
<select name="city" >
<option value="bj">北京</option>
<option value="sh">上海</option>
<option value="wh">武汉</option>
</select>
<br>
简介:
<textarea name="desc" cols="30" rows="10"></textarea><br>
<!-- sumbit:提交按钮,点击之后提交表单数据 -->
<br>
<input type="submit" value="注册">
<!-- reset:重置按钮,点击之后表单数据重置 -->
<br>
<input type="reset">
<!-- button:普通按钮,点击之后没有任何反应,需要结合javaScript才能做出点击效果 -->
<input type="button" value="普通按钮">
</form>
</body>
</html>
知识点
1、表单项: