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

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 提示,点击后选中变样式。

相关文章:

  • 【Java实战】反射操作百倍性能优化
  • wsl开启即闪退
  • 空间转录组数据下游分析(二)
  • Prompt Enginering(提示工程)先进技术
  • MAC-安装Homebrew、安装Git
  • OPENCV形态学基础之一膨胀
  • mac:大模型系列测试
  • STM32 低功耗设计全攻略:PWR 模块原理 + 睡眠 / 停止 / 待机模式实战(串口 + 红外 + RTC 应用全解析)
  • 飞算 JavaAI 2.0.0:开启老项目迭代维护新时代
  • SpringBoot自定义EndPoint实现线程池动态管理
  • 【C++系列】模板类型特例化
  • Kotlin REPL初探
  • 多线程语音识别工具
  • 【版本控制】Git 和 GitHub 入门教程
  • 历史数据分析——辽港股份
  • Linux--vsFTP配置篇
  • Python 接口:从协议到抽象基 类(Tombola子类的测试方法)
  • Razor编程中@Helper的用法大全
  • VSCode内网安装插件
  • 【原创】基于视觉模型+FFmpeg+MoviePy实现短视频自动化二次编辑+多赛道
  • 建设网站以后怎么让百度收录呢/工作手机
  • ps网站轮播图怎么做的/seo快速排名案例
  • 最新手机网站推荐/网络推广方法怎么做
  • 那个网站教宝妈做辅食/郑州网络推广报价
  • 描写做网站专业的句子/泰安seo网络公司
  • 网站排行查询/什么是口碑营销