HTML5与CSS3提高

语义化标签

在这里插入图片描述
在这里插入图片描述

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8" />
		<title></title>
		<style type="text/css">
			nav, header{
				height: 120px;
				background-color: pink;
				border-radius: 15px;
				width: 800px;
				margin: 15px auto;
			}
			section{
				width: 500px;
				height: 300px;
				background-color: skyblue;
			}
		</style>
	</head>
	<body>
		<header>头部标签</header>
		<nav>导航栏标签</nav>
		<section>某个区域</section>
	</body>
</html>

视频标签

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<style type="text/css">
			video{
				width: 100%;
			}
		</style>
	</head>
	<body>
		<video src="media/mi.mp4" muted="muted" controls="controls" loop="loop" poster="img/mi9.jpg"></video>
	</body>
</html>

音频标签

在这里插入图片描述
在这里插入图片描述

谷歌浏览器把音频和视频自动播放给禁止了

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body>
		<audio src="media/music.mp3" autoplay="autoplay" controls="controls"></audio>
	</body>
</html>

input表单

在这里插入图片描述
在这里插入图片描述

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body>
		<!-- 我们验证的时候必须添加form表单域 -->
		<form action="" method="">
			<ul>
				<li>邮箱: <input type="email"></li>
				<li>网址: <input type="url"></li>
				<li>日期: <input type="date"></li>
				<li>日期: <input type="time"></li>
				<li>数量: <input type="number"></li>
				<li>手机号码: <input type="tel"></li>
				<li>搜索: <input type="search"></li>
				<li>颜色: <input type="color"></li>
				<!-- 当我们点击提交按钮就可以验证表单了 -->
				<li><input type="submit" value="提交"></li>
			</ul>
		</form>
	</body>
</html>

表单属性

在这里插入图片描述
在这里插入图片描述

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<style type="text/css">
			input::placeholder {
				color: #f00;
			}
		</style>
	</head>
	<body>
		<form action="" method="">
			<input type="search" name="sear" id="" required="required" placeholder="零食" autofocus="autofocus" autocomplete="off">
			<input type="file" name="" id="" multiple="multiple">
			<input type="submit" value="提交">
		</form>

	</body>
</html>

属性选择器

在这里插入图片描述
类选择器和属性选择器 伪类选择器 权重都是10

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<style type="text/css">
			/* 必须是input,但是同时具有value属性,选择这个元素  [] */
			/* input[value]{
				color: red;
			} */
			input[type="text"]{
				color: red;
			}
			div[class^="icon"]{
				color: #87CEEB;
			}
			section[class$="data"]{
				color: green;
			}
			/* 类选择器和属性选择器 伪类选择器 权重都是10 */
		</style>
	</head>
	<body>
		<!-- 1.利用属性选择器可以就可以不用借助于类或id选择器 -->
<!-- 		<input type="text" value="请输入用户名">
		<input type="text"> -->
		<!-- 2.属性选择器还可以选择属性=值的某些元素(重点) -->
		<input type="text" value="请输入用户名">
		<input type="password">
		<!-- 3.属性选择器可以选择属性属性值开头的某些元素 -->
		<div class="icon1">小图标1</div>
		<div class="icon2">小图标2</div>
		<div class="icon3">小图标3</div>
		<div class="icon4">小图标4</div>
		<div>打酱油的</div>
		<!-- 4.属性选择器可以选择属性值结尾的某些元素 -->
		<section class="icon1-data">我是安其拉</section>
		<section class="icon2-data">我是哥斯拉</section>
		<section class="icon3-ico">我是谁?</section>
		<!-- 5.属性选择器可以选择含有属性值的某些元素 -->
	</body>
</html>

结构伪类选择器-选择第n个元素

在这里插入图片描述
在这里插入图片描述

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<style type="text/css">
			/* 1.选择ul里的第一个孩子 */
			ul li:first-child{
				background-color: #008000;
			}
			/* 2.选择ul里的最后个孩子 */
			ul li:last-child{
				background-color: #008000;
			}
			/* 3.选择ul里的某个孩子 */
			ul li:nth-child(3){
				background-color: aqua;
			}
		</style>
	</head>
	<body>
		<ul>
			<li>我是第1个孩子</li>
			<li>我是第2个孩子</li>
			<li>我是第3个孩子</li>
			<li>我是第4个孩子</li>
			<li>我是第5个孩子</li>
			<li>我是第6个孩子</li>
			<li>我是第7个孩子</li>
			<li>我是第8个孩子</li>
		</ul>
	</body>
</html>

nth-child选择器

在这里插入图片描述
在这里插入图片描述

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<style type="text/css">
			/* 偶数 */
			ul li:nth-child(2n){
				background-color: #ccc;
			}
			/* 奇数 */
			ul li:nth-child(2n+1){
				background-color: gray;
			}
			/* 前三个 */
			ol li:nth-child(-n+3){
				background-color: #00FFFF;
			}
			/* 从第四个开始 */
			ol li:nth-child(n+4){
				background-color: red;
			}
			/* 3的倍数 */
			section div:nth-child(3n){
				background-color: blueviolet;
			}
		</style>
	</head>
	<body>
		<ul>
			<li>我是第1个孩子</li>
			<li>我是第2个孩子</li>
			<li>我是第3个孩子</li>
			<li>我是第4个孩子</li>
			<li>我是第5个孩子</li>
			<li>我是第6个孩子</li>
			<li>我是第7个孩子</li>
			<li>我是第8个孩子</li>
		</ul>
		<ol>
			<li>我是第1个孩子</li>
			<li>我是第2个孩子</li>
			<li>我是第3个孩子</li>
			<li>我是第4个孩子</li>
			<li>我是第5个孩子</li>
			<li>我是第6个孩子</li>
			<li>我是第7个孩子</li>
			<li>我是第8个孩子</li>
		</ol>
		<section>
			<div>我是第1个孩子</div>
			<div>我是第2个孩子</div>
			<div>我是第3个孩子</div>
			<div>我是第4个孩子</div>
			<div>我是第5个孩子</div>
			<div>我是第6个孩子</div>
			<div>我是第7个孩子</div>
			<div>我是第8个孩子</div>
		</section>
	</body>
</html>

nth-of-type选择器

在这里插入图片描述

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<style type="text/css">
			ul li:first-of-type{
				background-color: skyblue;
			}
			ul li:last-of-type{
				background-color: skyblue;
			}
			ul li:nth-of-type(2n){
				background-color: red;
			}
			/* nth-child会把所有的盒子都排列序号 */
			/* 光头强1号,熊大二号,熊二三号 */
			section div:nth-child(1){
				background-color: green;
			}
			/* nth-child会把指定的盒子都排列序号 */
			/* 熊大一号,熊二二号 */
			section div:nth-of-type(1){
				background-color: blue;
			}
		</style>
	</head>
	<body>
		<ul>
			<li>我是第1个孩子</li>
			<li>我是第2个孩子</li>
			<li>我是第3个孩子</li>
			<li>我是第4个孩子</li>
			<li>我是第5个孩子</li>
			<li>我是第6个孩子</li>
			<li>我是第7个孩子</li>
			<li>我是第8个孩子</li>
		</ul>
		<!-- 区别 -->
		<section>
			<p>光头强</p>
			<div>熊大</div>
			<div>熊二</div>
		</section>
	</body>
</html>

伪元素选择器

在这里插入图片描述
在这里插入图片描述

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<style type="text/css">
			div{
				width: 200px;
				height: 200px;
				background-color: #bfa;
			}
			/* 权重为2 */
			div::before{
				/* content必须写 */
				content: '我';
			}
			div::after{
				content: '迪迦奥特曼';
			}
		</style>
	</head>
	<body>
		<div></div>
	</body>
</html>

伪元素选择器使用场景1:伪元素字体图标

在这里插入图片描述

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<link rel="stylesheet" type="text/css" href="font/iconfont.css"/>
		<style type="text/css">
			div{
				position: relative;
				width: 200px;
				height: 35px;
				border: 1px solid red;
			}
			div::after{
				position: absolute;
				top: 10px;
				right: 10px;
				font-family: "iconfont";
				content: '\e665';
				color: red;
				font-size: 18px;
			}
		</style>
	</head>
	<body>
		<div></div>
	</body>
</html>

伪元素选择器-仿土豆效果

在这里插入图片描述

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<style type="text/css">
			.tudo{
				position: relative;
				width: 444px;
				height: 320px;
				background-color: #bfa;
				margin: 100px auto;
			}
			.tudo img{
				width: 100%;
				height: 100%;
			}
			.tudo::before{
				content: '';
				/* 隐藏遮罩层 */
				display: none;
				position: absolute;
				top: 0;
				left: 0;
				width: 100%;
				height: 100%;
				background: rgba(0, 0, 0, 0.4) url(img/arr.png) no-repeat center;
			}
			.tudo:hover::before{
				display: block;
			}
		</style>
	</head>
	<body>
		<div>
			<div class="tudo">
				<img src="img/tudou.jpg" >
			</div>
			<div class="tudo">
				<img src="img/tudou.jpg" >
			</div>
			<div class="tudo">
				<img src="img/tudou.jpg" >
			</div>
			<div class="tudo">
				<img src="img/tudou.jpg" >
			</div>
		</div>
	</body>
</html>

盒子模型border-box

在这里插入图片描述

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<style type="text/css">
/* 			*{
				margin: 0;
				padding: 0;
				box-sizing: border-box;
			} */
			div{
				width: 200px;
				height: 200px;
				background-color: pink;
				border: 20px solid red;
				padding: 15px;
				box-sizing: content-box;
			}
			p{
				width: 200px;
				height: 200px;
				background-color: pink;
				border: 20px solid red;
				padding: 15px;
				/* css3 盒子模型 盒子最终的大小就是width的大小 */
				box-sizing: border-box;
			}
		</style>
	</head>
	<body>
		<div>小猪佩奇</div>
		<p>小猪佩奇</p>
	</body>
</html>

图片模糊处理(filter滤镜)

在这里插入图片描述
在这里插入图片描述

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<style type="text/css">
			img{
				/* blur是一个函数,数值越大图像越模糊 */
				filter: blur(5px);
			}
			img:hover{
				filter: blur(0);
			}
		</style>
	</head>
	<body>
		<img src="img/pink.jpg" >
	</body>
</html>

calc函数

在这里插入图片描述

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<style type="text/css">
			.father{
				width: 300px;
				height: 200px;
				background-color: pink;
			}
			.son{
				width: calc(100% - 30px);
				height: 30px;
				background-color: skyblue;
			}
		</style>
	</head>
	<body>
		<div class="father">
			<div class="son"></div>
		</div>
	</body>
</html>

css3过渡

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<style type="text/css">
			div{
				width: 200px;
				height: 100px;
				background-color: red;
				/* transition: width 0.5s, height 0.5s; */
				transition: all 0.5s;
			}
			div:hover{
				width: 400px;
				height: 200px;
				background-color: blue;
			}
		</style>
	</head>
	<body>
		<div></div>
	</body>
</html>

进度条练习

在这里插入图片描述

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<style type="text/css">
			.bar{
				width: 150px;
				height: 15px;
				border: 1px solid red;
				border-radius: 7px;
				padding: 1px;
			}
			.bar_in{
				width: 50%;
				height: 100%;
				background-color: red;
				/* 谁做过渡给谁加 */
				transition: all 0.5s;
			}
			.bar:hover .bar_in{
				width: 100%;
			}
		</style>
	</head>
	<body>
		<div class="bar">
			<div class="bar_in"></div>
		</div>
	</body>
</html>

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值