绝对位置和错误的z指数

Far*_* Rn 4 css z-index css-position

情节说明:有一只鸟在飞行前应该收集它的腿.鸟的身体,腿和眼睛都是background-image独立div的.我使用jQuery的动画方法来改变腿的位置并将它们放在鸟的身体内.

问题:没有腿在鸟的身体下面,它们会保持在它的上方.

问题:我做错了什么让鸟的腿不在它下面?

图片:

  1. 在动画之前
  2. 动画之后

HTML:

<div id="gonji">
    <div class="legs"></div>
    <div class="body">
        <div class="eye"></div>
    </div>
</div>
Run Code Online (Sandbox Code Playgroud)

CSS:

#gonji { width: 80px; height: 55px; position: relative; }
#gonji .body { width: 80px; height: 55px; background: url('../gonji/gonji.png') no-repeat scroll center center transparent; z-index: 998; }
#gonji .eye { width: 5px; height: 4px; background: url('../gonji/gonji_eye.png') no-repeat scroll center center transparent; position: absolute; top: 13px; left: 30px; z-index: 999; }
#gonji .legs{ width: 9px; height: 17px; background: url('../gonji/gonji_legs.png') no-repeat scroll center center transparent; position: absolute; top: 35px; left: 30px; z-index: 1 }
Run Code Online (Sandbox Code Playgroud)

JS:

var $gonjiLegs = $("#gonji").find(".legs");
var gonjiOrigLegsPos = $gonjiLegs.position();
$gonjiLegs.animate({ 'top': gonjiOrigLegsPos.top - 17 }, 'fast');
Run Code Online (Sandbox Code Playgroud)

use*_*623 15

你错过了一个position属性#gonji .body.. z-index只适用于定位元素

尝试添加 position: relative;