Michał Lach
Michał Lach

Reputation: 1278

Z-index not working on img and div with p

I'm having a problem with with positioning elements on top of each other. Here is my markup:

<div id="glownySlajder">

                <ul>
                    <li>
                        <img src="inc/img/slajder_bg.jpg" alt="Slajd" class="slajd">
                        <div class="fr">
                            <a href="#" class="przyciskPoprzednia fl" title="Poprzednia"><img src="inc/img/strzalka_lewo.png" alt="strzalka_lewo"></a>
                            <p class="fl">Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed laoreet consequat gravida. Nunc sed risus est, ac vestibulum nisl. Suspendisse sagittis velit a massa auctor accumsan. Aliquam hendrerit libero tellus, at molestie leo. Curabitur sodales </p>
                            <a href="#" class="przyciskNastepna fr" title="Następna"><img src="inc/img/strzalka_prawo.png" alt="strzalka_prawo"></a>
                        </div>

                    </li>
                 </ul>
         </div>

Here is my css:

#glownySlajder {
    margin-bottom: -2px;
}

#glownySlajder a {
    margin: 7px;
}

#glownySlajder ul li img {

    z-index: 9998;
}

#glownySlajder div {        
    z-index: 9999;
    color: black;
    background-color: #e7e7e7;
    height: 85px;
    width: 500px;
    padding: 0px 5px;

}

#glownySlajder div p {

    font-size: 11px;
    line-height: 14px;
    margin-top: 20px;
    width: 390px;
}

.fr {
    float: right;
}

.fl {
    float: left;
}

This is what I get:

First image

This is want I want to achieve:

Second Image

The problem is that z-index doesn't seem to be working. When I try to do negative margin on a div with p, it just disappears under the image, not what I want exactly.

I am unable to work this out on my own, any tips please?

Upvotes: 2

Views: 17311

Answers (1)

Zeta
Zeta

Reputation: 105885

First of all, z-index only works on block elements (display:block). Second, it is only useful for elements which are in the same stacking context. Third, don't use margin to position. Use position: and top, left, right, bottom for this.

References:

Upvotes: 13

Related Questions