美文网首页
原生JS从浮动布局转换成定位布局 的多图展开

原生JS从浮动布局转换成定位布局 的多图展开

作者: Simple_habits | 来源:发表于2017-01-13 14:10 被阅读37次
<style>       
 *{ margin: 0; padding: 0; list-style: none;}        
ul{ width:366px; height:366px; padding:10px;  border:1px solid #000; margin: 50px auto;}        
ul li{ width:100px; height:100px; background: #ccc; float: left; margin: 10px; border: 1px solid #000;}    
</style>    
<script>        
  window.onload=function(){            
    var oUl=document.getElementById('ul1');           
    var aLi=oUl.children;
           
    //把原来的坐标全部存起来  用来后面转定位用            
    var aPos=[];            
    for(var i=0; i<aLi.length; i++){                
      aPos[i]={left:aLi[i].offsetLeft, top:aLi[i].offsetTop};            
    }
    //布局转化              
    for(var i=0; i<aLi.length; i++){                
      aLi[i].style.left=aPos[i].left+'px';                
      aLi[i].style.top=aPos[i].top+'px';               
      aLi[i].style.position='absolute';               
      aLi[i].style.margin=0;            
    }            
       
    for(var i=0; i<aLi.length; i++){  
      //鼠标移入时              
      aLi[i].onmouseover=function(){
        //  放大的width/height自己定                  
        this.style.width=200+'px';                   
        this.style.height=200+'px';
        //margin一定要负的(width/height  的一半)                   
        this.style.marginLeft=-50+'px';                    
        this.style.marginTop=-50+'px'; 
        //把层级提高  (也可以在外面定一个变量每次移入的时候++)                   
        this.style.zIndex=2;                
      };
      //鼠标移出时 (回复到原来的样式就OK了)               
      aLi[i].onmouseout=function(){ 
                           
        this.style.width=100+'px';                    
        this.style.height=100+'px';                    
        this.style.margin=0;                    
        this.style.zIndex=0;                
      };            
    }        
};    
</script>
<body>    
<ul id="ul1">        
  <li></li>        
  <li></li>        
  <li></li>        
  <li></li>        
  <li></li>        
  <li></li>        
  <li></li>        
  <li></li>        
  <li></li>    
</ul>
</body>
GIF2.gif

相关文章

  • 原生JS从浮动布局转换成定位布局 的多图展开

  • css经典布局总结

    布局类型 浮动布局 流式布局 定位布局 flex布局 grid布局 布局详解 1.浮动布局。 浮动布局是利用flo...

  • 前端开发-常见CSS布局

    常见的两列布局 float浮动布局 flex布局 常见的三列布局 float浮动布局 position定位 fle...

  • CSS布局

    左右布局方法一:浮动float 效果图: 方法二:绝对定位absolute 效果同上 左中右布局方法一:浮动flo...

  • meta标签

    H4 浮动 流式 定位 普通H5 弹性盒布局 多栏布局 响应式布局 双飞翼布局 images...

  • 前端第五天

    前端第五天 目录 文档流 浮动布局 清除浮动 流式布局 定位布局应用 相对定位 绝对定位 固定定位 一、文档流 1...

  • CSS布局套路

    CSS布局 布局套路 浮动布局 宽度百分比浮动布局http://js.jirengu.com/yobiq/1/ed...

  • 三栏布局——五种解决方案

    面试常见考题:三栏布局 浮动布局 绝对定位 flex布局 table-cell布局 grid布局

  • 网页布局基础

    基本网页布局一般分为三种:1)流式布局2)浮动布局3)绝对定位布局 css中的定位机制:1)标准文档流特点:a.从...

  • css3动画高级应用开发唱吧首页图片飞入效果

    知识点: html/css布局思维,定位、浮动详解,css3动画高级应用,过渡属性解析,js应用,企业布局思维运用...

网友评论

      本文标题:原生JS从浮动布局转换成定位布局 的多图展开

      本文链接:https://www.haomeiwen.com/subject/fzqsbttx.html