Solved

Break a div out of its container with media query

Posted on 2013-06-28
7
274 Views
Last Modified: 2013-12-12
Hello,

How can I break a div out of it's container div at smaller screen sizes with @mediaquery?

I have a nav box and also a title panel that overlays a responsive image carousel. On smaller devices such as the iPhone, the nav and title obscure too much of the image so I want them to break out and come above (nav) and below (title) the carousel.

The carousel is responsive so I can't position the title box absolutely I don't think?



<div id="slider-container">
        <div id="nav-container">
          <nav-bar>
            <ul>
         <li><a href="commercial_grounds_maintenance.html">COMMERCIAL GROUNDS MAINTENANCE</a></li>
              <li><a href="private_garden_maintenance.html">PRIVATE GARDEN MAINTENANCE</a></li>
              <li><a href="garden_design.html">GARDEN DESIGN</a></li>
              <li><a href="landscaping.html">LANDSCAPING</a></li>
              <li><a href="forestry.html">FORESTRY</a></li>
            </ul>
          </nav-bar>
          
          <div id="text-box">
            <h1>CREATING HORTICULTURAL EXCELLENCE FOR OVER 30 YEARS</h1>
          </div>
        </div>

       <div class="slider-wrapper theme-default">
       <div id="slider" class="nivoSlider">
            <img alt="" src="images/home-pics/Home1.jpg" />
            <img alt="" src="images/home-pics/Home2.jpg" />      
          <img alt="" src="images/home-pics/Home3.jpg" />      
          </div>
              </div><!-- end slider -->

      </div>
0
Comment
Question by:igloobob
  • 2
  • 2
7 Comments
 
LVL 51

Expert Comment

by:Julian Hansen
Comment Utility
http://css-tricks.com/resolution-specific-stylesheets/

In your media specific stylesheet (below a certain size) position the div absolutely or fixed.
0
 

Author Comment

by:igloobob
Comment Utility
it already is absolutely positioned to get it sit int he right place over the carousel. If I make it fixed below the required screensize it won't work because I don't know the height of the carousel (due to it being responsive) so I can't know the exact distance I need it from the top of the page.

Unless I am missing something (quite likely!)?
0
 
LVL 51

Expert Comment

by:Julian Hansen
Comment Utility
Sounds like you are going to have to look at a scripted solution.

Try JQuery and trap the resize window event. You can then calculate the height of the carousel and position accordingly.
0
 
LVL 58

Assisted Solution

by:Gary
Gary earned 500 total points
Comment Utility
One possible idea is have another container div (inline-block), have your title positioned against this and not the slideshow container.
When the screen is too small add a top padding to this container (using media queries), then your title will appear above the slideshow automatically
I'm implementing this method myself.
0
 

Accepted Solution

by:
igloobob earned 0 total points
Comment Utility
Thanks for that suggestion Gary I will give it a go when I get a chance. What I ended up doing in the meantime was just create a mobile version of each page so I could just change the structure of the page in the html. It was only a fairly simple page so didn't take long.

Will definitely give yours a go though when I can.

Thanks :)
0

Featured Post

Why You Should Analyze Threat Actor TTPs

After years of analyzing threat actor behavior, it’s become clear that at any given time there are specific tactics, techniques, and procedures (TTPs) that are particularly prevalent. By analyzing and understanding these TTPs, you can dramatically enhance your security program.

Join & Write a Comment

Creating a CSS block that only applies to printing By default, all of your CSS applies to every possible view of your page - whether on screen, printed, landscape, touch-screen, or whatever.  You can, however, add CSS that only applies under certai…
When writing CSS, there are a few simple rules that will make your life easier.    1. Using ‘* {box-sizing:border-box;}’. Using this will wrap all your elements in a nice little compact box-model that will give you the width you want, like so... …
In this tutorial viewers will learn how to position overlapping items using z-index in CSS. They will also learn the restrictions on the z-index property.  Create a new HTML document with an internal stylesheet.: Create a div in CSS and name it Red.…
The viewer will receive an overview of the basics of CSS showing inline styles. In the head tags set up your style tags: (CODE) Reference the nav tag and set your properties.: (CODE) Set the reference for the UL element and styles for it to ensu…

743 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

Need Help in Real-Time?

Connect with top rated Experts

14 Experts available now in Live!

Get 1:1 Help Now