Home > Article > Web Front-end > <CSS>为什么margin和top都设置为零了但是不置顶,有空隙_html/css_WEB-ITnose
<div id="head"> <ul class="ul1"> <li class="li1"><a>标题</a></li> <li class="li1"><a>标题</a> <div class="sonc" id="content"> <p class="sonh">标题</p> <ul> <li class="son">标题</li> <li class="son">标题</li> <li class="son">标题</li> <li class="son">标题</li> <li class="son">标题</li> <li class="son">标题</li> </ul> <p class="sonh">标题</p> <ul> <li class="son">标题</li> <li class="son">标题</li> <li class="son">标题</li> </ul> </div> </li> <li class="li1"><a>标题</a></li> </ul> </div>
<style> #head{ width: 100%; height: 80px; background-color: rgba(193, 193, 193, 0.7); } ul{ list-style: none; } .li1{ position: relative; float: left; font-size: 40px; font-weight: bold; margin: 20px 30px 0 10px; } .hover1{ color: #ffffff; border-bottom: 5px solid black; } .son{ font-size: 15px; padding: 2px; float: left; color: black; margin-right: 4px; margin-top: 4px; background-color: grey; } .son:hover{ background-color: #51dadd; } .li1 a{ text-decoration: none; } .sonh{ font-size: 15px; display: inline-block; position: relative; } .sonc{ border: 1px solid #a3a3a3; height: 160px; width: 140px; display: none; position: absolute; } </style>
*{margin:0;padding:0;}
*{margin:0;padding:0;}
xhtml1.0、html4.01没有你说的问题
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!DOCTYPE html>把红色的去掉就好了
position: relative;
是指元素 相对于未设置position:relative;状态下的位移;
以content的左上角为坐标原点,
黄色块在未position时,它的左上角相对于原点的坐标是(0,30) (你可以把两个色块的position:relative去掉看看);
所以黄色在设置了position后,它的实际坐标就是(270,30);
position: relative;
是指元素 相对于未设置position:relative;状态下的位移;
以content的左上角为坐标原点,
黄色块在未position时,它的左上角相对于原点的坐标是(0,30) (你可以把两个色块的position:relative去掉看看);
所以黄色在设置了position后,它的实际坐标就是(270,30);
页面元素在未设置position:relative;前,它所占有的页面区域在那儿,在设置了position:relative;后,那个位置还是它的;
你可以把两个色块的position:relative去掉看看
页面元素在未设置position:relative;前,它所占有的页面区域在那儿,在设置了position:relative;后,那个位置还是它的;
你可以把两个色块的position:relative去掉看看
position:absolute;啊
我学傻了,一直以为absolute是脱离盒子,全局定位。relitive基于非static的父级元素,弄反了。谢大神搞清楚了
position:absolute;啊