creo que lo que pasa es ese div esta encerrado dentro de otro con el z-index superior a tu div, en este caso aun teniendo tu div un z-index mas alto se mostraria por debajo.
.Uno
{
position: absolute;
width: 400px;
height: 400px;
background-color: blue;
z-index: 200;
}
.Dos
{
position: relative;
width: 400px;
height: 400px;
background-color: green;
left: 20px;
z-index: 100;
}
y esto:
<div class="Uno"></div>
<div class="Dos"></div>
se mostrara encima el azul, pero con esto:
.Tres
{
position: relative;
width: 400px;
height: 400px;
background-color: red;
left: 20px;
z-index: 1000;
}
y estando asi:
<div class="Uno"></div>
<div class="Tres"><div class="Dos"></div></div>
se mostrara el verde encima del azul porque su contenedor tiene el z-index mas alto que el div azul.
No estoy seguro que sea ese tu caso, pero por lo que dices me temo que si. si puedes subir un ejemplo completo de tu problema (solo el html y css) y asi podemos mirarlo mejor.
PD: lo que quiero decir es que si tu div esta encerrado dentro de otro con un z-index inferior a ese div, se mostrara bajo de este de igual manera.
y si el div que se te pone encima esta encerrado dentro de otro con un z-index superior a tu z-index o al de tu contenedor, continuara poniendose encima. asi que no solo afecta el z-index de tu capa.