Alex Rivera | Logout

How to make a div height to fill available space

Asked 2011-05-26T17:55:42.033
10

I have a 3 column layout with some details below the columns.

enter image description here

You will notice that one of the column's height is greater than the others'. I'd like the other two divs to automatically fill the remaining space (up to the blue div). The text will be loaded dynamically so I need this to work with any column being larger (and by an arbitrary amount).

Can this be done with HTML/CSS or do I have to use some JavaScript?


HTML code (relevant part of it):

<div id="content">

    <div id="iconsHolder">

        <div id="info">
            <div id="info_content">
                <p><?php echo img('images/man.png'); ?></p>
                <h2>Some guy over here</h2>
                <p class="light justify">It doesn't matter what is being said at the moment. Nothing is said here.</p>
            </div>
        </div>

        <div id="comp">
            <div id="comp_content">
                <p><?php echo img('images/computer.png'); ?></p>
                <h2>Computer Development</h2>
                <p class="light justify">Neque porro quisquam est qui dolorem ipsum quia dolor sit amet, consectetur, adipisci velit... Neque porro quisquam est qui dolorem ipsum quia dolor sit amet, consectetur, adipisci velit...</p>
            </div>
        </div>

        <div id="story">
            <div id="story_content">
                <p><?php echo img('images/library.png'); ?></p>
                <h2>Story telling</h2>
                <p class="light justify">This is another short story.</p>
            </div>
        </div>
    </div>
    <div id="details">
        Lorem Ipsum is simply dummy text of the printing and 
Edit
Report

1 Answer

3

Instead of floating the divs you could absolutely position them within div#iconsHolder (which you will make position:relative. You're setting widths anyway, just set the left of each div to the appropriate offset and give each top:0 and bottom:0 CSS rules.

answered 2011-05-26T18:08:00.407

Your Answer