HTML + CSS写轮播图

HTML+CSS写轮播图

利用CSS3的新属性,可以实现轮播,主要是利用CSS3的动画的三要素:

(1)需要执行那个动画 animation-name:动画名
          animation-name:lunbo; 
(2)需要创建一个名称叫什么的动画
            @keyframes lunbo{ 
            from{ 
            初始状态; 
            } 
            to{ 
            结束状态; 
            } 
            } 
(3)动画持续的时长
 animation-duration:3s; 

主要代码

//html代码

<html>
    <head>
        <meta charset="utf-8" />
        <title>title>
        <link rel="stylesheet" type="text/css" href="css/index.css"/>
    head>
    <body>
        <div>
            <ul>
                <li><img src="img/1.jpg"/>li>
                <li><img src="img/2.jpg"/>li>
                <li><img src="img/3.jpg"/>li>
                <li><img src="img/4.jpg"/>li>
                <li><img src="img/5.jpg"/>li>
                <li><img src="img/6.jpg"/>li>
                <li><img src="img/7.jpg"/>li>
                <li><img src="img/1.jpg"/>li>
                <li><img src="img/2.jpg"/>li>
                <li><img src="img/3.jpg"/>li>
                <li><img src="img/4.jpg"/>li>
                <li><img src="img/5.jpg"/>li>
                <li><img src="img/6.jpg"/>li>
                <li><img src="img/7.jpg"/>li>
            ul>
        div>
    body>
html>
//css代码:
*{
    margin: 0;
    padding: 0;
}
div{
    width: 882px;
    height: 86px;
    margin:  0 auto;
    border: 1px solid black;    
    overflow: hidden;   
}
ul{
    width: 1764px;
    height: 86px;
    animation: lunbo 3s infinite linear;
}
ul li{
    list-style: none;
    float: left;    
}
ul li img{
    width: 126px;
    height: 86px;
}
@keyframes lunbo{
    from{
        margin-left: 0px;
    }
    to{
        margin-left: -882px;
    }
}
div:hover ul{
    animation-play-state: paused;//鼠标滑过时图片停止
}
div:hover ul li{
    opacity: .5;//鼠标划过时设置透明
}
div ul li:hover{
    opacity: 1;
}

你可能感兴趣的:(HTML + CSS写轮播图)