1 john Jul 12, 2006 12:46
3 john Jul 17, 2006 01:35
Well, If you have a XHTML Strict doc type and run the W3C validator it won't validate.
I just ran a Strict Validation on http://b2evolution.net/news and got
# Error Line 556, column 13: there is no attribute "name" .
<form name="SearchForm" method="get" class="search" action="http://b2evolution
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.
4 blueyed Jul 17, 2006 04:05
I see.. I've not recognized that we're talking about FORM here, but I've thought some INPUT element.
Hmm.. I cannot think of a reason why a form should have a name anyway?!
I'll comment out/ignore the "name" param in CVS HEAD.
Thanks for mentioning it.
5 stk Jul 26, 2006 04:13
Another one that causes a similar problem is the "more" anchor.
<p class="bMore"><a id="more340" name="more340"></a>- -</p>
W3C Validator (XHTML v1.1) wrote:
There is no attribute "name"
I've been changing it for a few versions now. I don't remember if it's an XHTML v1.0 strict problem or not, but in any case ... the "name" attribute is being deprecated in favor of "id".
Changing /inc/MODEL/items/_item.class.php (line 932) from
<?php
$output .= '<a id="more'.$this->ID.'" name="more'.$this->ID.'"></a>'.$more_anchor;
/* to */
$output .= '<a id="more'.$this->ID.'"></a>'.$more_anchor;
?>
resolves the validation problem, with no loss in functionality. (And with "more" ... no worries of more than one. ;)
6 blueyed Jul 26, 2006 19:15
ok. I've just committed it to CVS HEAD. There were some more occurences of "<a name=.." which I've also fixed.
You would have then two "id" attributes maybe..
What validator error do you mean? Perhaps that "name" should be lowercase?