CSS笔记——伪类和伪元素

news2024/11/23 4:58:18

在这里插入图片描述

1、伪类

伪类是用于为元素在某些特定状态下添加样式的选择器。它们可以让我们为用户与页面交互时元素的外观和行为进行样式定义。

常用的伪类有:

  • :hover ,鼠标悬停

  • :active

  • :focus ,表单聚焦

  • :blur ,失去表单聚焦

  • :link ,未访问

  • :visited ,已访问

  • :checked ,被选中(用在单复选框),状态切换做开关

  • focus-within ,一个元素获得焦点,该元素的后代都获得焦点,都可触发事件

    案例:掘金登录 (唯一子元素影响父元素的选择器)

例如,我们可以为鼠标悬停在一个链接上时的状态添加样式:

a:hover {
  text-decoration: underline;
  color: blue;
}

n的取值:2n+1 、 n(odd) 、2n (even) 、2n-1

其他伪类(结构类)

  • nth-child(n) ,选中该伪类元素列表的n个兄弟节点(优先序号,再看类型)
  • nth-last-child(n) ,和上一个相反
  • nth-of-type(n) ,优先类型,再看序号
  • nth-last-of-type(n)
  • first-child(n)/last-child(n)
  • first-of-typen)/last-of-type(n)
  • :not() ,反选

其他伪类(属性类)

  • div[attr=“val”] ,选中对应属性值的div
  • div[attr~=“val”] ,选中对应属性包含val的div
  • div[attr^=“val”] ,选中对应属性以val开头的div
  • div[attr$=“val”] ,选中对应属性以val结尾的div
  • filter:blur(3px) 模糊
2、伪元素

伪元素允许我们在元素的内容之前或之后添加一些特殊的样式,而不需要添加额外的HTML标记。伪元素可以用来添加装饰性的文本、图标等。

常用的伪元素有

  • ::before ,在前面创建伪元素

  • ::after ,在后面创建伪元素

  • ::first-letter ,首行首字(只能用于块元素)

  • ::first-line ,首行文本

  • ::selection ,被选中的文本样式修改

    伪元素激活:content取值

    1. url() ,指定资源
    2. " " ,
    3. none
    4. normal
    5. 文本

例如,我们可以使用::before伪元素来为一个元素前面添加一些内容:

h1::before {
  content: "标题:";
  font-weight: bold;
}

需要注意的是,在CSS2中,伪元素使用单冒号(:)作为前缀,而在CSS3中,它们使用双冒号(::)作为前缀。同时,在使用伪元素时,必须要设置content属性,否则伪元素的样式不会生效。

注:

  • 伪元素无法通过其他选择器选中
  • 伪元素不会被搜索引擎收录,不影响网页SEO

伪元素应用:

  • 作为不能选中的元素(user-select:none;让元素无法选中)
  • 清除浮动的高度塌陷
  • 设置字体图标
3、伪元素和伪类的区别
  • 伪元素是无中生有的,用"::",不包含在文档树
  • 伪类是表示某种状态,用":", 用于操作文档树中的元素

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1045795.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

毕业生求职应聘,性格测评怎么破?

进入到了面试和性格测试环节,也有很多小伙伴,被一个叫做性格测试的家伙给“干下来了”。性格测试这个工具,也没有那么神秘,早在头几年,很多大公司,例如阿里、美的、华为,都能在招聘中&#xff0…

现在的国内MBA教育是否同质化太严重?

如今在国内的MBA教育领域可以说是一片欣欣向荣,两百余所高校开设MBA项目招生,而报考市场也随着时代的发展持续升温,但是在这背后也存在一些问题伴随发生,其中就是MBA项目的同质化与跟风化趋势越来越明显,主要有以下几个…

每天学习3个小时能不能考上浙大MBA项目?

不少考生经常会问到上岸浙大MBA项目想要复习多长时间,这个问题其实没有固定答案。在行业十余年的经验总结来看,杭州达立易考教育认为基于每一位考生的个人复习时间、个人学习能力以及原有基础情况等不同,复习上岸的预期分数目标也会有差异&am…

接口测试--Postman常用断言

Postman的断言是用javascript语言写的 引入--什么是断言 结果中的特定属性或值与预期做对比,如果一致,则用例通过,如果不一致,断言失败,用例失败。断言,是一个完整测试用例所不可或缺的一部分&#xff0c…

maven下载、本地仓库设置与idea内置maven设置

一、下载安装maven maven下载官网:https://maven.apache.org/download.cgi 下载到本地后解压 二、配置环境变量 我的电脑-属性-高级系统设置-环境变量/系统变量 新建MAVEN_HOME 变量值为自己的maven包所在的位置 编辑path 添加 %MAVEN_HOME%\bin 三、测试 Win…

【面试八股】IP协议八股

IP协议八股 子网掩码的作用为什么IP协议需要分片IP协议什么时候需要分片IP协议是怎么进行分片的那么IP协议是如果进行标识属于同一个分片呢?TCP协议和UDP协议将数据交给IP协议之后,是否需要分片传输? 子网掩码的作用 用来标识网络号和主机号…

华为数通方向HCIP-DataCom H12-831题库(单选题:181-200)

第181题 以下关于OSPF的5类LSA中的转发地址(ForwardingAddress,FA) 的描述,正确的是哪一项? A、当FA地址为0.0.0.0时,收到该LSA的路由器认为到达目的网段的数据包应该发往对应的ABR,因此将到达ABR的下一跳地址作为这条外部路由的下一跳 B、当FA地址为0.0.0.0时,收到该LS…

Excel·VBA日期时间转换提取正则表达式函数

标准日期转换 Function 标准日期(ByVal str$) As DateDim pat$, result$arr Array("(\d{4}).*?(\d{1,2}).*?(\d{1,2})", "(\d{4}).*?(\d{1}).*?(\d{1,2})")If Len(str) < 8 Then pat arr(1) Else pat arr(0)With CreateObject("vbscript.r…

C# MQTT通讯

文章目录 前言MQTTnetMQTT初始变量生成option连接Mqtt服务器发送数据添加订阅 前言 MQTTnet是Mqtt的net版本。国内MQTTnet教程比较老旧&#xff0c;都是2.x版本。MQTTnet在4.x版本版本代码逻辑有比较大的改动。所以最后还是面向Github编程。 EMQ X介绍及安装 长链接(MQTT)测…

Mybatis3详解 之 MyBatis 基础

一、Mybatis 介绍 1、什么是Mybatis MyBatis本是Apache的一个开源项目iBatis&#xff0c;2010年这个项目由Apache Software Foundation迁移到了Google Code&#xff0c;并且改名为MyBatis&#xff0c;也就是从3.0版本开始 iBatis改名为MyBatis。并且于2013年11月迁移到Github…

集约管控、按需分配:和鲸聚焦 AI for Science 科研算力高校调配

随着人类社会进入信息时代的智能化阶段&#xff0c;数据逐渐成为基础生产要素之一&#xff0c;而算力也因此成为重要生产力。《学习时报》9 月 3 日发文《算力为何如此重要》&#xff0c;文中指出&#xff0c;人工智能技术的突破与产业数字化应用对算力提出了更高的要求&#x…

怎么把一个音频平均拆分成多个?3个方法快速拆分

怎么把一个音频平均拆分成多个&#xff1f;近年来&#xff0c;随着音频文件在日常生活和工作中的广泛应用&#xff0c;人们对于对音频进行编辑、处理和转换的需求也越来越高。由此&#xff0c;音频编辑软件应运而生&#xff0c;可帮助我们轻松地剪辑、切分、编辑和转换音频文件…

Blender纹理UV映射快速入门

推荐&#xff1a;用 NSDT编辑器 快速搭建可编程3D场景 Blender 的功能包括 UV 映射&#xff0c;它是指将 3D 模型的表面展开到 2D 平面上并将纹理或图像应用到模型表面的过程。 这是创建具有真实纹理的 3D 模型的重要组成部分。 最新版本的 Blender (3.4) 包含有用的更新和功能…

大规模语言模型的模型结构--解码器结构(PaLM,BLOOM,InstructGPT系列)

与编码器结构(encoder-only) 的语言模型结构相反&#xff0c; 解码器结构(decoder-only) 的语言模型结构只包含trans- former 结构里的 decoder 部分。在 BERT 发布之前的 GPT- 1 就是 decoder-only 的语言模型&#xff0c; 但在 GPT-3 发布并展 示其惊人表现后&#xff0c; de…

PSINS工具箱学习(二)姿态的表示:姿态阵、四元数、欧拉角、等效旋转矢量的概念和转换

原始 Markdown文档、Visio流程图、XMind思维导图见&#xff1a;https://github.com/LiZhengXiao99/Navigation-Learning 文章目录 一、基础概念1、坐标系定义1. 惯性坐标系&#xff08; i 系 &#xff09;2. 地心地固坐标系&#xff08; e 系 )3. 导航坐标系&#xff08; n 系&…

Tomcat报404问题的原因分析

1.未配置环境变量 按照需求重新配置即可。 2.IIs访问权限问题 注意:这个问题有的博主也写了,但是这个问题可有可无,意思是正常情况下,有没有都是可以访问滴放心 3.端口占用问题 端口占用可能会出现这个问题,因为tomcat的默认端口号是8080,如果在是运行tomcat时计算机的…

深度学习与视频直播美颜sdk:背后的技术革新

时下&#xff0c;深度学习技术在视频直播美颜sdk中的应用正引领着一场技术革新的浪潮。本文将探讨深度学习如何在视频直播美颜sdk背后推动了技术的革新&#xff0c;以及它是如何影响我们的日常直播体验的。 一、传统美颜技术的局限性 在深入探讨深度学习之前&#xff0c;让我们…

目标识别项目实战:基于Yolov7-LPRNet的动态车牌目标识别算法模型

目标识别项目&#xff1a;基于Yolov7-LPRNet的动态车牌目标识别算法模型(一) 前言 目标识别如今以及迭代了这么多年&#xff0c;普遍受大家认可和欢迎的目标识别框架就是YOLO了。按照官方描述&#xff0c;YOLOv8 是一个 SOTA 模型&#xff0c;它建立在以前 YOLO 版本的成功基…

MacOS Sonoma 14更新:优化小组件、升级视频会议、沉浸式游戏体验等

苹果今天发布新闻稿&#xff0c;宣布以免费软件更新形式&#xff0c;正式发布 macOS Sonoma&#xff0c;为 Mac 带来一系列丰富新功能。 在 macOS Sonoma 中&#xff0c;桌面小组件解锁了个性化 Mac 与提升效率的全新方式&#xff0c;引入精美的新屏幕保护程序、视频会议和 Saf…

golang工程——grpc TLS配置

TLS配置 非对称加密流程 TLS流程 这是单向TLS流程 ECDHE握手过程&#xff08;图片来自透视Http协议课程&#xff09; 浏览器发送Client Hello消息 客户端向服务器打招呼&#xff0c;消息中包含客户端生成的随机数C&#xff0c;客户单的TLS版本号&#xff0c;可使用的密码套…