所以我熟悉了css3,我一直试图找到一个纯粹的css滑块。我终于找到了一个与我在代码笔上寻找的完全相同但由于某种原因,当我在localhost或jsfiddle中尝试代码时,它不起作用。在codepen中没有外部文件可以访问,并且不需要jQuery。下面我链接了(工作)codepen和jsfiddle。任何想法为什么它不会在其他地方工作?
HTML
<div class="slider">
<img class='photo' src="http://i.imgur.com/zMGSiyl.jpg" alt="" />
<img class='photo' src="http://i.imgur.com/soQhb13.jpg" alt="" />
<img class='photo' src="http://i.imgur.com/39yOaYB.jpg" alt="" />
<img class='photo' src="http://i.imgur.com/tnctKD4.jpg" alt="" />
</div>
CSS
body{background:#000;}
.slider{
margin:50px auto;
width:100%;
height:300px;
overflow:hidden;
position:relative;
}
.photo{
position:absolute;
animation:round 16s infinite;
opacity:0;
width:100%;
}
@keyframes round{
25%{opacity:1;}
40%{opacity:0;}
}
img:nth-child(4){animation-delay:0s;}
img:nth-child(3){animation-delay:4s;}
img:nth-child(2){animation-delay:8s;}
img:nth-child(1){animation-delay:12s;}
答案 0 :(得分:3)
您可能需要使用特定于供应商的keyframes
。 Codepen很聪明,在这种情况下过度补偿。
@-webkit-keyframes NAME-YOUR-ANIMATION {
0% { opacity: 0; }
100% { opacity: 1; }
}
@-moz-keyframes NAME-YOUR-ANIMATION {
0% { opacity: 0; }
100% { opacity: 1; }
}
@-o-keyframes NAME-YOUR-ANIMATION {
0% { opacity: 0; }
100% { opacity: 1; }
}
@keyframes NAME-YOUR-ANIMATION {
0% { opacity: 0; }
100% { opacity: 1; }
}
更多信息http://css-tricks.com/snippets/css/keyframe-animation-syntax/
答案 1 :(得分:2)
这完美无缺,请检查: jsFiddle Demo 。 CSS3动画的语法和代码中使用的关键帧是标准语法,例如, animation:round 16s infinite;
,@keyframes round{ 25%{opacity:1;} 40%{opacity:0;} }
和img:nth-child(4){animation-delay:0s;}
。
您应该使用-webkit-animation:round 16s infinite;`, `@-webkit-keyframes round{ 25%{opacity:1;} 40%{opacity:0;} } ` and `img:nth-child(4){-webkit-animation-delay:0s;}
以使其与浏览器兼容。
有关此内容的更多信息,请访问here。
body {
background: #000;
}
.slider {
margin: 50px auto;
width: 100%;
height: 300px;
overflow: hidden;
position: relative;
}
.photo {
position: absolute;
-webkit-animation: round 16s infinite;
-moz-animation: round 16s infinite;
-o-animation: round 16s infinite;
animation: round 16s infinite;
opacity: 0;
width: 100%;
}
@-webkit-keyframes round {
25% {
opacity: 1;
}
40% {
opacity: 0;
}
}
@-moz-keyframes round {
25% {
opacity: 1;
}
40% {
opacity: 0;
}
}
@-o-keyframes round {
25% {
opacity: 1;
}
40% {
opacity: 0;
}
}
@keyframes round {
25% {
opacity: 1;
}
40% {
opacity: 0;
}
}
img:nth-child(4) {
-webkit-animation-delay: 0s;
}
img:nth-child(3) {
-webkit-animation-delay: 4s;
}
img:nth-child(2) {
-webkit-animation-delay: 8s;
}
img:nth-child(1) {
-webkit-animation-delay: 12s;
}
&#13;
<div class="slider">
<img class='photo' src="http://i.imgur.com/zMGSiyl.jpg" alt="" />
<img class='photo' src="http://i.imgur.com/soQhb13.jpg" alt="" />
<img class='photo' src="http://i.imgur.com/39yOaYB.jpg" alt="" />
<img class='photo' src="http://i.imgur.com/tnctKD4.jpg" alt="" />
</div>
&#13;