<!doctype html> <html> <head> <meta charset="UTF-8"> <title>Document</title> <style> *{margin:0;padding:0;} .head{font-size:12px;padding:6px 0 0 10px;} #login_box{width:300px;height:150px;background:#eee; border:1px solid #ccc;position:absolute;left:50%;top:50%;margin-left:-150px;margin-top:-75px;display:none;} #login_box p{height:20px;border-bottom:1px solid #ccc;font-size:12px;padding:6px 0 0 5px;font-weight:bold;} #close{width:14px;height:14px;background:url(close.png) no-repeat;position:absolute;right:4px;top:6px;} </style> <script> window.onload=function(){ var login_btn=document.getElementById('login'), login_box=document.getElementById('login_box'), close=document.getElementById('close'); // 封装添加事件监听程序 function addEvent(ele,type,hander){ // 执行代码 if(ele.addEventListener){ ele.addEventListener(type,hander,false); } else if(ele.attachEvent){ ele.attachEvent('on'+type,hander); } else { ele['on'+type]=hander; } } // 显示登录层函数 function showLogin(){ // 执行代码 login_box.style.display='block' } // 隐藏登录层函数 function hideLogin(){ // 执行代码 login_box.style.display='none' } //点击登录按钮显示登录层 // 执行代码 addEvent(login_btn,'click',showLogin); //点击关闭按钮隐藏登录层 // 执行代码 addEvent(close,'click',hideLogin);} </script> </head> <body> <div>亲,您好!<input type="button" value="登 录" id="login"></div> <div id="login_box"> <p>用户登录</p><span id="close">X</span> </div> </body> </html>
行内元素设置了position属性或float属性后属性默认变成inline-block,所以可以设置宽高
span 是行内元素,不设display="block"或“inline-block”是没办法设宽高的。