#1: There are no style rules to tell the forum to go into the column. It’s just made of unstyled divs inside the body element. I don’t know how comfortable you are with HTML, but they should go inside the div with id wrap. That would really fix the greatest issue. You don’t need CSS to do that, since the wrap
element would already do that (and the forum could actually be next to the sidebar).
#2: Please create a test account for us to see the HTML that’s causing a problem, or log in and copy the HTML to a pastebin and link to it here. My clue would be that there’s something wrong with the HTML, by the way. Is this an IE7 exclusive problem?
fel64. Thanks for the input on the HTML!
Created a test account for people to see the Account and problems.
username=demo
psswrd=demo
mysoberlife dot com
I added div id=wrap, div id=header, & div id=right to my bbpress template. That solved all position issues in Mozilla. However IE is even more of a mess now.
Your HTML has improved. This is your current structure of major div elements:
div id="wrap"
div header [1]
div header [2]
div wrap [x]
div right
div sidebar
div content
div hottags
div discussions
div footer
You have two div elements with id wrap
. IDs should always be unique, and the second one, marked with [x]
, is empty anyway so you can go ahead and delete it. You also have duplicate header
s. The content of header [2]
should be the only thing in header [1]
. Div sidebar
should be at the same level as div header
is, not a child element. You can also delete the div right
, as it’s kind of pointless.
Div footer
should not be in content
. It should be on the same level, not as a child. That should fix some problems with it, too. You can take out both float: left;
and display: inline;
in the CSS file for div content
– they seem to cancel each other out, and float
ing it is unnecessary anyway and could come back to bite you later.
Your main problems in IE seem to be (seem, I don’t have dev tools for it) that major wrap
is not centered and that content
is just wide enough to conflict with sidebar
. Slowly decrement the width of content
and test if that makes it work. I am surprised it’s not centered in IE7, I’m fairly sure that the CSS margin: 0 auto;
worked. However, to center it in IE6, you need to add the text-align: center;
property to the wrap
element (in CSS). To counter the effect this has on text, you need to add text-align: left;
to header
, sidebar
and content
.
When logged in, the div
class post
at the very bottom of the sidebar is not closed. You can just get rid of it I think. You are also using li
elements for your Private Message Manager and Community Forum links, without actually having opened a ul
or ol
for them, which would probably cause problems so just remove the li
tags.
That’s a start, anyway. Try it and we’ll see if it’s fixed anything.
Thanks! I’ll give it a try when I have a break between meetings! I really appreciate the help!!
ok. Played around with the code a little bit. Have a few questions.
With this div tag structure this is referring to the overall structure spanning the multiple php files in the template folder?
Do I need to include the div ids for header, sidebar, content, footer whenever they are called in the templates php files?
I assume that the child element reference is that I should have all my div header, div sidebar and div footers closed when those sections end.
Since there are a handful of php files in the template can you explain how I know which to add?
If you couldn’t tell I’m pretty confused! Really appreciating the help.
That’s right. A typical template file in your theme will be like this: bb_get_header()
loads header.php
from your theme’s folder or otherwise the default kakumei one (header.php should contain what is now in your second div called header
), then there’s a bunch of content, and then bb_get_footer()
will get the sidebar and the footer elements in footer.php
. You won’t need to modify this or add any files or anything like that to make your theme, at least in all probability.
Because header.php
and footer.php
are always called, the unchanging HTML and php should all be in there.
header.php
html
head
//some head stuff, links and meta etc
/head
body
wrap
header
//header HTML for your logo etc
/header
whatevertemplate.php
.
content
//content HTML and php
/content
footer.php
.
sidebar
//sidebar HTML and stuff
/sidebar
footer
//footer HTML and stuff
/footer
/wrap
/body
/html
I hope that’s clear, it’s a little late so I might have some tired logic. This is pseudoHTML – body
corresponds to <body>
, but wrap
corresponds to <div id="wrap">
and sidebar
= <div id="sidebar">
etc. I hope that’s okay.
So there are usually only three files that directly contribute to the output of the forum. Most of the HTML you’re messing about with should go in header.php
or footer.php
.
bb_get_header()
and bb_get_footer()
deal with all the mucky stuff for you, you don’t need to ‘call’ them (if I’m understanding you right) from the main template individually. Just make sure they’re proper HTML inside header.php
and footer.php
.