Solved

Css expand Div to fit its content (Of other divs)

Posted on 2016-08-09
4
55 Views
Last Modified: 2016-08-09
I have several divs inside each other. I have made an external div “s_GalleryFrame_Outer”, and want this div to expand to fit all its content. However, one of those divs contains a dynamic gallery. I have these images “float: left;” so as they fit responsively to the viewport. However, this is causing them to not display inside my main div. If I remove the float left, they simply stack one on top of the other.  
Any advice.
A
Css
.Js_GalleryFrame_Outer {
      background-color: #FFFFFF;
      border-radius: 9px;
      border-width: 2px;
      border-color: #FFFFFF;
      display: block;
      clear: both;
}
Js_GalleryClear {
      display: block;
      margin: auto;
}
.Js_OuterGallery {
      display: block;
      margin: auto;
}
.js_Gal-Pic {
      position: relative;
      background-size: auto 150px;
      background-repeat: no-repeat;
      min-height: 150px;
      float: left;
      margin-top: 4px;
      margin-right: 4px;
      margin-bottom: 4px;
      margin-left: 4px;
}


HTML
<div class="Js_GalleryFrame_Outer">
  <div class="">
        <h4 class="headline"><i class="fa fa-picture-o fa-2x" aria-hidden="true"></i>&nbsp;&nbsp;<%=strGalleryTitle%>aaaa</h4>
  </div>
 
  <div class="Js_GalleryClear">
        <p><%=strGalleryDesc%></p>
  </div>

        <div class="Js_OuterGallery">
        <%
        For IG_k = 0 to Ubound(ArrPicsToShow,2)
        If IG_k < 30 Then
        %>
        <div class="js_Gal-Pic" id="Js-Gal<%=ArrPicsToShow(0,IG_k)%>" style="background-image: url(<%=Code_GD_Protocol & strURL%>GalleryImages/<%=ArrPicsToShow(4,IG_k)%>);  "><a href="<%=Code_GD_Protocol & strURL%>GalleryImages/<%=ArrPicsToShow(4,IG_k)%>" rel="imagebox[Gallery]" class="thumbnailxx" title="<%=ArrPicsToShow(2,IG_k)%>">
            <img src="<%=Code_GD_Protocol & strURL%>VD_Generic_Images/gal-trans.gif" alt="<%=ArrPicsToShow(1,IG_k)%>" />
        </a>
        </div>    
        <%
        End If
        Next
        %>
        </div>
</div>
0
Comment
Question by:Abiel de Groot
  • 3
4 Comments
 
LVL 55

Accepted Solution

by:
Julian Hansen earned 500 total points
ID: 41748585
Add overflow:hidden to the outer frame
.Js_GalleryFrame_Outer {
      background-color: #FFFFFF;
      border-radius: 9px;
      border-width: 2px;
      border-color: #FFFFFF;
      display: block;
      overflow: hidden; /* ADD THIS */
}

Open in new window

Sample here
0
 
LVL 55

Expert Comment

by:Julian Hansen
ID: 41748592
Another solution is to add this class (instead of the overflow: hidden)
.Js_OuterGallery:after {
	content: "";
	clear: left;
	display: table;
}

Open in new window

Sample here
0
 
LVL 5

Author Closing Comment

by:Abiel de Groot
ID: 41748612
Many thanks

A
0
 
LVL 55

Expert Comment

by:Julian Hansen
ID: 41748623
You are welcome
0

Featured Post

Free Tool: IP Lookup

Get more info about an IP address or domain name, such as organization, abuse contacts and geolocation.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

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

Suggested Solutions

Why do we like using grid based layouts in website design? Let's look at the live examples of websites and compare them to grid based WordPress themes.
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.
In this tutorial viewers will learn how to style elements, such a divs, with a "drop shadow" effect using the CSS box-shadow property Start with a normal styled element, such as a div.: In the element's style, type the box shadow property: "box-shad…
The viewer will learn how to create a basic form using some HTML5 and PHP for later processing. Set up your basic HTML file. Open your form tag and set the method and action attributes.: (CODE) Set up your first few inputs one for the name and …

828 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