CSS3里怎么实现首页穿墙广告效果

如果大家进过拉钩网的话一定会对他们的网站首页影响深刻,首页的穿墙广告效果是非常炫酷的,那么这个穿墙广告的效果怎么实现呢?今天我们就带大家来操作一下。用css3来实现穿墙效果的广告。

nbsp;html>                  Title*{margin:0; padding:0; list-style:none;}ul{ overflow:hidden; width:630px; margin:100px auto;}ul li{ float:left; position:relative; width:200px; height:200px; background:#ccc; margin:5px; overflow:hidden;}ul li span{ position:absolute; width:100%; height:100%; background:rgba(255,0,0,0.3); left:-200px; top:0;}function getStyle(obj,sName){         return (obj.currentStyle||getComputedStyle(obj,false))[sName];}function move(obj,json,options){         options = options||{};         options.duration = options.duration||700;         options.easing = options.easing||'ease-out';                 var start = {};         var dis = {};         for(var name in json){                   start[name] = parseFloat(getStyle(obj,name));                   dis[name] = json[name]-start[name];         }         var count = Math.floor(options.duration/30);         var n = 0;         clearInterval(obj.timer);         obj.timer = setInterval(function(){                   n++;                   for(var name in json){                            switch(options.easing){                                     case 'linear':                                               var cur = start[name]+dis[name]*n/count;                                               break;                                     case 'ease-in':                                               var a = n/count;                                               var cur = start[name]+dis[name]*Math.pow(a,3);                                               break;                                     case 'ease-out':                                               var a = 1-n/count;                                               var cur = start[name]+dis[name]*(1-Math.pow(a,3));                                               break;                            }                            if(name=='opacity'){                                     obj.style.opacity = cur;                                     obj.style.filter = 'alpha(opacity:'+cur*100+')';                            }else{                                     obj.style[name] = cur+'px';                            }                   }                   if(n==count){                            clearInterval(obj.timer);                            options.complete&&options.complete();                   }         },30);}function a2d(n){         return n*180/Math.PI;}function hoverDir(ev,obj){         var a = ev.clientX-obj.offsetLeft-obj.offsetWidth/2;         var b = obj.offsetTop+obj.offsetHeight/2-ev.clientY;                 return Math.round((a2d(Math.atan2(b,a))+180)/90)%4;}function through(obj){         var oS = obj.children[0];         obj.onmouseenter = function(ev){                   var oEvent = ev||event;                   var dir = hoverDir(oEvent,obj);                   switch(dir){                            case 0:                                     //左                                     oS.style.left = '-200px';                                     oS.style.top = 0;                                     break;                            case 1:                                     //下                                     oS.style.left = 0;                                     oS.style.top = '200px';                                     break;                            case 2:                                     //右                                     oS.style.left = '200px';                                     oS.style.top = 0;                                     break;                            case 3:                                     //上                                     oS.style.left = 0;                                     oS.style.top = '-200px';                                     break;                   }                   move(oS,{left:0,top:0});         };         obj.onmouseleave = function(ev){                   var oEvent = ev||event;                  var dir = hoverDir(oEvent,obj);                   switch(dir){                            case 0:                                     move(oS,{left:-200,top:0});                                     break;                            case 1:                                     move(oS,{left:0,top:200});                                     break;                            case 2:                                     move(oS,{left:200,top:0});                                     break;                            case 3:                                     move(oS,{left:0,top:-200});                                     break;                   }         };}window.onload = function(){         var aLi = document.getElementsByTagName('li');         for(var i=0;i<aLi.length;i++){                   through(aLi[i]);         }};          

登录后复制                                                                                                                           

相信看了以上代码你已经清楚了这种穿墙广告的奥秘。更多精彩请关注【创想鸟】其它相关文章!

相关阅读:

HTML怎么实现数字焦点图轮播代码

立即学习“前端免费学习笔记(深入)”;

HTML怎么实现数字焦点图轮播代码

立即学习“前端免费学习笔记(深入)”;

HTML怎么实现数字焦点图轮播代码

立即学习“前端免费学习笔记(深入)”;

以上就是CSS3里怎么实现首页穿墙广告效果的详细内容,更多请关注【创想鸟】其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/3121381.html

(0)
上一篇 2025年3月29日 17:50:22
下一篇 2025年3月29日 17:50:27

AD推荐 黄金广告位招租... 更多推荐

相关推荐

  • CSS3里怎么实现提示文字的弹窗效果

    文字的弹窗效果相信大家都有做过,不过在css3里,这种效果可以不需要额外的js代码来操纵,我们今天就给大家来实现一个不用js的提示文字的弹窗效果。 Css代码 [data-tips] {         position: relative…

    编程技术 2025年3月29日
    100
  • CSS3中过渡动画怎么使用

    我们知道,在css3中有一个 transition属性,它可以让动画在css层面实现,既不是利用setinterval(),不是定时器,而是底层c++在渲染,这样就使渲染动画的质量、丝滑程度都要远远优于js、jquery。我们今天就来看一下…

    编程技术 2025年3月29日
    100
  • 使用CSS3做出带有光晕流星旋转光环的效果

    今天教大家的这一份代码是用css3做出带有光晕的流星旋转光环的效果,感兴趣的朋友可以自己动手实践一下,案列代码如下: html {width: 100%;height: 100%;}body {width: 100%;height: 100…

    编程技术 2025年3月29日
    100
  • CSS3的主要功能应用

    我们知道css3虽然目前为止还没有正式成为标准,但是ie9+, chrome, firefox等现代浏览器全部都支持css3,它提供了很多以前用js和切图才能完成的功能,下面就给大家详细的介绍一下有哪些。 1.圆角 2.多背景 3.渐变色 …

    编程技术 2025年3月29日
    100
  • 怎样用css3技术做出立方体旋转发光的特效

    这次给大家带来的是用css3做出立方体旋转发光的特效,怎样用css3做出这么炫酷的特效呢?以下是代码案列,感兴趣的朋友也可以自己动手做一份试试。 nbsp;html>CSS3 3D立方体旋转发光动画特效body {margin: 0;…

    编程技术 2025年3月29日
    100
  • 设置表格CSS样式需要注意什么

    我们知道,如果表格的css样式有很多,今天就给大家详细的讲解一下表格table tr td css样式设置, 给table表格设置css样式表需要注意哪些方面 在一个网页中多处使用了表格table标签,这个时候给指定的表格表格设置样式依然可…

    编程技术 2025年3月29日
    100
  • 怎样用CSS使图片高度自动缩放比例

    我们知道,在瀑布流这类的图片列表布局中常常可以看到用css控制div里的图片宽度高度,其实这样的布局很简单,今天就给大家详细讲解一下。 当遇到这样的DIV CSS布局时候,其实非常简单,我们只需要对图片宽度进行控制,而图片高度不用设置即图片…

    编程技术 2025年3月29日
    100
  • 怎样用CSS让鼠标悬停在图片上图片变灰

    我们常常在网页中看到这样一种效果,当你的鼠标移动到图片上的时候,图片变灰,或者变暗,这实际是图片被css设置为半透明样式。下面就给大家做一个实例看一下这种效果怎么实现 a:hover img{filter:alpha(Opacity=80)…

    编程技术 2025年3月29日
    100
  • 怎样用CSS操作俩个DIV重叠

    如果实现一个div重叠,并且要让它们按照我们所想的重叠顺序,这是需要css的绝对定位来实现的,今天就来给大家说一下重叠样式的的css实现方法。 DIV重叠 CSS让DIV层叠、叠加,CSS让两个DIV或多个DIV按顺序重叠叠加篇 让DIV重…

    编程技术 2025年3月29日
    100
  • 用DIV和CSS做一个实线边框的红色盒子

    做一个案列给大家参考,我们使用dw软件来做一个红色实线边框的盒子,我们给这个盒子命名为div,下面就是代码案列 为了观察效果对盒子设置一个css高、css宽样式,并赋予红色css边框样式。同时为了兼容性DIV依然使用DW软件新建这个实例。 …

    编程技术 2025年3月29日
    100

发表回复

登录后才能评论