ShiningDan的博客

网页组件制作之网页广告特效

在该笔记中将学到列表展示中网页广告特效的方法与展示效果

本系列的是参考慕课网 vivian老师的视频,仅供个人查阅使用,具体讲解推荐参考视频。

实现伸缩式的广告

可伸缩的广告很多使用的是 JavaScript 来控制容器的 height 来实现广告的伸缩。也可以使用两个类设置容器的高度,然后设置 transition 添加动画效果,实现伸缩的效果。

简易的显示效果如下:

<html>
    <head>
        <meta charset="utf-8">
        <title>广告效果</title>
        <style>
            *{margin: 0;padding: 0;}
            #up-ad{height: 30px; width: 400px;overflow: hidden;margin: 0 auto;transition: all 2s;}
            #up-ad h1{width: 400px;height: 30px;background-color: #aaa;line-height: 30px;text-align: center;font-size: 16px;transition: all 1s;}
            #up-ad img{height: 250px; width: 400px;}
            .content{height: 400px;width: 700px;background-color: #ccc;margin: 0 auto;}
            #up-ad.show{height: 250px;}
            #up-ad h1.hide{height:0px;}
        </style>
        <script>
            window.onload = function(){
                let upAd = document.getElementById("up-ad");
                upAd.onmouseover = function(){
                    upAd.className = "show";
                    setTimeout(function(){
                        let adheader = document.getElementById("up-ad").getElementsByTagName("h1")[0];
                        adheader.className = "hide";
                    }, 2)
                }
                upAd.onmouseout = function(){
                    let adheader = document.getElementById("up-ad").getElementsByTagName("h1")[0];
                    adheader.className = "";
                    upAd.className = "";
                }
            }
        </script>
    </head>
    <body>
        <div id="up-ad">
            <h1>这是一个广告</h1>
            <img src="http://ofjjubwp5.bkt.clouddn.com/image/jpg/10.jpg" alt="">
        </div>
        <div class="content">

        </div>
    </body>
</html>