You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

CSS菜单下划线:hover效果已实现,如何设置active状态同位置同款下划线?

实现菜单元素hover与active状态同款下划线

你只需要给处于active状态的菜单元素添加和hover一致的样式即可,因为基础下划线样式已经通过::after伪元素定义好了,仅需在active状态下把宽度设为100%:

.cool-link::after {
    content: '';
    display: block;
    width: 0;
    height: 3px;
    background: #f83269;
    transition: width .3s;
    margin-top: 18px;
}

/* 同时作用于hover和active状态,避免重复代码 */
.cool-link:hover::after,
.cool-link.active::after {
    width: 100%;
}

如果你的active状态是指元素被点击时的瞬时状态(而非通过类标记的选中状态),可以把.cool-link.active换成:active伪类:

.cool-link:hover::after,
.cool-link:active::after {
    width: 100%;
}

这样两种状态下的下划线位置、样式完全一致,还能保留原有的过渡动画效果。

内容的提问来源于stack exchange,提问作者Gavin ThriveWPcom

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.16 09:11:54