css 列表 hover时闪动

css 列表 hover时闪动



 

选中事件:

//企业列表增加单击事件
    $('.company-name').on('click','li.enabled',function () {
        var $self=$(this);
        $('.company-name li.li-active').removeClass('li-active').removeClass('enabled_hover').addClass('enabled');
        $self.removeClass('enabled').addClass('li-active').addClass('enabled_hover');

    });

 为什么要使用这种方式?

另外一种方式(方式二):

$('.company-name li.enabled').click(function () {
        var $self=$(this);
        $('.company-name li.li-active').removeClass('li-active').removeClass('enabled_hover').addClass('enabled');
        $self.removeClass('enabled').addClass('li-active').addClass('enabled_hover');

    });

 为什么不使用方式二呢?

因为刚开始初始选中的item的class 是"li-active enabled_hover",没有"enabled"

使用方式二时,没有给初始选中的item增加事件

 

hover时闪动的原因是原来item的border 粗细为1px,hover时border 粗细变为2px,那么item的宽高就有变化,所以导致闪动

解决方法:

hover时 宽和高分别减少2px,css如下:

没有hover时的样式:

.company-name li{ width:258px; height:30px; line-height:30px; color:#333; border:1px solid #dfdfdf; border-radius:2px; margin-bottom:10px;
                  text-align: center;
    padding:0px 1px;
}

 高度为30px,并且左右的padding分别为1px

hover时的样式:

/* hover时,高度减少两个像素 */
.company-name li.enabled:hover,.company-name li.enabled_hover{
    border:2px solid #ff4646;
    height: 28px;
    line-height: 28px;
    padding:0px 0px;
}

 如上,高度共减少了2px,左右的padding分别减少1px,达到目的

 

 

 

 

### CSS实现按钮闪动动画效果 要通过CSS实现按钮的闪动动画效果,可以通过`@keyframes`定义关键帧动画来控制按钮的状态变化。以下是具体方法: #### 使用 `@keyframes` 定义动画 利用`@keyframes`创建一个名为`flash-animation`的关键帧动画,在其中定义透明度或其他属性的变化过程。 ```css @keyframes flash-animation { 0% { opacity: 1; } 50% { opacity: 0.3; } /* 调整此处数值可改变闪烁强度 */ 100% { opacity: 1; } } ``` 上述代码表示按钮将在不同间点逐渐变暗再恢复亮度[^1]。 #### 将动画应用到按钮上 接着把该动画绑定至目标按钮,并设定其执行频率与持续长。 ```css button.flash-button { animation-name: flash-animation; animation-duration: 1s; /* 动画周期为一秒 */ animation-timing-function: ease-in-out; animation-iteration-count: infinite; /* 循环播放 */ } /* 鼠标悬停停止闪烁 */ button.flash-button:hover { animation-play-state: paused; } ``` 以上样式规则使带有`.flash-button`类名的按钮不断重复指定好的闪烁动作;当用户将鼠标放置于按钮上方,则暂停这一行为以便阅读文字内容[^2]。 #### HTML部分实例化元素 最后在HTML文档里加入实际使用的按钮对象并赋予相应样式类别名称。 ```html <button class="flash-button">分享</button> ``` 这样就完成了一个简单的基于CSS技术制作而成的支持交互反馈机制下的动态视觉呈现方案——即具备胶囊型态切换特性的社交网络服务(SNS)链接展示控件[^3]。 ### 注意事项 为了兼容更多浏览器版本以及提升用户体验质量,请记得测试最终成果是否能在主流平台上正常运作,并考虑适当调整参数直至达到理想中的观感平衡状态为止。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值