TypechoJoeTheme

至尊技术网

统计
登录
用户名
密码
搜索到 2 篇与 的结果
2025-08-08

CSS:not()伪类:精准排除元素的实用技巧

CSS:not()伪类:精准排除元素的实用技巧
一、被忽视的强大选择器在日常前端开发中,我们经常遇到需要"反向选择"的场景。比如: - 给列表除最后一项外的所有项目添加下划线 - 为表单中非隐藏字段设置样式 - 选择非禁用状态的按钮传统实现可能需要额外添加class或复杂的选择器组合,而:not()伪类提供了一种更优雅的解决方案。这个2008年就出现在CSS3规范中的选择器,至今仍被许多开发者低估。二、:not()伪类基础语法css selector:not(exception) { /* 样式规则 */ }核心特点: 1. 接受简单选择器或选择器列表作为参数 2. 匹配不符合括号内条件的元素 3. 优先级计算与普通伪类相同(0,1,0)三、实战应用场景3.1 表单元素精准控制css /* 为非禁用的输入框添加背景色 */ input:not([disabled]) { background-color: #f5f5f5; }/* 排除只读文本框 */ input:not([readonly]) { border-color: #3498db; }3.2 列表项特殊处理css /* 除首尾项外的列表项样式 */ l...
2025年08月08日
25 阅读
0 评论
2025-07-19

CSS伪类与伪元素:前端开发必须掌握的核心概念

CSS伪类与伪元素:前端开发必须掌握的核心概念
一、本质差异:状态修饰 vs 虚拟节点伪类(Pseudo-class)和伪元素(Pseudo-element)最根本的区别在于它们作用的目标对象不同: 伪类是状态选择器用于选择处于特定状态的元素,比如:hover响应鼠标悬停,:checked匹配被选中的表单元素。它们像"条件滤镜"一样筛选DOM中的真实元素。 css /* 当链接被访问过时应用样式 */ a:visited { color: purple; } 伪元素是虚拟节点会在文档流中创建原本不存在的抽象元素,例如::before在元素前插入内容,::first-letter修饰首字母。它们像"动态HTML生成器"一样扩展DOM结构。 css /* 在每个段落前添加红色引号 */ p::before { content: "“"; color: red; }二、语法演变:从CSS2到CSS3的规范进化在语法发展过程中有过重要变化: - CSS2时期伪元素使用单冒号(如:before) - CSS3明确规范为双冒号(::before) - 现代浏览器仍兼容单冒号写法,但官方推荐使用双冒号实际开发建议:对伪元素坚持使...
2025年07月19日
32 阅读
0 评论