当前位置: 首页 > article >正文

css | class中 ‘.‘ 和 ‘:‘ 的使用 | 如,何时用 .is-selected{ ... } 何时用 :hover{...}?

省流总结:交互时的短暂视觉反馈 → 用 :hover状态需要记录或切换 → 用类名如 .is-selected

🧠 本质区别:

写法触发方式用途
&.is-selected依赖 class 切换需要 JavaScript 控制状态,如选中、激活
&:hover鼠标悬停自动触发一般用于交互反馈,比如按钮悬停变色

问题:为何有时候使用 &.is-selected{ color:var(xxx); font-weight: 700; } 有时候使用&:hover{ background-color:var(xxx); }

解决:

  • &.is-xxxx 是 用于状态类的显式控制(如点击后加类名)——》持久状态——》需要 js/class 控制状态

  • &:hover{ ... } 用于交互状态控制(鼠标悬停、点击等)——》自动发生临时状态——》交互反馈

CSS 预处理器(如 SCSS、Less)中的嵌套写法选择器的语义区别

我们来详细解释:


详解

🔹 &.is-selected { ... } 是什么?

这是写在一个组件的样式中,意思是:

当前元素拥有 is-selected 这个类名时,应用对应样式。

.vk-select__menu-item {color: #333;&.is-selected {color: var(--primary);font-weight: 700;}
}

它会编译成:

.vk-select__menu-item.is-selected {color: var(--primary);font-weight: 700;
}

✔️ 用于“状态类”的显式控制(比如点击后加类名)


🔸 &:hover { ... } 是什么?

这是用于伪类选择器,表示当前元素被鼠标悬停时

.vk-select__menu-item {&:hover {background-color: var(--hover-bg);}
}

它会编译成:

.vk-select__menu-item:hover {background-color: var(--hover-bg);
}

✔️ 用于交互状态控制(鼠标悬浮、点击等)


🎯 应用场景对比举例:

1. 下拉选项组件:

.vk-select__menu-item {&:hover {background-color: #f0f0f0; // 鼠标悬停反馈}&.is-selected {color: var(--primary-color);  // 被选中项加颜色高亮font-weight: bold;}
}

  • :hover 用于交互反馈,自动发生

  • .is-selected 用于记录状态持久性,比如用户点了某一项


✅ 总结记忆口诀:

:hover 是临时状态
.is-selected 是持久状态(通过 JS/class 控制)

两者经常配合使用:先 hover 提示,点击后选中变样式。

相关文章:

css | class中 ‘.‘ 和 ‘:‘ 的使用 | 如,何时用 .is-selected{ ... } 何时用 :hover{...}?

省流总结:交互时的短暂视觉反馈 → 用 :hover,状态需要记录或切换 → 用类名如 .is-selected。 🧠 本质区别: 写法触发方式用途&.is-selected依赖 class 切换需要 JavaScript 控制状态,如选中、激活&:hover鼠…...

【第九篇】 SpringBoot测试补充篇

简介 本文介绍了SpringBoot测试中的五项关键技术:测试类专用属性加载、 测试类专用Bean配置、 表现层测试方法、测试类事务回滚控制、配置文件随机数据设置)。这些技术可以有效隔离测试环境,确保测试数据不影响生产环境,同时提供了…...

springcloud SpringAmqp消息队列 简单使用

这期只是针对springBoot/Cloud 在使用SpringAmqp消息队列的时候遇到的坑。 前提 如果没有安装RabbitMQ是无法连接成功的!所以前提是你要安装好RabbitMQ。 docker 安装命令 # 拉取docker镜像 docker pull rabbitmq:management# 创建容器 docker run -id --namera…...

Framework开发之IMS逻辑浅析1--关键线程及作用

关键线程:EventHub,InputReader,InputDispatcher EventHub: 由于Android继承Linux,Linux的思想是一切皆文件,而输入的类型不止一种(触碰,写字笔,键盘等),每种类型都对应一种驱动设备,而每个硬件驱动设备又对应Linux的一个目录文件…...

The Quantization Model of Neural Scaling

文章目录 摘要1引言2 理论3 概念验证:一个玩具数据集3.1 “多任务稀疏奇偶校验”数据集3.2 幂律规模和新兴能力 4 拆解大型语言模型的规模定律4.1 单token损失的分布4.2 单基因(monogenic)与多基因(polygenic)的规模曲…...

数据源指的是哪里的数据,磁盘中还是内存中

在 MyDB 项目中,特别是这段缓存框架代码: T obj getForCache(key);以及它的上下文: AbstractCache 是一个抽象类,内部有两个抽象方法,留给实现类去实现具体的操作: protected abstract T getForCache(lon…...

系统思考:跳出症状看全局

明天将为华为全球采购认证管理部的伙伴们带来一场关于系统思考的深度课程!通过经典的啤酒游戏经营决策沙盘,一起沉浸式体验如何从全局视角看待问题,发现单点最优并不等于全局最优。 这不仅是一次简单的课程,更是一次洞察系统背后…...

DeepSeek R1 V2 深度探索:开源AI编码新利器,效能与创意并进

最近,AI界迎来了一位神秘的“突袭者”——DeepSeek团队悄无声息地发布了其推理模型DeepSeek R1的重磅升级版V2(具体型号R1-0528)。这款基于MIT许可的开源模型,在原版R1的基础上进行了多项令人瞩目的改进,正以其强大的潜…...

surfer15安装

安装文件 安装包和破解文件 安装 破解及汉化 打开软件...

MySQL从入门到DBA深度学习指南

目录 引言 MySQL基础入门 数据库基础概念 MySQL安装与配置 SQL语言进阶 数据库设计与规范化 数据库设计原则 表结构设计 MySQL核心管理 用户权限管理 备份与恢复 性能优化基础 高级管理与高可用 高可用与集群 故障诊断与监控 安全与审计 DBA实战与运维 性能调…...

Python训练营---DAY48

DAY 48 随机函数与广播机制 知识点回顾: 随机张量的生成:torch.randn函数卷积和池化的计算公式(可以不掌握,会自动计算的)pytorch的广播机制:加法和乘法的广播机制 ps:numpy运算也有类似的广播机…...

debian12拒绝海外ip连接

确保 nftables 已安装: Debian 12 默认使用 nftables 作为防火墙框架。检查是否安装: sudo apt update sudo apt install nftables启用并启动 nftables 服务 sudo systemctl enable nftables sudo systemctl start nftables下载maxmind数据库 将文件解…...

70年使用权的IntelliJ IDEA Ultimate安装教程

安装Java环境 下载Java Development Kit (JDK) 从Oracle官网或OpenJDK。推荐选择JDK 11或更高版本。 运行下载的安装程序,按照提示完成安装。注意记录JDK的安装路径(如C:\Program Files\Java\jdk-11.0.15)。 配置环境变量: 右键…...

MySQL的日志

就相当于人的日记本,记录每天发生的事,可以对数据进行追踪 一、错误日志 也就是存放错误信息的 二、二进制日志-binlog 在低版本的MySQL中,二进制日志是不会默认开启的 存放除了查询语句的其他语句 三、查询日志 查询日志会记录客户端的所…...

低功耗高安全:蓝牙模块在安防系统中的应用方案

随着物联网(IoT)和智能家居的快速发展,安防行业正迎来前所未有的技术革新。蓝牙模块作为一种低功耗、高稳定性的无线通信技术,凭借其低成本、易部署和智能化管理等优势,在安防领域发挥着越来越重要的作用。本文将探讨蓝牙模块在安防系统中的应…...

数据库(sqlite)基本操作

数据库(sqlite) 一:简介: 为什么需要单独的数据库来进行管理数据? 数据的各种查询功能数据的备份和恢复花大量时间在文件数据的结构设计和维护上要考虑多线程对数据的操作会涉及到同步问题,会增加很多额…...

【HarmonyOS 5】游戏开发教程

一、开发环境搭建 ‌工具配置‌ 安装DevEco Studio 5.1,启用CodeGenie AI助手(Settings → Tools → AI Assistant)配置游戏模板:选择"Game"类型项目,勾选手机/平板/折叠屏多设备支持 二、游戏引擎核心架构…...

神经元激活函数在神经网络里起着关键作用

神经元激活函数在神经网络里起着关键作用,它能为网络赋予非线性能力,让网络可以学习复杂的函数映射关系。下面从多个方面详细剖析激活函数的作用和意义: 1. 核心作用:引入非线性因素 线性模型的局限性: 假设一个简单…...

[蓝桥杯 2024 国 B] 蚂蚁开会

问题描述 二维平面上有 n 只蚂蚁,每只蚂蚁有一条线段作为活动范围,第 i 只蚂蚁的活动范围的两个端点为 (uix,uiy),(vix,viy)。现在蚂蚁们考虑在这些线段的交点处设置会议中心。为了尽可能节省经费,它们决定只在所有交点为整点的地方设置会议…...

GIT(AI回答)

在Git中,git push 命令主要用于将本地分支的提交推送到‌远程仓库‌(如GitHub、GitLab等)。如果你希望将本地分支的改动同步到另一个‌本地分支‌,这不是 git push 的设计目的。以下是正确的替代方法: 方法1&#xff1…...

JAVA学习-练习试用Java实现“TF-IDF算法 :用于文本特征提取。”

问题: java语言编辑,实现TF-IDF算法 :用于文本特征提取。 解答思路: TF-IDF(Term Frequency-Inverse Document Frequency)是一种常用的文本特征提取方法,用于评估一个词语对于一个文件集或一个语料库中的其中一份文件的…...

C++定长内存块的实现

内存池 内存池是指程序预先从操作系统 申请一块足够大内存 ,此后,当程序中需要申请内存的时候,不是直接向操作系统申请,而是 直接从内存池中获取 ; 同理,当 **程序释放内存 **的时候,并不真正将…...

【判断自整除数】2022-4-6

缘由是判断自整除数的,这个我的结果是正确的,但是提交就有运行错误是怎么回事啊-编程语言-CSDN问答 void 自整除数字() {//所谓的自整除数字就是该数字可以整除其每一个位上的数字。 //对一个整数n,如果其各个位数的数字相加得到的数m能整除n,则称n为自…...

使用 Ansible 在 Windows 服务器上安装 SSL 证书系列之二

今天带大家实战一下如何通过ansible在windows 服务器上给iis web site安装证书。 前提条件: 准备一张pfx证书,可以通过openssl工具来生成,具体的步骤请参考帮助文档。一台安装了iis 的windows 服务器 准备inventory文件 [windows] solarwinds ansible_host=20.47.126.72 a…...

Unity使用代码分析Roslyn Analyzers

一、创建项目(注意这里不要选netstandard2.1会有报错) 二、NuGet上安装Microsoft.CodeAnalysis.CSharp 三、实现[Partial]特性标注的类,结构体,record必须要partial关键字修饰 需要继承DiagnosticAnalyzer 注意一定要加特性Diagn…...

大数据CSV导入MySQL

CSV Import MySQL 源码主要特性技术栈快速开始1. 环境要求2. 构建项目3. 使用方式交互式模式命令行模式编程方式使用 核心组件1. CsvService2. DatabaseService3. CsvImportService 数据类型映射性能优化1. 连接池优化2. 批量操作优化3. MySQL配置优化 配置说明application.yml…...

GitHub 趋势日报 (2025年06月04日)

📊 由 TrendForge 系统生成 | 🌐 https://trendforge.devlive.org/ 🌐 本日报中的项目描述已自动翻译为中文 📈 今日获星趋势图 今日获星趋势图 1757 onlook 870 nautilus_trader 702 ChinaTextbook 582 system-design-primer 4…...

基于sqlite的任务锁(支持多进程/多线程)

前言 介绍 任务锁,在多进程服务间控制耗时任务的锁,确保相同id的耗时任务同时只有一个在执行 依赖 SqliteOp,参考这篇文章 https://blog.csdn.net/weixin_43721000/article/details/137019125 实现方式 utils/taskLock.py import timefrom utils.SqliteOp import Sqli…...

MySQL 索引优化(Explain执行计划) 详细讲解

🤟致敬读者 🟩感谢阅读🟦笑口常开🟪生日快乐⬛早点睡觉 📘博主相关 🟧博主信息🟨博客首页🟫专栏推荐🟥活动信息 文章目录 MySQL 索引优化(Explain执行计划…...

Cad 反应器 cad c#二次开发

在 AutoCAD C# 二次开发中,DocumentCollectionEventHandler 是一个委托(delegate),用于处理与 AutoCAD 文档集合(DocumentCollection)相关的事件。它属于 AutoCAD .NET API 的事件处理机制,本质…...