You have several HTML errors, which are almost certainly why the browser isn't interpreting your code the way you intended. You have an H3 and several A's as children of a DL. You have a SPAN wrapping a DT and DD. You open an H3 but close an H5. And those are just a few near the top that I could spot right away. My advice: run the generated HTML through the W3C validator, and work on fixing the errors it tells you about.

You have a nested form in there. That's not allowed. The inner <form> start tag gets ignored, and the inner </form> tag causes the outer form to be closed at the position you see in the developer tool (which is according to the HTML spec).

Also beware that in some browsers closing a parent tag will auto-close the child.

<ul><li><form></li>

The /form is added automatically in some browsers, but not all -- it's part of the 'problem' with HTML is that invalid code is accepted as valid, assumptions (that may be false) are made, when in any REAL programming language you'd get and error and the page would stop right there.

Quite often I wish HTML did that, even if it did break 90%+ of the Internet given the way people sleaze out pages.

I really do wonder what the blazes all those definition lists are even in there for, though It's hard to follow the code with whatever train wreck templating bloat that is. (don't even want to THINK about how long that takes to process)... the heading orders don't make ANY sense, it seems to have paragraphs around elements that aren't paragraphs, classes on elements that shouldn't need them given the parent element's presence, horizontal rules when there's no topic/section change, and what I'm assuming are scripting hooks or scripting states that should be added BY the script, so scripting off visitors who have it unavailable or blocked don't end up with a neutered page.

Wait, so phpBB has hopped on the 'abuse lists for tabular data' retard wagon alongside vBull? Lovely... knew there was a reason after NeverNoSanity I told everyone to stop using that one...

You know, it's really pathetic how all the new generation forum softwares are trying to be 'more semantic' with 'modern markup', and in the long run end up with a WORSE result than what they had under HTML 3.2 -- or should we say 3.2 called tranny? Though now it's just 3.2 with HTML 5's lip-service at the top...

Explains the goofy templating system you couldn't pay me to work with.

What would you suggest that I replace the definition lists with? In my opinion the way it looks right now isn't quite an visually appealing as I would want it to be, I mean it looks alright... but not awesome, and as I'm a new webmaster/developer/web designer (have to be all three since I'm the only one working on the site, and i don't have money to hire anyone) I don't quite know the right markup to use for that sort of thing.

Also beware that in some browsers closing a parent tag will auto-close the child.

<ul><li><form></li>

The /form is added automatically in some browsers, but not all

Since browsers implemented HTML5 parsers, they all parse the same. (What happens with that particular markup is that the form element is closed but the "form element pointer" is not cleared, so form elements still get associated with the form.)

deathshadow60 said:

-- it's part of the 'problem' with HTML is that invalid code is accepted as valid, assumptions (that may be false) are made,

Too bad not everyone out there is using a modern browser! I also wouldn't bank on that given the tendency towards regressions in FF and the incomplete implementations of a specification that's still in DRAFT!

zcorpan said:

Browsers don't make "assumptions" anymore, they just follow the spec.

Which makes assumptions based on it's rules that may not match up with the developers intent! That's still making assumptions; the spec just says what those assumptions are -- it still means invalid nesting is rubbish code that should be fixed.

zcorpan said:

HTML is not a programming language.

This one REALLY pisses me off when people say it -- Uses blocks of instructions to tell a computer how to process the data in a sequential order... Sounds like a programming language to me... a high high high level one, but still a programming language.

The "its not a programming language" nonsense is like the opposite of the die hard XML whackjobs who call XML "machine readable"... does it store the numbers in binary? Does it store the strings as null terminated or run length delimited? Is it easily accessed via fixed width at the machine language level without running through a complex parser first? No? Then it's NOT machine readable. That's like calling C 'machine readable'.

Of course if HTML worked more like real programming languages problems like the OP's wouldn't even get past the parser. Biggest mistake in the creation of HTML was letting errors just slide by so people can be sleazy, lazy, or stupid. Validation was supposed to help fix that, but naturally with that giant steaming pile of manure known as HTML 5 they've done a wonderful job of pitching all that in the trash, alongside all the other improvements we were given in the previous decade.

Which makes assumptions based on it's rules that may not match up with the developers intent! That's still making assumptions; the spec just says what those assumptions are -- it still means invalid nesting is rubbish code that should be fixed.

Indeed!

deathshadow60 said:

This one REALLY pisses me off when people say it -- Uses blocks of instructions to tell a computer how to process the data in a sequential order... Sounds like a programming language to me...