首页 >web前端 >html教程 >幻灯片の纯CSS,NO JavaScript_html/css_WEB-ITnose

幻灯片の纯CSS,NO JavaScript_html/css_WEB-ITnose

WBOY
WBOY原创
2016-06-24 11:39:05925浏览

之前就遇到有人问,不用js,纯css实现幻灯片。

那么对于使用纯的css + html 怎样来实现幻灯片呢?下面有几种方法可供参考,有些还不成熟。

方案一:利用css3的animation

例子传送门点我,点我!

<!DOCTYPE html><html><head lang="en">    <meta charset="UTF-8">    <title>幻灯片</title>    <style>        .ani {            width: 440px;            height: 440px;            margin: 50px auto;            overflow: hidden;            box-shadow: 0 0 5px rgba(0, 0, 0, 1);            background-size: cover;            background-position: center;            -webkit-animation-name: loops;            -webkit-animation-duration: 20s;            -webkit-animation-iteration-count: infinite;        }        @-webkit-keyframes loops {            0% {                background: url(../images/01.jpg) no-repeat;            }            25% {                background: url(../images/02.jpg) no-repeat;            }            50% {                background: url(../images/03.jpeg) no-repeat;            }            75% {                background: url(../images/04.jpg) no-repeat;            }            100% {                background: url(../images/05.jpg) no-repeat;            }        }    </style></head><body><div class="ani"></div></body></html>

 

方案二:把需要展示的图片集合并长一个长横图,然后再通过:hover伪类来改变图片的位置,从而达到幻灯片的效果

例子传送门还是点我吧

<!DOCTYPE html><html><head lang="en">    <meta charset="UTF-8">    <title></title>    <style type="text/css">        #wrap {            width: 580px;            height: 440px;            background: #9ed2d9;            border: 5px solid #9ed2d9;            position: relative;            margin: 30px auto 20px auto;            -o-border-radius: 20px;            -icab-border-radius: 20px;            -khtml-border-radius: 20px;            -moz-border-radius: 20px;            -webkit-border-radius: 20px;            border-radius: 20px;        }        #slide {            padding: 370px 0 0 0;            margin: 0;            list-style: none;            width: 480px;            height: 30px;            overflow: hidden;            position: absolute;            left: 48px;            top: 29px;        }        #slide b {            float: left;        }        #slide span {            position: absolute;            left: 0;            top: 0;            height: 360px;            width: 480px;            border: 1px solid #698639;            border-color: #698639 #e0ebcb #e0ebcb #698639;        }        #slide b.overlay {            display: block;            width: 490px;            height: 370px;            background: transparent;            position: absolute;            top: -5px;            left: -5px;        }        #slide i {            display: block;            float: left;            margin-right: 5px;            width: 20px;            height: 20px;            color: #000;            line-height: 19px;            font-family: arial, sans-serif;            font-style: normal;            font-size: 11px;            text-align: center;            cursor: pointer;        }        #slide b img {            display: block;            border: 0;            position: absolute;            top: 0;            left: -1px;            -webkit-transition: all 0.7s ease-in-out;        }        #slide i:hover {            background-position: 0 -20px;            color: #fff;        }        #slide .p1:hover img {            left: -1px;        }        #slide .p2:hover img {            left: -481px;        }        #slide .p3:hover img {            left: -961px;        }        #slide .p4:hover img {            left: -1441px;        }        #slide .p5:hover img {            left: -1921px;        }        #slide .p6:hover img {            left: -2401px;        }        #slide .p7:hover img {            left: -2881px;        }        #slide .p8:hover img {            left: -3361px;        }        #slide .p9:hover img {            left: -3841px;        }        #slide .p10:hover img {            left: -4321px;        }    </style></head><body><div id="wrap">    <div id="slide">        <b class="p1"><i>1</i>            <b class="p2"><i>2</i>                <b class="p3"><i>3</i>                    <b class="p4"><i>4</i>                        <b class="p5"><i>5</i>                            <b class="p6"><i>6</i>                                <b class="p7"><i>7</i>                                    <b class="p8"><i>8</i>                                        <b class="p9"><i>9</i>                                            <b class="p10"><i>10</i><span><img src="../images/long.jpg" alt="" /></span></b>                                        </b>                                    </b>                                </b>                            </b>                        </b>                    </b>                </b>            </b>        </b>        <b class="overlay"></b>    </div> <!-- end slide --></div></body></html>

 

方案三:利用描点。通过点击描点来选择图片,达到幻灯片的效果。

我没有传送门,你们抢吧。

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn