我正在为需要一些简单动画的网站构建自定义标题。标题以3个相同大小的div开始,当其中一个div被激活(单击)时,剩余的div会缩小,而激活的div会扩展以填充水平空间。
标题工作正常,但当div扩展/收缩时,标题的整体水平大小往往会发生1-2像素的变化,这会使标题出现抖动。可以看到,如果您在与标题交互时将焦点放在标题的右侧。
我已将代码简化为最基本的形式,并将其添加到jsbin中。
http://jsbin.com/acikib/13/edit
有没有办法去除抖动,或者更好的方法来避免它?
答案 0 :(得分:1)
你的数学已关闭。将最大宽度更改为816
而不是818
。
您的CSS指出每个块都是296
,因此296*3 = 888
。
您的Javascript告诉大块为818
,小块为36
。 818+36*2 = 890
。
所以你将盒子的总大小增加了2个像素,这是第一次引起锯齿状动画。