Link to home
Start Free TrialLog in
Avatar of ksnider
ksniderFlag for United States of America

asked on

CSS - Yet another rounded corner question

I know about Nifty Corners, et al. But ... can anyone tell me how to get this same effect of an expandable height box using images top and bottom and repeating for the main content area, that does not use a table for the content. I can't find a way to create space between the box edges and still get the background image to repeat all the way down, other than a table. Would love to see a table-less solution. Mine is not very elegant.
/* Relevant CSS From External Style Sheet   */
 
.rounded_corner_bottom {margin-top:0px;}
.copy table .first_col {padding:5px 4%;width:3%;}
.copy table .second_col {padding:5px 2% 5px 1%;width:94%; text-align:left;}
.copy table .button_row {padding:10px 6% 10px 1%;width:94%; text-align:right;}
 
.copy .radiotop {margin-bottom:0px;*margin-bottom:0;}
.copy .workshopicon {float:left; padding: 0 30px 8px 0; margin: -10px 0 0 0px;}
.copy .steelbluebody {background: url(../Images/Boxes/SteelBlue/1px.png) repeat-y; width: 478px;}
 
 
 
/* HTML for box   */
 
<div class="radiotop"><img src="../../../Assets/Images/Boxes/SteelBlue/top.png" /></div>
 
<table class="steelbluebody">
    <tr>
        <td class="first_col">&nbsp;</td>
        <td class="second_col"><p>Once you decide that the Snider Investment Method is right for you, you can choose one of two ways to learn the method.<br /><br />
 
                You can take a live, two-day workshop or you can take a self-paced online class.<br /><br />
                
                Both classes cover the same information and offer the same materials and support services. We know that different people like to learn in different ways, so the choice is yours.
                </p>
         </td>
    </tr>
    <tr>
        <td class="first_col">&nbsp;</td>
        <td class="button_row"><a href="#live"><img src="../../../Assets/Images/Icons/info.png" /></a></td>
    </tr>        
</table>
 
<div class="rounded_corner_bottom"><img src="../../../Assets/Images/Boxes/SteelBlue/bottom.png" /></div>
 
 
 
/* Page link   */
 
Can' show you a live page yet. Example of what it looks like is attached as file. Thanks

Open in new window

SIM-signups.pdf
Avatar of level9wizard
level9wizard
Flag of Canada image

Try experimenting with 'position: absolute' and use 'left/right' and 'top/bottom' to place these divs. Remember, position absolute is based on the containing div (the parent div) so to treat it properly based on the container, the parent should be position:relative;
ASKER CERTIFIED SOLUTION
Avatar of David S.
David S.
Flag of United States of America image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Avatar of ksnider

ASKER

Thanks guys. I am going to play with this this afternoon. I think what is messing me up is using a 1 pixel image as the body of the box. If I used a background color and border, then I could use padding. The background image stops at the padding. I'll let you know and award points. Thanks for your responses.
Avatar of ksnider

ASKER

So ... I guess what I was really asking, was how to put text over a background image without using a table. The answer talks about using a background color, which I understand. But is there a way to put text over a background image, so that it doesn't run to the edge of the image, without using a table to do it?
Sure. Just use padding to push the text away from the edges of the box.
Avatar of ksnider

ASKER

Kravimir- When I use padding, it pushes the background image too.
It sounds like you're adding the padding to an ancestor of the element with the background image.
Avatar of ksnider

ASKER

Hmmm. OK, let me try again and get back to you. If I can't get it to work, I'll put the code in so you can tell me what I am doing wrong, if you don't mind.