By kappler0 on
Hello,
I have searched for a way to fix this to no avail and hope someone may be able to shed some light...
When running the HTML markup validation from http://www.validator.w3.org I get many errors which seem to originate from the way drupal / nodewords is formatting the output.
You can enter the domain to see first-hand ( http://www.neweffectit.com ) but here is a sampling of the results from the following search: http://validator.w3.org/check?uri=www.neweffectit.com&charset=%28detect+...
Any help to get this corrected is greatly appreciated!
- - -
Validation Output: 27 Errors
1. Error Line 2, Column 13: there is no attribute "XMLNS"
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en" dir="ltr">
✉
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. If you received this error when using the <embed> element to incorporate flash media in a Web page, see the FAQ item on valid flash.
2. Error Line 2, Column 63: there is no attribute "XML:LANG"
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en" dir="ltr">
✉
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. If you received this error when using the <embed> element to incorporate flash media in a Web page, see the FAQ item on valid flash.
3. Warning Line 4, Column 68: NET-enabling start-tag requires SHORTTAG YES
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
✉
The sequence <FOO /> can be interpreted in at least two different ways, depending on the DOCTYPE of the document. For HTML 4.01 Strict, the '/' terminates the tag <FOO (with an implied '>'). However, since many browsers don't interpret it this way, even in the presence of an HTML 4.01 Strict DOCTYPE, it is best to avoid it completely in pure HTML documents and reserve its use solely for those written in XHTML.
4. Error Line 4, Column 69: character data is not allowed here
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
✉
You have used character data somewhere it is not permitted to appear. Mistakes that can cause this error include:
* putting text directly in the body of the document without wrapping it in a container element (such as a <p>aragraph</p>), or
* forgetting to quote an attribute value (where characters such as "%" and "/" are common, but cannot appear without surrounding quotes), or
* using XHTML-style self-closing tags (such as <meta ... />) in HTML 4.01 or earlier. To fix, remove the extra slash ('/') character. For more information about the reasons for this, see Empty elements in SGML, HTML, XML, and XHTML.
5. Warning Line 6, Column 60: NET-enabling start-tag requires SHORTTAG YES
<meta http-equiv="Content-Style-Type" content="text/css" />
✉
The sequence <FOO /> can be interpreted in at least two different ways, depending on the DOCTYPE of the document. For HTML 4.01 Strict, the '/' terminates the tag <FOO (with an implied '>'). However, since many browsers don't interpret it this way, even in the presence of an HTML 4.01 Strict DOCTYPE, it is best to avoid it completely in pure HTML documents and reserve its use solely for those written in XHTML.
6. Warning Line 7, Column 70: NET-enabling start-tag requires SHORTTAG YES
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
✉
The sequence <FOO /> can be interpreted in at least two different ways, depending on the DOCTYPE of the document. For HTML 4.01 Strict, the '/' terminates the tag <FOO (with an implied '>'). However, since many browsers don't interpret it this way, even in the presence of an HTML 4.01 Strict DOCTYPE, it is best to avoid it completely in pure HTML documents and reserve its use solely for those written in XHTML.
7. Error Line 7, Column 70: document type does not allow element "META" here
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
✉
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).
Comments
...
no offence, but reading sometimes really helps, from your error log above:
which is exactly what's happening here, you're using an html doctype but xhtml syntax (that's pretty much how Drupal outputs its html by default). Changing your doctype to xhtml 1.0 transitional (not really ideal) gets rid of those erros.
However, that also reveals a few heavy design errors, things like div align=center that's been put around your authorize.net seal.
Basically, somebody who's got no idea of proper html has been putting this theme together and you should get this fixed or a major price reduction for such awful and incompetent work.
Thanks - the doc type in the
Thanks - the doc type in the themes code is XHTML 1.0 Transitional but it shows as HTML 4.01 Transitional for some reason!!.
Is there somewhere else this piece of code providing this output would be?
I appreciate it....
...
as I said, you really need to get somebody who knows this stuff properly. Just to double check, we're talking about this piece of code:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">in your front page.
There's no other way where the document type can be outputted other than in the theme files. But do note that we're only talking here about the front page, every other page seems fine (something you really should've checked first). So, basically, check all those theme files and whether or not they have a doctype and which doctype they have and use. To make things quicker for you, you're looking for page-xxx.tpl.php files as the page.tpl.php itself seems okay.
Read here, it could be useful
Read here, it could be useful as startpoint:
A Simple HTML5 RDFa Example