虚构 css 父级选择器

 能 CSS 解决的绝不用 JS,这句话又一次故作装逼地说出来还是挺爽的...

比如下拉列表,能用 CSS 的 :focus 就不用 JS 的 .on("focus blur")

能用 :hover 的就不用 .on("mouseover mouseout")

能用 :target 的就不用 .on("click")(:target 的撤回特别烦,此处只是为了押韵而已)

 

那么在实际情况中经常遇到那种:操作子级,父级变化 的情况

于是我也常常不禁去思考,CSS3 怎么就没有个 父级选择器呢...

后来发现其实还是有的,

$E > F,论坛上还多有流传,其实早就淘汰了

1
$input:focus > .container {}

!E > F,昙花一现

1
!input:focus > .container {}

:has() 伪类,推迟到 CSS5 了...CSS5?!。没错,孩子,这就是人生

1
.container:has(> input:focus) {}

 

然后这就很尴尬了呀,这篇文章该如何继续下去呢,好吧,又开始兵行险招了...

其实吧,眼见不一定为实哟...

 其实说穿了一点都不好玩了,大致贴一下代码好了。

1
2
input:focus + label {box-shadow: 0 0 5px blue;}
label {position: absolute; top: 0; left: 0; right: 0; bottom: 0; z-index: -1;}

看上去是父子级,其实还是同胞级啦,所以才叫虚构咯...The end

 

posted on   永恒的浪荡时光  阅读(252)  评论(0编辑  收藏  举报

编辑推荐:
· 后端思维之高并发处理方案
· 理解Rust引用及其生命周期标识(下)
· 从二进制到误差:逐行拆解C语言浮点运算中的4008175468544之谜
· .NET制作智能桌面机器人:结合BotSharp智能体框架开发语音交互
· 软件产品开发中常见的10个问题及处理方法
阅读排行:
· 后端思维之高并发处理方案
· 千万级大表的优化技巧
· 在 VS Code 中,一键安装 MCP Server!
· 10年+ .NET Coder 心语 ── 继承的思维:从思维模式到架构设计的深度解析
· 想让你多爱自己一些的开源计时器

导航

< 2025年4月 >
30 31 1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 1 2 3
4 5 6 7 8 9 10
点击右上角即可分享
微信分享提示