#今日说码栏目# 第九集

1、伪类选择器

(伪类:指的是一个不存在的类,特殊的类,例如:伪类可能是第一个元素、被点击的元素,、鼠标移入的元素等等)

1、(以所有元素作为分母,是在所有的元素(包括同类型和不同类型的元素)自身作为分子进行排序)

①、:first-child 第一个子元素

②、:last-child 最后一个子元素

③、:nth-child( x)选中第n个子元素

特殊值:     x                   在这个括号里的值

如果要选中偶数个的元素,括号填上(2n或者even)

如果要选中奇数的元素,  括号填上(2n+1或者odd)

2、(以下伪类的分母相同的元素,以相同的元素作为分母,在同类型的子元素(只限于同类型的元素)中进行排序)

①、:first-of-type   第一个子元素

②、:last-of-type     最后一个子元素

③、:nth-of-type()    选中第n个子元素

两者能实现的功能是相似的。

3、否定伪类

语法:    :not( 筛选条件

功能是: 将符合条件的元素从选择器中去除

以下将举例实例代码:

需求一:将ul里的第一个li一直设置为红色

<!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里的第一个li一直设置为红色 */
			li:first-of-type {
				color: red;
			}
		</style>
	</head>
	<body>
		<h1>沁园春·雪</h1>
		<h3>毛泽东</h3>
		<ul>
			<span>测试</span>
			<li class="l1">望长城内外,惟余莽莽;大河上下,顿失滔滔。</li>
			<li>北国风光,千里冰封,万里雪飘。</li>
			<li>山舞银蛇,原驰蜡象,欲与天公试比高。</li>
			<li>须晴日,看红装素裹,分外妖娆。</li>
			<li>江山如此多娇,引无数英雄竞折腰。</li>
			<li>惜秦皇汉武,略输文采;唐宗宋祖,稍逊风骚。</li>
			<li>一代天骄,成吉思汗,只识弯弓射大雕。</li>
		</ul>
	</body>
</html>

效果如下:

需求二:将ul里的最后一个元素一直设置为橙色

<!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>
			li:last-of-type {
				color: orange;
			}
			/* 需求二:将ul里的最后一个元素一直设置为橙色*/
		</style>
	</head>
	<body>
		<h1>沁园春·雪</h1>
		<h3>毛泽东</h3>
		<ul>
			<span>测试</span>
			<li class="l1">望长城内外,惟余莽莽;大河上下,顿失滔滔。</li>
			<li>北国风光,千里冰封,万里雪飘。</li>
			<li>山舞银蛇,原驰蜡象,欲与天公试比高。</li>
			<li>须晴日,看红装素裹,分外妖娆。</li>
			<li>江山如此多娇,引无数英雄竞折腰。</li>
			<li>惜秦皇汉武,略输文采;唐宗宋祖,稍逊风骚。</li>
			<li>一代天骄,成吉思汗,只识弯弓射大雕。</li>
		</ul>
	</body>
</html>

 效果如下:

 需求三:将ul里的偶数个元素设置为黄色

<!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里的偶数元素一直设置为黄色
			li:nth-of-type(2n) {
				color: yellow;
			}
		</style>
	</head>
	<body>
		<h1>沁园春·雪</h1>
		<h3>毛泽东</h3>
		<ul>
			<span>测试</span>
			<li class="l1">望长城内外,惟余莽莽;大河上下,顿失滔滔。</li>
			<li>北国风光,千里冰封,万里雪飘。</li>
			<li>山舞银蛇,原驰蜡象,欲与天公试比高。</li>
			<li>须晴日,看红装素裹,分外妖娆。</li>
			<li>江山如此多娇,引无数英雄竞折腰。</li>
			<li>惜秦皇汉武,略输文采;唐宗宋祖,稍逊风骚。</li>
			<li>一代天骄,成吉思汗,只识弯弓射大雕。</li>
		</ul>
	</body>
</html>

  效果如下:

 需求四:除了第三个li元素,其他全部设置为紫色

<!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>
         /* 需求四:除了第三个li元素,其他全部设置为紫色*/
			li:not(.l3) {
				color: rgb(137, 59, 246);
			} 
		</style>
	</head>
	<body>
		<h1>沁园春·雪</h1>
		<h3>毛泽东</h3>
		<ul>
			<span>测试</span>
			<li class="l1">望长城内外,惟余莽莽;大河上下,顿失滔滔。</li>
			<li>北国风光,千里冰封,万里雪飘。</li>
			<li class="l3">山舞银蛇,原驰蜡象,欲与天公试比高。</li>
			<li>须晴日,看红装素裹,分外妖娆。</li>
			<li>江山如此多娇,引无数英雄竞折腰。</li>
			<li>惜秦皇汉武,略输文采;唐宗宋祖,稍逊风骚。</li>
			<li>一代天骄,成吉思汗,只识弯弓射大雕。</li>
		</ul>
	</body>
</html>

  效果如下:

 二、a元素的伪类

需求一:给未访问过的超链接加红色字体 

1、:link  用来表示未访问过的链接(正常链接)

<!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>
      /* 需求一:给未访问过的超链接加红色字体 */
      /*1、:link用来表示未访问过的链接(正常链接)*/
      a:link{
        text-decoration: none;
        color: red;
      }
    </style>
  </head>
  <body>
    <a href="https://www.baidu.com">百度一下</a>
  </body>
</html>

效果如下:

需求二:给访问过的超链接加绿色字体 

 2、:visited 用来表示访问过的链接

<!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>
			/* 需求二:给访问过的超链接加绿色字体 */
			/*2、:visited 用来表示访问过的链接
			 由于隐私的原因,所以visited只能改颜色 */
			a:visited{
			  color: rgb(97, 188, 6);
			}
		</style>
	</head>
	<body>
		<a href="https://www.baidu.com/a">百度一下</a>
	</body>
</html>

效果如下:

需求三:鼠标移入,链接字体变大到30px 

3、:hover 用来表示鼠标移入的状态

<!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>
			a:hover{
			font-size: 30px;
			}
		</style>
	</head>
	<body>
		<a href="https://www.baidu.com">百度一下</a>
	</body>
</html>

 效果如下:

需求四:鼠标点击后,增加背景色pink

4、:active  鼠标点击后的状态

<!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>
			/* 需求四:鼠标点击后,增加背景色pink */
			/* 4、:active  鼠标点击后的状态 */
			a:active{
			  color: fuchsia;
			}  
		</style>
	</head>
	<body>
		<a href="https://www.baidu.com">百度一下</a>
	</body>
</html>

效果如下:

 当这四个超链接联合使用的时候,应当按照 a:link{}、a:visited{}、a:hover{}、a:active{}的顺序

错误的顺序可能会导致超链接的顺序失效

 

三、伪类选择器

需求一:让文章的首字母一直为字体为40px

<!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>
      /* 需求一:让文章的首字母一直为字体为40px */
               p::first-letter{
                font-size: 40px;
               }
    </style>
  </head>
  <body>
    <q>hello</q>
    <p>Apiditate, tempora omnis impedit deleniti, iure fuga illo</p>
  </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>
      /* 需求二:让文章的第一行添加背景色黄色 */
               p::first-line{
                background-color:yellow ;
               }
    </style>
  </head>
  <body>
    <q>hello</q>
    <p>Apiditate, tempora omnis impedit deleniti, iure fuga illo</p>
  </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>
      /* 需求三:让选中的内容,字体为红色 */
               p::selection{
                color:red;
               }
    </style>
  </head>
  <body>
    <q>hello</q>
    <p>Apiditate, tempora omnis impedit deleniti, iure fuga illo</p>
  </body>
</html>

 效果如下:

需求四:在元素开始的位置前+'abc'

 

<!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>
  
      /* 需求四:在元素开始的位置前+'abc' */

               before和after必须要结合content使用 */
               
               p::before{
                content: "abc"
               }
    </style>
  </head>
  <body>
    <q>hello</q>
    <p>Apiditate, tempora omnis impedit deleniti, iure fuga illo</p>
  </body>
</html>

效果如下图所示:

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值