css 列表 hover时闪动

简介:

css 列表 hover时闪动



 

选中事件:

Js代码   收藏代码
  1. //企业列表增加单击事件  
  2.     $('.company-name').on('click','li.enabled',function () {  
  3.         var $self=$(this);  
  4.         $('.company-name li.li-active').removeClass('li-active').removeClass('enabled_hover').addClass('enabled');  
  5.         $self.removeClass('enabled').addClass('li-active').addClass('enabled_hover');  
  6.   
  7.     });  

 为什么要使用这种方式?

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

Js代码   收藏代码
  1. $('.company-name li.enabled').click(function () {  
  2.         var $self=$(this);  
  3.         $('.company-name li.li-active').removeClass('li-active').removeClass('enabled_hover').addClass('enabled');  
  4.         $self.removeClass('enabled').addClass('li-active').addClass('enabled_hover');  
  5.   
  6.     });  

 为什么不使用方式二呢?

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

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

 

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

解决方法:

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

没有hover时的样式:

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

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

hover时的样式:

Css代码   收藏代码
  1. /* hover时,高度减少两个像素 */  
  2. .company-name li.enabled:hover,.company-name li.enabled_hover{  
  3.     border:2px solid #ff4646;  
  4.     height: 28px;  
  5.     line-height: 28px;  
  6.     padding:0px 0px;  
  7. }  

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

 

相关文章
|
7月前
|
前端开发 JavaScript
css之伪类hover改变自身、子元素、其他元素的样式
css之伪类hover改变自身、子元素、其他元素的样式
126 0
|
25天前
|
前端开发
纯css3经典列表式手风琴插件
这是一款十分经典的纯css3列表手风琴插件。该插件使用css兄弟选择器和:target伪类来实现。
|
2月前
|
前端开发
CSS3:hover&demo
本文介绍了CSS中`hover`伪类的基本用法,包括改变元素自身样式、影响子元素及相邻或后续兄弟元素样式的技巧。同时,还探讨了`:before`和`:after`伪元素的使用方法,以及如何通过CSS实现边框流动效果、创建登录页面、设计轮盘游戏界面和平滑处理文本溢出等实用案例。每个示例都配有代码块,便于理解和实践。
|
2月前
|
前端开发 UED
如何使用css给一个盒子加上好看的hover阴影效果
如何使用css给一个盒子加上好看的hover阴影效果
85 1
|
4月前
|
前端开发
HTML+CSS基础知识(2)选择器的使用、盒子模型的讲解、列表的使用
该博客文章详细介绍了HTML和CSS的基础知识,包括CSS样式的应用方式、语法规则、选择器的使用、盒子模型、内边距、外边距、元素的显示类型以及overflow属性处理溢出内容的方法,并通过代码示例和测试结果截图展示了这些知识点在网页设计中的应用。
HTML+CSS基础知识(2)选择器的使用、盒子模型的讲解、列表的使用
|
6月前
|
前端开发 开发者
CSS列表属性:list-style系列属性详解
CSS列表属性:list-style系列属性详解
308 40
|
6月前
|
前端开发
CSS常用属性之(列表、表格、鼠标)属性,(如果想知道CSS的列表、表格、鼠标相关的属性知识点,那么只看这一篇就足够了!)
CSS常用属性之(列表、表格、鼠标)属性,(如果想知道CSS的列表、表格、鼠标相关的属性知识点,那么只看这一篇就足够了!)
|
5月前
|
前端开发
css实战——清除列表中最后一个元素的下边距
css实战——清除列表中最后一个元素的下边距
89 0
|
5月前
|
前端开发
前端 CSS 经典:图层放大的 hover 效果
前端 CSS 经典:图层放大的 hover 效果
48 0
|
5月前
|
前端开发 JavaScript
前端 CSS 经典:3D Hover Effect 效果
前端 CSS 经典:3D Hover Effect 效果
62 0