Pop it Menu
Pop it Menu
I am trying to validate the xhtml of my web site when I validate my pages with the pop-it menu, I keep getting this error. Can anyone help?
Line 53, column 34: document type does not allow element "div" here
linkset='<div class="menuitems"><a href="http://mylink">Home</a></div>
The element named above was found in a context where it is not allowed. This could mean that you have incorrectly nested elements -- such as a "style" element in the "body" section instead of inside "head" -- or two elements that overlap (which is not allowed).
One common cause for this error is the use of XHTML syntax in HTML documents. Due to HTML's rules of implicitly closed elements, this error can create cascading effects. For instance, using XHTML's "self-closing" tags for "meta" and "link" in the "head" section of a HTML document may cause the parser to infer the end of the "head" section and the beginning of the "body" section (where "link" and "meta" are not allowed; hence the reported error).
Try inserting the script (what comes after the Style Sheet) in the BODY section of your page. Most likely the validation problem is due to the script being in the HEAD, which in turn writes out DIV tags, which should technically appear only in the BODY.
Pop it Menu
here is a sample url for the page that I am using. Sample When I validate, it still picks up the same problem. Am I doing something wrong??
First thing you'll want to try is putting both the style sheet and script in external files (ie: .css and .js). I haven't tried this myself, though it should get rid of the "entities" errors on the page (ie: ">" instead of ">").
Pop it menu
I did as you suggested Sample
but I still get validation errors shown below, and now the menu goes up on the screen. How do I fix that?
Line 28, column 47: there is no attribute "onMouseover"
...opmenu" class="menuskin" onMouseover="clearhidemenu();highlightmenu(event,'on
You have used the attribute named above in your document, but the document type you are using does not support that attribute for this element. This error is often caused by incorrect use of the "Strict" document type with a document that uses frames (e.g. you must use the "Transitional" document type to get the "target" attribute), or by using vendor proprietary extensions such as "marginheight" (this is usually fixed by using CSS to achieve the desired effect instead).
This error may also result if the element itself is not supported in the document type you are using, as an undefined element will have no supported attributes; in this case, see the element-undefined error message for further information.
How to fix: check the spelling and case of the element and attribute, (Remember XHTML is all lower-case) and/or check that they are both allowed in the chosen document type, and/or use CSS instead of this attribute.
Line 28, column 102: there is no attribute "onMouseout"
Line 31, column 24: there is no attribute "onMouseover"
<a href="#" onMouseover="showmenu(event,linkset)" onMouseout="delayhidemenu()
Line 31, column 64: there is no attribute "onMouseout"
... onMouseover="showmenu(event,linkset)" onMouseout="delayhidemenu()">Travel Forms</a>
Last edited by jbirdsall; 10-12-2004 at 11:24 AM.
Reason: Fix some validation problems
Attributes in xml and xhtml have to be lower case.
I am also using popit menu, but i have a different issue......
I am using images not text, however the images only load after i have moused over the link to trigger the drop down.
At first I was using images placed in the drop e.g: <img
But that was worse, this made the images load EVERYTIME the drop down was triggered.
I later changed it so that the images are background images inisde the dropdown, this is slightly better in that the images load the first time you trigger the drop down. HOWEVER there is a delay in loading time after drop down is triggered.
IS THERE ANYWAY TO PRELOAD THE OIMAGES BEFORE THE DROPDOWN IS TRIGGERED?
I have tried CSS preloading and JS preloading but i could not get it to work, it still loads the images only after the dropdown is triggered