#md .ty a{ position:absolute; top:250px; left:370px; } #md .ty a:hover{ border-style:solid; border-color:#ffffff; } #md .ty a:hover span{ position:absolute; width:100px; height:100px; left:100px; top:100px; border-style:solid; border-color:red; } 在样式 #md .ty a:hover span 中用到了position:absolute;
这个属性告诉我们它是个浮动的。不过它的left、top属性告诉当前span居上居左的位置,可这个是相对谁来说的呢?并没有明确指明,通过样式,我们不难发现,span的上层是个a标签,如果给a标签加了样式position,那么当前的span就依据a标签算左上距离。但是如果a标签不写position属性,那么span就再向上层找,找最近有position的父及标签,如果都没有,就以最外面的总容器为主。
<div id="md">
<ul>
<li class="ty">
<a href="#"><span></span>连接</a>
</li>
</ul>
</div>
如上代码,如果a标签没有position属性,就以外层div算 span的居左,居上位置。一般为了明确,都要在a标签内明确声明出position。