Want to win a PS4? Go Premium and enter to win our High-Tech Treats giveaway. Enter to Win

x
?
Solved

Stacking DIV's on top of each other  - most fluid way

Posted on 2008-10-09
7
Medium Priority
?
3,007 Views
Last Modified: 2012-08-14
I am wondering what is the best method to stacking DIV's on top of each other. I have read some info on some forums about it, but nothing really helped. My HTML looks like:

<img src="images/card.png" alt="my name is ryan coughlin and im a web and graphic designer, this is what I do. im good at php, css, xhtml, javascript. and yes, im for hire" title="my name is ryan coughlin and im a web and graphic designer, this is what I do. im good at php, css, xhtml, javascript. and yes, im for hire" width="779" height="507" border="0" class="top_layer" />
            
            <div class="bottom_layer">
                  <p>Here is my content.</p>
            </div>

i have my page being centered using margin:0 auto; and am not sure on how I can get it right behind the other one.

Thoughts?

Thank you in advance,

Ryan
img.top_layer{
	z-index:1;
}
div.bottom_layer{
	z-index:0;
	background-image:url(images/card-info.png);
	background-repeat:no-repeat;
	height:465px;
	width:709px;	
}

Open in new window

0
Comment
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 4
  • 3
7 Comments
 
LVL 43

Expert Comment

by:David S.
ID: 22684734
z-index only applies to positioned elements.  One of them needs to be absolutely positioned and the other need to be also or have position:relative.

P.S. Are you sure that you're using the alt attribute appropriately? Does it really say that in the image?
0
 
LVL 1

Author Comment

by:catonthecouchproductions
ID: 22686242
So in the long run, it does need absolute? Yeah, my image does say that, haha.. thank you! :)

What should I do because wont it appear different on different browsers because of resolution?
0
 
LVL 43

Expert Comment

by:David S.
ID: 22687269
While the ways to center non-absolutely positioned elements are better, there is a way to center an absolutely positioned element. For more information see: http://www.dynamicsitesolutions.com/css/center-element/
0
Technology Partners: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
LVL 1

Author Comment

by:catonthecouchproductions
ID: 22690077
I took a look at the earlier, then came back read it again and worked it in to my code, but my image doesn't seem like it is in the center, the front image that is. My css for it is:

div.top_layer{
      position:absolute;
      width:779px;
        margin-left: auto;
       margin-right: auto;
       text-align: left;
      z-index:1;
}

And HTML:

      <div class="top_layer">
                  <img src="images/card.png" alt="my name is ryan coughlin and im a web and graphic designer, this is what I do. im good at php, css, xhtml, javascript. and yes, im for hire" title="my name is ryan coughlin and im a web and graphic designer, this is what I do. im good at php, css, xhtml, javascript. and yes, im for hire" width="779" height="507" border="0" />
            </div>
            
            <div class="bottom_layer">
                  <p>This is the kind of stuff I like to do.</p>
            </div>

You can go to ryancoughlin.com to check it out for a live example, also I am in FF 3.0/Mac Leopard

Thank you for your help.

Ryan
0
 
LVL 43

Accepted Solution

by:
David S. earned 2000 total points
ID: 22690497
Sorry. I should have been more specific. Auto margins don't work in absolutely positioned elements, so you need to use the first technique shown on that page.

Try this:

div.top_layer {
  left: 50%;
  margin-left: -385px;
  position: absolute;
  text-align: left;
  width: 779px;
  z-index: 2;
}
div.bottom_layer {
  background-image: url(../images/card-info.png);
  background-repeat: no-repeat;
  border: 1px solid red;
  height: 420px;
  margin: 0 auto;
  padding: 40px;
  width: 640px;
  z-index: 1;
}

Open in new window

0
 
LVL 1

Author Comment

by:catonthecouchproductions
ID: 22778962
Nice! So this "should" center it 50% absolutely?

Thanks again!

Ryan
0
 
LVL 43

Expert Comment

by:David S.
ID: 22781044
You're welcome.

Yes, that's how to center absolutely positioned elements.
0

Featured Post

Ask an Anonymous Question!

Don't feel intimidated by what you don't know. Ask your question anonymously. It's easy! Learn more and upgrade.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

This article describes how to create custom column layout styles for Bootstrap. The article uses 5 columns to illustrate the concept, but the principle can be extended to any number of columns.
This article discusses four methods for overlaying images in a container on a web page
In this tutorial viewers will learn how to style different bullet points for unordered lists in CSS. Begin with a normal unordered list; the default bullet point is a solid circle: In the CSS, create a defined class of unordered list by typing "ul.S…
In this tutorial viewers will learn how to style rounded corners for elements in CSS using the border-radius property Begin with a normal styled element such as a div: To style all four corners of the div to be the same degree of roundness, use the …
Suggested Courses

604 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question