CSS基础之伪类选择器(如果想知道CSS的伪类选择器知识点,那么只看这一篇就足够了!)

本文主要是介绍CSS基础之伪类选择器(如果想知道CSS的伪类选择器知识点,那么只看这一篇就足够了!),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

        前言:学习CSS就必须要学习选择器,在之前我们已经学习了基本选择器和复合选择器,但是还有几个选择器没有学习,这篇文章主要讲解伪类选择器。


✨✨这里是秋刀鱼不做梦的BLOG

✨✨✨想要了解更多内容可以访问我的主页秋刀鱼不做梦-CSDN博客

那么废话不多说,先让我们看一下这篇文章讲解的内容:

目录

1.伪类选择器

       

        【1】动态伪类:

        【2】结构伪类

        【3】否定伪类:

        【4】UI伪类

        【5】语言伪类


关于基本选择器和复合选择器,请浏览------------------------------------------------------------------------->CSS基础+基本选择器和复合选择器(如果想知道CSS的基础+基本选择器和复合选择器知识点,那么只看这一篇就足够了!)-CSDN博客

1.伪类选择器

        在学习伪类选择器之前,让我们先来了解一下什么是伪类:

伪类是选择器的一种,它用于选择处于特定状态的元素,让你的代码更灵活、更易于维护。

了解了什么是伪类之后,然我们开始学习伪类选择器:

先看一下伪类选择器有哪些:

       

        【1】动态伪类:

看一下常见的动态伪类

1. :link 超链接未被访问的状态。
2. :visited 超链接访问过的状态。
3. :hover 鼠标悬停在元素上的状态。
4. :active 元素激活的状态。

5. :focus 获取焦点的元素。

我们使用一个案例来展示效果:(创建一个超链接,点击就转到淘宝主页

html代码:

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><link rel="stylesheet" href="./2024.4.14.css">
</head>
<body><a href="https://www.taobao.com/">去淘宝购物</a>
</body>
</html>

CSS代码:

a:link {color: black;
}
a:visited {color: red;
}
a:hover {color: orange;
}
a:active {color: blue;
}

生成效果:(link)

悬浮:(hover)

单机不松:(active)

访问之后:(visited)

注意:

1. 设置link 、visited 、hover 、active 动态伪类的时候,必须按照link 、visited 、hover 、active 的顺序对操作对象进行设置。

2. 只有表单类元素才能使用:focus 伪类。

这样我们就知道了link、visited、hover、active的效果了。

对于focus:

我们使用我们之前学过的input输入用户名来进行举例:

hmtl代码:

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><link rel="stylesheet" href="./2024.4.14.css">
</head>
<body>用户名:<input type="text">
</body>
</html>

CSS代码:

input:focus {background-color: green;color: orange;
}

生成效果:

获取焦点之后:

这样我们就了解了动态伪类的知识点了。

        【2】结构伪类

        结构伪类在日常的操作中使用的频率并不是很高,所有只需要了解即可:

常用的结构伪类:

解释:

1. :first-child 所有兄弟元素中的第一个。
2. :last-child 所有兄弟元素中的最后一个。
3. :nth-child(n) 所有兄弟元素中的第 n 个。
4. :first-of-type 所有同类型兄弟元素中的第一个。
5. :last-of-type 所有同类型兄弟元素中的最后一个。
6. :nth-of-type(n) 所有同类型兄弟元素中的 第n个 。

对于n的值:

        1. 0 或不写:什么都选不中 —— 几乎不用。
        2. n :选中所有子元素 —— 几乎不用。
        3. 1~正无穷的整数 :选中对应序号的子元素。
        4. 2n 或 even :选中序号为偶数的子元素。
        5. 2n+1 或 odd :选中序号为奇数的子元素。
        6. -n+3 :选中的是前3 个。

补充:(这些使用的场景更少了,主要了解一下即可)

1. :nth-last-child(n) 所有兄弟元素中的倒数第 n 个。
2. :nth-last-of-type(n) 所有同类型兄弟元素中的 倒数第n个 。
3. :only-child 选择没有兄弟的元素(独生子女)。
4. :only-of-type 选择没有同类型兄弟的元素。
5. :root 根元素。
6. :empty 内容为空元素(空格也算内容)。

以上结构伪类不在进行详细的讲解,如果读者需要,可以自行编写代码。

        【3】否定伪类:

否定伪类就是排除满足条件的元素,使选择器的选择更加的灵活。

编写形式:

:not(选择器)

我们直接使用案例讲解:

html代码:

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><link rel="stylesheet" href="./2024.4.14.css">
</head>
<body><div>这是第1行文字</div><div>这是第2行文字</div><div class="text3">这是第3行文字</div><div>这是第4行文字</div>
</body>
</html>

CSS代码:

/* 在div标签中排除.text3类 */
div:not(.text3) {color: red;background-color: orange;
}

结果:

这就是否定伪类的使用。

        【4】UI伪类

常见的UI伪类有:

解释:

1. :checked 被选中的复选框或单选按钮。
2. :enable 可用的表单元素(没有 disabled 属性)。
3. :disabled 不可用的表单元素(有disabled 属性)。

先来看一下checked:

html代码:

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><link rel="stylesheet" href="./2024.4.14.css">
</head>
<body>性别:<input type="radio">男 <input type="radio">女
</body>
</html>

CSS代码:

input:checked {width: 50px;height: 50px;
}

没有选中前:

选中后:

再来看enable和disable:

html代码:

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><link rel="stylesheet" href="./2024.4.14.css">
</head>
<body>用户名:<input type="text" disabled><br>密码:<input type="password">
</body>
</html>

CSS代码:

input:enabled {background-color: red;
}
input:disabled {background-color: blue;
}

结果:

这就是UI伪类的使用方式。

        【5】语言伪类

代码格式:

:lang() 根据指定的语言选择元素

我们直接使用案例讲解:

html代码:

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><link rel="stylesheet" href="./2024.4.14.css">
</head>
<body><div lang="zh-CH">这是一段文字1</div><div>这是一段文字2</div>
</body>
</html>

CSS代码:

div:lang(zh-CH) {background-color: green;color: orange;
}

结果:

这就是语言伪类的使用方式。

关于基本选择器和复合选择器,请浏览------------------------------------------------------------------------->

CSS基础+基本选择器和复合选择器(如果想知道CSS的基础+基本选择器和复合选择器知识点,那么只看这一篇就足够了!)-CSDN博客


以上就是这篇文章的全部内容了~~~

这篇关于CSS基础之伪类选择器(如果想知道CSS的伪类选择器知识点,那么只看这一篇就足够了!)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/903425

相关文章

一篇文章彻底搞懂macOS如何决定java环境

《一篇文章彻底搞懂macOS如何决定java环境》MacOS作为一个功能强大的操作系统,为开发者提供了丰富的开发工具和框架,下面:本文主要介绍macOS如何决定java环境的相关资料,文中通过代码... 目录方法一:使用 which命令方法二:使用 Java_home工具(Apple 官方推荐)那问题来了,

从基础到高级详解Go语言中错误处理的实践指南

《从基础到高级详解Go语言中错误处理的实践指南》Go语言采用了一种独特而明确的错误处理哲学,与其他主流编程语言形成鲜明对比,本文将为大家详细介绍Go语言中错误处理详细方法,希望对大家有所帮助... 目录1 Go 错误处理哲学与核心机制1.1 错误接口设计1.2 错误与异常的区别2 错误创建与检查2.1 基础

vite搭建vue3项目的搭建步骤

《vite搭建vue3项目的搭建步骤》本文主要介绍了vite搭建vue3项目的搭建步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学... 目录1.确保Nodejs环境2.使用vite-cli工具3.进入项目安装依赖1.确保Nodejs环境

Nginx搭建前端本地预览环境的完整步骤教学

《Nginx搭建前端本地预览环境的完整步骤教学》这篇文章主要为大家详细介绍了Nginx搭建前端本地预览环境的完整步骤教学,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录项目目录结构核心配置文件:nginx.conf脚本化操作:nginx.shnpm 脚本集成总结:对前端的意义很多

前端缓存策略的自解方案全解析

《前端缓存策略的自解方案全解析》缓存从来都是前端的一个痛点,很多前端搞不清楚缓存到底是何物,:本文主要介绍前端缓存的自解方案,文中通过代码介绍的非常详细,需要的朋友可以参考下... 目录一、为什么“清缓存”成了技术圈的梗二、先给缓存“把个脉”:浏览器到底缓存了谁?三、设计思路:把“发版”做成“自愈”四、代码

通过React实现页面的无限滚动效果

《通过React实现页面的无限滚动效果》今天我们来聊聊无限滚动这个现代Web开发中不可或缺的技术,无论你是刷微博、逛知乎还是看脚本,无限滚动都已经渗透到我们日常的浏览体验中,那么,如何优雅地实现它呢?... 目录1. 早期的解决方案2. 交叉观察者:IntersectionObserver2.1 Inter

Vue3视频播放组件 vue3-video-play使用方式

《Vue3视频播放组件vue3-video-play使用方式》vue3-video-play是Vue3的视频播放组件,基于原生video标签开发,支持MP4和HLS流,提供全局/局部引入方式,可监听... 目录一、安装二、全局引入三、局部引入四、基本使用五、事件监听六、播放 HLS 流七、更多功能总结在 v

Spring的基础事务注解@Transactional作用解读

《Spring的基础事务注解@Transactional作用解读》文章介绍了Spring框架中的事务管理,核心注解@Transactional用于声明事务,支持传播机制、隔离级别等配置,结合@Tran... 目录一、事务管理基础1.1 Spring事务的核心注解1.2 注解属性详解1.3 实现原理二、事务事

JS纯前端实现浏览器语音播报、朗读功能的完整代码

《JS纯前端实现浏览器语音播报、朗读功能的完整代码》在现代互联网的发展中,语音技术正逐渐成为改变用户体验的重要一环,下面:本文主要介绍JS纯前端实现浏览器语音播报、朗读功能的相关资料,文中通过代码... 目录一、朗读单条文本:① 语音自选参数,按钮控制语音:② 效果图:二、朗读多条文本:① 语音有默认值:②

vue监听属性watch的用法及使用场景详解

《vue监听属性watch的用法及使用场景详解》watch是vue中常用的监听器,它主要用于侦听数据的变化,在数据发生变化的时候执行一些操作,:本文主要介绍vue监听属性watch的用法及使用场景... 目录1. 监听属性 watch2. 常规用法3. 监听对象和route变化4. 使用场景附Watch 的