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,达到目的

 

时间: 2025-01-27 02:33:20

css 列表 hover时闪动的相关文章

JS实现类似QQ好友头像hover时显示资料卡的效果

一.应用场景 鼠标hover弹出div,并且鼠标离开后不能马上隐藏,因为这个div上还有功能入口.比如: 鼠标经过好友列表中的好友头像时显示资料卡的效果 hover时显示二维码 二.实现 用如下这样一个简单的效果:鼠标hover到A上显示B来模拟 有2种实现方式,推荐第二种,第一种有弊端下面会说. 1.方法一 原理:把触发元素A和要显示元素B放于同一个父级元素内,鼠标经过父级元素时触发显示B.这样鼠标移动到B时仍然 处于该父级元素内,则div不会隐藏. 代码: <!DOCTYPE html>

基于JS如何实现类似QQ好友头像hover时显示资料卡的效果(推荐)_javascript技巧

一.应用场景 鼠标hover弹出div,并且鼠标离开后不能马上隐藏,因为这个div上还有功能入口.比如: 鼠标经过好友列表中的好友头像时显示资料卡的效果如下所示: hover时显示二维码 二.实现 用如下这样一个简单的效果:鼠标hover到A上显示B来模拟 有2种实现方式,推荐第二种,第一种有弊端下面会说. 1.方法一 原理:把触发元素A和要显示元素B放于同一个父级元素内,鼠标经过父级元素时触发显示B.这样鼠标移动到B时仍然 处于该父级元素内,则div不会隐藏. 代码: <!DOCTYPE ht

css3制作网页实例:点击切换不同的CSS列表

文章简介:css3制作网页实例:点击切换不同的CSS列表. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><met

DIV+CSS设计网页时的常见错误处理技巧

以下是一些DIV+CSS设计网页时的常见错误处理技巧,希望能对大家有所帮助. 1. 检查HTML元素是否有拼写错误.是否忘记结束标记 即使是老手也经常会弄错div的嵌套关系.可以用dreamweaver的验证功能检查一下有无错误. 2. 检查CSS是否正确 检查一下有无拼写错误.是否忘记结尾的 } 等.可以利用CleanCSS来检查 CSS的拼写错误.CleanCSS本是为CSS减肥的工具,但也能检查出拼写错误. 3. 确定错误发生的位置 假如错误影响了整体布局,则可以逐个删除div块,直到删除

CSS 列表的标识

这一节唯一我们将要讨论的是如何用 CSS 来改变列表 前的标识.我们知道有两种列表:有序和无序.有序 列表用阿拉伯数字为标识, 无序列表用黑色小圆圈来 做标识.用 CSS 的 list-style-type 这两种列表的标 识都可以有四种选择: 无序: disc, circle, square, decimal 有序: upper-roman, lower-roman, upper-alpha, lower-alpha. 假如你想叫有序列表的标识为大小罗马字母 LI.upperroman {li

list-!求助:python 列表读取时的问题

问题描述 !求助:python 列表读取时的问题 project euler problem 81题我写了下面的代码,origin里面是5x5的矩阵,运行结果正常但是我把origin换成一个80x80的矩阵的时候,在读取383568的时候却读取成了326735我没有找出代码的问题,但是在codepad和terminal上运行也是错误答案求助大牛啊!!大恩不言谢 origin = ['13167323410318' '20196342965150' '630803746422111' '53769

js防止DIV布局滚动时闪动的解决方法_javascript技巧

本文实例讲述了js防止DIV布局滚动时闪动的方法,分享给大家供大家参考.具体方法如下: 最近接触页面性能的东西,有很多细微又原始的内容,比如浏览器渲染.资料非常多,所以选一些做节译,备忘. JavaScript多次写.读DOM就会发生「布局颠簸」,引起文档重排(reflow – the process of constructing a render tree 复制代码 代码如下: from a DOM tree1). // 读 var h1 = element1.clientHeight; /

access-多个列表框时第一行数据消失

问题描述 多个列表框时第一行数据消失 当vb界面有多个列表框时,运行程序时这两个列表框的有关数据第一行会消失,而其他行的数据任然存在

XML用CSS控制属性时,在chrome打开有效果,但是在IE打开就没有用

问题描述 XML用CSS控制属性时,在chrome打开有效果,但是在IE打开就没有用 <?xml version=""1.0"" encoding=""UTF-8"" ?><?xml-stylesheet type=""text/css"" href=""config.css""?> 中国美国英国德国 #a1{ font-s