Solved

css div - div overlapping another instead of adjusting to available space

Posted on 2014-03-16
9
790 Views
Last Modified: 2014-03-16
This may be a bit tricky, I'm not sure.

I am using a wordpress theme that has a toggle-div so that certain content can be hidden or opened by the user.

It works.

However, the div for the toggle bar overlaps other divs if used side by side.

I don't know if the solution is going to involve css or a fix in the javascript? I'm thinking probably the css.

It's hard to explain - but you can see a sample of the problem here: http://shoutkey.com/trip

Fill free to view the source code, which contains the css.

Thanks for any help you can provide on this -

Chris
0
Comment
Question by:St_Aug_Beach_Bum
  • 5
  • 4
9 Comments
 
LVL 58

Expert Comment

by:Gary
ID: 39932841
Just give the toggler a left margin

margin-left:230px
0
 

Author Comment

by:St_Aug_Beach_Bum
ID: 39932908
Hi Gary,

Thank you. The problem is that if I do that, if the toggle is in a location where there is not a div to the left, it leaves a blank space to the left.

Chris
0
 
LVL 58

Expert Comment

by:Gary
ID: 39932931
Then wrap everything on the right in a div container

<div>
<p>The text seems to be in the correct place, it's just the 'bar' that stretches across and in front of the left floated div:<br><br></p>

<div style="" class="toggle  close"><h3 style="display: none;" class="toggle-head-open"> Spoiler</h3><h3 style="display: block;" class="toggle-head-close"> Spoiler</h3><div style="display: none;" class="toggle-content">
Whoa - here's a spoiler!
</div></div>

<p><br>If it was just me writing, I just wouldn't put the toggle next to an ad. But I have writers that won't think about it and just put it anywhere, so I need some kind of solution so this can be used without this issue cropping up.<br><br><br><br></p>
</div>

Open in new window

0
 

Author Comment

by:St_Aug_Beach_Bum
ID: 39932951
I'm not trying to be a problem... but that doesn't work either - the toggle will be placed in different locations in different articles. So it needs to work (take up the available horizontal space without overlap) wherever it is used in the article.
0
Highfive + Dolby Voice = No More Audio Complaints!

Poor audio quality is one of the top reasons people don’t use video conferencing. Get the crispest, clearest audio powered by Dolby Voice in every meeting. Highfive and Dolby Voice deliver the best video conferencing and audio experience for every meeting and every room.

 

Author Comment

by:St_Aug_Beach_Bum
ID: 39932958
ie: sometimes there will be a div to the left, sometimes there won't be. It would need to work and look good either way...
0
 
LVL 58

Expert Comment

by:Gary
ID: 39932983
Then its not really possible with css - you cannot tell an element to be 100% and float another element next to it.
When you float an element it is no longer part of the normal page flow.
0
 

Author Comment

by:St_Aug_Beach_Bum
ID: 39933005
I've been experimenting and experimenting.

It seems like this:

display:inline-block;

added to .toggle works.

I have not tested it across browsers yet.

The only thing is that I have to manually set the width, otherwise it ends up squashed. I'd rather have it take up the space horizontally automatically, but I can live with setting a width.

What do you think?
0
 
LVL 58

Accepted Solution

by:
Gary earned 500 total points
ID: 39933024
If you are setting a defined width then its easy enough, but how will that work if you have no advert.
0
 

Author Comment

by:St_Aug_Beach_Bum
ID: 39933142
Seems to work ok without the ad too :)

I appreciate your time and help and will send points your way :)

Chris
0

Featured Post

Better Security Awareness With Threat Intelligence

See how one of the leading financial services organizations uses Recorded Future as part of a holistic threat intelligence program to promote security awareness and proactively and efficiently identify threats.

Join & Write a Comment

Styling your websites can become very complex. Here I'll show how SASS can help you better organize, maintain and reuse your CSS code.
Is your Office 365 signature not working the way you want it to? Are signature updates taking up too much of your time? Let's run through the most common problems that an IT administrator can encounter when dealing with Office 365 email signatures.
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…
The viewer will the learn the benefit of plain text editors and code an HTML5 based template for use in further tutorials.

744 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

10 Experts available now in Live!

Get 1:1 Help Now