HTML,css轮播图

html-css09

HTML,css轮播图,第1张

给你几个思路

将所有需要轮播的图片横向并排排列,定位设置为绝对定位,暂定为pic-list。设置一个轮播图box,暂定为lb-box,lb-box依每张图片的宽高设置宽高,并将over-flow设置为hidden。将pic-list放到lb-box里,现在应该看到的是一张图片,设置一个定时器,每三秒或几秒执行一次,执行事件是将pic-list的left属性每次减去一张图片的宽度,到减完pic-list的宽度后,将left设置为0,轮播图完成。

第二种思路,设置一个放置轮播图的box,定为lb-box,宽高一样为一张图片的宽高,将所有的轮播图名字命名为统一格式,比如(pic-1.png,pic-2.png,pic-3.png)。lb-box里放轮播图种的第一张图如(pic-1.png),设置一个定时器,每三秒或几秒执行一次,执行的事件是将轮播图的src属性改成pic-2.png(具体可设置一个变量进行++操作)。到最后一个轮播图再将轮播图src属性设置为pic-1.png。轮播图完成

PS.自己动手,丰衣足食

animation-name: 规定需要绑定到选择器的 keyframe 名称。

animation-duration: 规定完成动画所花费的时间,以秒或毫秒计。

animation-timing-function: 规定动画的速度曲线。

animation-delay:规定在动画开始之前的延迟。

animation-iteration-count: 规定动画应该播放的次数。

animation-direction:规定是否应该轮流反向播放动画。

@keyframes{

}

给每个动画及暂停分配时间,按照总时间的百分比分配;

以三张图片为例制作轮播图,若将最后的数值设置为100%,出现问题在于最后一张到第一张的切换没有动画;尝试给最后一张图片到第一张图片的动画时间,但是中间的切换效果是从最后一张向右滑动直到显示出第一张图,其效果反人类,不美观;但是,通过尝试在最后的一张图片后面在添加一张与第一张相同的图片,可实现循环的效果;

方法与一中大致相同,唯一更改的地方是css3的@keyframes规则里面的内容

若只将要显示的三张图片导入,会出现最后一张图片到第一张图片没有动画效果;通过尝试在最后的一张图片后面在添加一张与第一张相同的图片,可实现循环的效果;

问题在于图片一直处于切换状态,中间没有停顿;