[Skip to the Main Content]

Standards Reboot Spring 2007 as Standards Indicator

Or, What, Me Validate?

Standards Reboot Spring 2007.

I was generously asked by David Blanchet to judge Standards Reboot Spring 2007. I accepted. [Note: I’ve previously written about the design aspect in The Lesson of Vitaphone Cartoons as regards Web Design; and, What affect it had on judging Standards Reboot Spring Designs.] The following regards the HyperText Markup Language, or HTML and CSS, or Cascading Style Sheets of those sites.

I’ll digress.

The Basics - what you should run on all your web pages

  • The MarkUp Validator. - Also known as the HTML validator, it helps check Web documents in formats like HTML and XHTML, SVG or MathML.
  • The CSS Validator - validates CSS stylesheets or documents using CSS stylesheets.
  • The Link Checker - Checks anchors (hyperlinks) in a HTML/XHTML document. Useful to find broken links, etc.

[Elementary note: Courtesy of the W3C Quality Assurance Tools page.]

The most common (X)HTML and CSS used for the structure of a site should be corrected.

106 participants participated.

I looked at four pages: Home, Contact, About and a secondary page. Visual aesthetics were considered. Design consistency was weighted; design variation was weighted higher. Code was weighted, too. Semantic use of HTML, e.g., was a paragraph used with a large font size instead of simply using a header element, was given greater decremental weight than the semantic use of CSS ID/Class names, e.g., <div id="sideCol">. [Note: Semantic CSS was not considered.] Data collection and analysis were performed between May 3 — May 12, 2007. These sites were reviewed with The W3C Markup Validation Service (Beta Version) and CSS 3.

My observations when something like this.

The lack of Contact forms was bothersome. That some would use mailto: in this day and age is unfathomable.

Accessibility was hit-or-miss, e.g., lack of image alt attributes.

Markup Language semantics were as expected. Nothing too incorrect; some were dead on. A few were poorly constructed. CSS ID and Class names were viewed for semantics but did not factor into my vote. [The Semantics argument rages.]

The conformance rate for Web Standards implementation is slightly encouraging: 47% were valid for HTML and CSS; 53% failed HTML and/or CSS. [Note: The valid/failure rates were calculated from the initial validation performed by Web Standards Reboot.]

The code was better than exhibited last year on CSS Reboot Spring 2006 but the majority was default Word Press template coding. The HTML and CSS were of the common sort. All sites with errors would have benefited from that single Validation step in the coding process whereby those errors could have easily been removed. The W3C Validators accept direct input of the markup and style code so there is not reason not to use the validators as you code. [Note: I use these services continuously when working on sites; I find it easier to correct errors as I go rather than wait for the very end. Sometimes small errors become compound errors by the time you have finished coding; and, locating compound errors is more troublesome, isn’t it.]

Thirteen (13) authors corrected HTML and/or CSS errors after original submission of their site. However, it would have been better had quality assurance been performed before submission.

It is encouraging that the failure rate has decreased.

Content Type

All pages were rendered as content type="text/html".

DocType

Document Type
html/strict: 4
html/loose: 1
xhtml/strict: 42
xhtml/transitional: 53
xhtml 1.1: 2
Unknown: 2
None: 2

CharSet

Character Set
utf-8: 75 Not surprising since most sites were Word Press.
iso-8859-1: 27
windows-1250: 2
windows-1251: 2

Platform

CMS declared (or, found in code, e.g., /wp/)
Unknown: 70
Word Press: 32
Typo3: 2
Expression Engine: 1
Blogger: 1

Errors

53.3% of the websites failed validation for HTML Markup, for CSS or, for both.
46.7% were valid.

Interesting break-down, isn't it.

43.4% of the websites failed validation for HTML Markup, for CSS or, for both.
56.6% were valid!

The most common errors as noted belowe were excised from the following Elementary Standards articles,

[Note: The error examples from those articles were not revised for Standards Reboot results.]

I’d prefer not reading errors.

The Most Common HTML Markup Errors

All of the errors are simple, fundamental but ever-repeating errors. They are easily corrected. Some sites had one (1) Markup error; one hundred (200) errors.

The error types below were most common; or, popular.

HTML Specific Errors

1. Line 6 column 95:  character data is not allowed here.
....nt/themes/Jason/images/favicon.ico" />
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).

The most common error found in HTML 4.01 code was the use of the self-closing XHTML tags, i.e., “/”.

HTML/XHTML Errors

1. Line 54 column 62:  required attribute "alt" not specified.
...src="http://www.neglected-things.com/images/burlesque.jpg" />
The attribute given above is required for an element that you’ve used, but you have omitted it. For instance, in most HTML and XHTML document types the "type" attribute is required on the "script" element and the "alt" attribute is required for the "img" element.

This has been required since HTML 4.01 Specification, 13 Objects, Images, and Applets, 13.2 Including an image: the IMG element which states,

“The alt attribute specifies alternate text that is rendered when the image cannot be displayed. User agents must render alternate text when they cannot support images, they cannot support a certain image type or when they are configured not to display images.”

And, Accessibility Guidelines, HTML Techniques for Web Content Accessibility Guidelines 1.0, 7.1 Short text equivalents for images ("alt-text") which states,

“Provide a text equivalent for every non-text element (e.g., via "alt", "longdesc", or in element content). This includes: images, graphical representations of text (including symbols), image map regions, animations (e.g., animated GIFs), applets and programmatic objects, ASCII art, frames, scripts, images used as list bullets, spacers, graphical buttons, sounds (played with or without user interaction), stand-alone audio files, audio tracks of video, and video. [Priority 1].”

2. Line 100 column 69:  cannot generate system identifier for general entity "contents".
...st.com/php/banner.php?size=rectangle&contents=286,288,287,293" width="304" he
An entity reference was found in the document, but there is no reference by that name defined. Often this is caused by misspelling the reference name, unencoded ampersands, or by leaving off the trailing semicolon (;). The most common cause of this error is unencoded ampersands in URLs as described by the WDG in "Ampersands in URLs".
Entity references start with an ampersand (&) and end with a semicolon (;). If you want to use a literal ampersand in your document you must encode it as "&amp" (even inside URLs!). Be careful to end entity references with a semicolon or your entity reference may get interpreted in connection with the following text. Also keep in mind that named entity references are case-sensitive; &Aelig; and &aelig; are different characters.
If this error appears in some markup generated by PHP's session handling code, this article has explanations and solutions to your problem.
Note that in most documents, errors related to entity references will trigger up to 5 separate messages from the Validator. Usually these will all disappear when the original problem is fixed.

They lie. Errors related to entity references will trigger up to ten (10) separate messages. This error was—Commonly—caused by a single “&” in URLs.

The above two error types were most infectious.

5.Line 39 column 9:  ID "home" already defined.
<li id="home">
An "id" is a unique identifier. Each time this attribute is used in a document it must have a different value. If you are using this attribute as a hook for style sheets it may be more appropriate to use classes (which group elements) than id (which are used to identify exactly one element).

HTML 4.01 Specification, 7 The global structure of an HTML document, 7.5.2 Element identifiers: the id and class attributes which states,

id = name [CS]
This attribute assigns a name to an element. This name must be unique in a document. [Elementary Note: It translates as use only once.]
class = cdata-list [CS]
This attribute assigns a class name or set of class names to an element. Any number of elements may be assigned the same class name or names. Multiple class names must be separated by white space characters.
8. Line 542 column 8:  end tag for "div" omitted, but OMITTAG NO was specified.
</body>
You may have neglected to close an element, or perhaps you meant to "self-close" an element, that is, ending it with "/>" instead of ">".

The above error caused interesting arrays of compound, i.e., subsequent, errors similar to those found below.

9. Line 109 column 3:  document type does not allow element "h2" here; missing one of "object", "ins", "del", "map", "button" start-tag.
<h2>
The mentioned element is not allowed to appear in the context in which you’ve placed it; the other mentioned elements are the only ones that are both allowed there and can contain the element mentioned.
9a. Line 112 column 5:  document type does not allow element "hr" here; missing one of "object", "ins", "del", "map", "button" start-tag.
<hr />
9b. Line 113 column 23:  document type does not allow element "ul" here; missing one of "object", "ins", "del", "map", "button" start-tag.
<ul class='of-interest'>
9c. Line 131 column 3:  document type does not allow element "h2" here; missing one of "object", "ins", "del", "map", "button" start-tag.
<h2>
10. Line 171 column 98:  there is no attribute "align".
..."><img src="img/movie1pre.jpg" align="Left" /></a></div>
11. Line 124 column 12:  there is no attribute "border".
<img border="0" src="http://www.the-flying-monkeys-paw/images/logo.gif" width="167"
12. Line 242 column 81:  end tag for element "a" which is not open.
..om/blog/archives/snark/">snark</a></a></h5>
You may have neglected to close an element, or perhaps you meant to "self-close" an element, that is, ending it with "/>" instead of ">".

XHTML Specific Errors

1. Line 10 column 65:  end tag for "link" omitted, but OMITTAG NO was specified.
...ortcut icon" href="favicon.ico" type="image/x-icon">
You may have neglected to close an element, or perhaps you meant to "self-close" an element, that is, ending it with "/>" instead of ">".

XHTML™ 1.0 The Extensible HyperText Markup Language (Second Edition), 4. Differences with HTML 4, 4.6. Empty Elements states,

“Empty elements must either have an end tag or the start tag must end with />. For instance, <br/> or <hr></hr>. See HTML Compatibility Guidelines for information on ways to ensure this is backward compatible with HTML 4 user age.” [Elementary Note: Empty elements must be closed in the <head> and <body> sections.]

2. Line 9 column 67:  document type does not allow element "META" here. ..."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).

XHTML™ 1.0 The Extensible HyperText Markup Language (Second Edition), 4. Differences with HTML 4, 4.4. Attribute values must always be quoted

“All attribute values must be quoted, even those which appear to be numeric.”

5. Line 513 column 18:  end tag for "br" omitted, but OMITTAG NO was specified.
<br class="clear">

HTML/XHTML Warning

This was a very common warning that appeared for - Roughly - one-third of all sites.

 Line 102 column 32:  character "&" is the first character of a delimiter but occurred as data.
We’re a down to earth, friendly & totally reliable company with a focus on getti
This message may appear in several cases:
  • You tried to include the "<" character in your page: you should escape it as "<".
  • You used an unescaped ampersand "&": this may be valid in some contexts, but it is recommended to use "&amp;", which is always safe.
  • Another possibility is that you forgot to close quotes in a previous tag.

The Markup Validator will give you a “Warning” for using “&” in the text, i.e., data. Curiously, the CSS Validation will not process your style sheets until this ampersand warning has been corrected. Further, the Markup Validator will give you an “Error” when using an ampersand in URLs. It would simplify things if the W3C made “&amp;” mandatory for all uses of “&”, wouldn’t it.

Other errors occurred in the Markup of Standards Reboot sites but they were arcane and few.

Author-generated Errors

1. Typographical Errors

Line: 63 Context : h3
Invalid number : font-weight ligher is not a font-weight value : ligher
Line: 441 Context : #footer
Invalid number : margin Unknown dimension : 2x
Line: 199
Invalid number : color 00000 is not a valid color 3 or 6 hexadecimals numbers : #00000
Line: 102 Context : .primary .item .pagetitle
Invalid number : background Too many values or values are not recognized : ffffff
Line: 47 Context : #portfolio .right .c0
Invalid number : width only 0 can be a length. You must put an unit after your number : 280

The above examples are—Merely—typographical errors. Typographical errors were the most common error type.

The errors above are easily identified. The following error doesn’t make sense until you view the actual code in the style sheet.

3. Auto Errors

Line: 17 Context : body
Invalid number : padding auto is not a padding-right value : 0 auto

The most common use of “auto” as a value is for horizontally centering block-level, non-replaced elements in normal flow by means of “margin: 0 auto;”. Padding doesn’t work. [See Cascading Style Sheets, level 2 revision 1, CSS 2.1 Specification, [W3C Working Draft 11 April 2006], 10 Visual formatting model details, 10.3 Calculating widths and margins should other uses be wanted.]

4. Compound Values Errors

Line: 616 Context : #formuway
Invalid number : width Too many values or values are not recognized : 100% px

This error type was an odd one; it appeared in several different style sheets.

6. Font Shorthand Errors

Line: 336 Context : #sidebar #searchform #s
Invalid number : font Parse Error - [empty string]
Line: 412 Context : .primary .item .itemtext
Invalid number : font 'Lucida Grande' is not a font-size value : 'Lucida Grande', Verdana, Arial, Sans-Serif

Cascading Style Sheets, level 2 revision 1 CSS 2.1 Specification [W3C Working Draft 11 April 2006], 1 About the CSS 2.1 Specification, 1.4 Conventions, 1.4.3 Shorthand properties offers,

Some properties are shorthand properties, meaning that they allow authors to specify the values of several properties with a single property.

For instance, the 'font' property is a shorthand property for setting 'font-style', 'font-variant', 'font-weight', 'font-size', 'line-height', and 'font-family' all at once.

When values are omitted from a shorthand form, each "missing" property is assigned its initial value (see the section on the cascade).

That is the proper “font shorthand”. All of the preceding errors should have used an appropriate property, e.g., “font-size”. Please note the order of the “font shorthand” in the example above: it is the required sequence.

9. Legacy Errors

Line: 604 Context : entry img.wp-smiley
Invalid number : vertical-align absmiddle is not a vertical-align value : absmiddle

Cascading Style Sheets, level 2, CSS2 Specification, 10 Visual formatting model details, 10.8 Line height calculations: the 'line-height' and 'vertical-align' properties, 10.8.1 Leading and half-leading, 'vertical-align' offers,

middle
Align the vertical midpoint of the box with the baseline of the parent box plus half the x-height of the parent.

Every legacy attribute was seen.

10. Underscore Hack Errors

Line: 110 Context : .secondary
Property _width doesn't exist : 28%

This is the underscore hack. [See The Underscore Hack as first published on November, 21 2003 by Wellstyled.]

Cascading Style Sheets, level 2 revision 1, CSS 2.1 Specification, 4 Syntax and basic data types, 4.1.1 Tokenization is often stated as allowing the underscore. It doesn’t.

4.1.2.1 Vendor-specific extensions states,

An initial dash or underscore is guaranteed never to be used in a property or keyword by any current or future level of CSS.

And, if one reads further, 4.1.3 Characters and case states,

The following rules always hold:

  • In CSS 2.1, identifiers (including element names, classes, and IDs in selectors) can contain only the characters [A-Za-z0-9] and ISO 10646 characters U+00A1 and higher, plus the hyphen (-) and the underscore (_); they cannot start with a digit, or a hyphen followed by a digit. Only properties, values, units, pseudo-classes, pseudo-elements, and at-rules may start with a hyphen (-); other identifiers (e.g. element names, classes, or IDs) may not. Identifiers can also contain escaped characters and any ISO 10646 character as a numeric code (see next item). For instance, the identifier "B&W?" may be written as "B\&W\?" or "B\26 W\3F".

11. None Errors

Line: 216 Context : #grav-signup-holder label.evil-checkbox input
Invalid number : background-color none is not a color value : none
Line: 183 Context : #quickiesChoice
Invalid number : font-weight none is not a font-weight value : none
Line: 100 Context : #maincontent li
Invalid number : padding none is not a padding-top value : none
Line: 100 Context : #maincontent li
Invalid number : margin none is not a margin-top value : none

The use of “none” was popular. It was used in conjunction with every possible attribute.

For values that require a number instead of “None” you must use numeral “0”; and, for background-colors, instead of “None” eliminate the use of “background-color” completely or use “Transparent”.

“display: none” works.

12. Cursor Hand Errors

Line: 393 Context : #right .image:hover
Invalid number : cursor hand is not a cursor value : hand
Line: 21 Context : a:link, a:visited, a:active
Invalid number : cursor hand is not a cursor value : hand

Cascading Style Sheets, level 2, CSS2 Specification, 18 User interface, 18.1 Cursors: the 'cursor' property offers

auto
The UA determines the cursor to display based on the currentcontext.
crosshair
A simple crosshair (e.g., short line segments resembling a "+" sign).
default
The platform-dependent default cursor. Often rendered as an arrow.
pointer
The cursor is a pointer that indicates a link.

but not “hand”.

14. Muddled Specification Error

Line: 61 Context : h3
Invalid number : line-height Parse Error - [empty string]

This selector fails but it’s faulty W3C text. The specification offers clues.

Cascading Style Sheets, level 2 revision 1, CSS 2.1 Specification [W3C Working Draft 11 April 2006], 10 Visual formatting model detail, 10.8 Line height calculations: the 'line-height' and 'vertical-align' properties, 10.8.1 Leading and half-leading offers,

'line-height'
Value:  normal | <number> | <length> | <percentage> | inherit
Initial:  normal
Applies to:  all elements
Inherited:  yes
Percentages:   refer to the font size of the element itself
Media:  visual
Computed value:   for <length> and <percentage> the absolute value; otherwise as specified

On a block-level, table-cell, table-caption or inline-block element whose content is composed of inline-level elements, 'line-height' specifies the minimal height of line boxes within the element. The minimum height consists of a minimum height above the block's baseline and a minimum depth below it, exactly as if each line box starts with a zero-width inline box with the block's font and line height properties (what TEX calls a "strut").

On an inline-level element, 'line-height' specifies the height that is used in the calculation of the line box height (except for inline replaced elements, where the height of the box is given by the 'height' property).

Values for this property have the following meanings:

normal
Tells user agents to set the used value to a "reasonable" value based on the font of the element. The value has the same meaning as <number>. We recommend a used value for 'normal' between 1.0 to 1.2. The computed value is 'normal'.
<length>
The specified length is used in the calculation of the line box height. Negative values are illegal.
<number>
The used value of the property is this number multiplied by the element's font size. Negative values are illegal. The computed value is the same as the specified value.
<percentage>
The computed value of the property is this percentage multiplied by the element's computed font size. Negative values are illegal.

The three rules in the example below have the same resultant line height:


div { line-height: 1.2; font-size: 10pt }     /* number */
div { line-height: 1.2em; font-size: 10pt }   /* length */
div { line-height: 120%; font-size: 10pt }    /* percentage */

The clues offered are as above. [Emphasis added.]

The integer “1” is incorrect; the number “1.0” is correct. The reason, as stated above, is that real numbers and integers must be specified in decimal notation as required by Cascading Style Sheets, level 2 revision 1, CSS 2.1 Specification, 4 Syntax and basic data types, 4.3 Values, 4.3.1 Integers and real numbers which states,

Some value types may have integer values (denoted by <integer>) or real number values (denoted by <number>). Real numbers and integers are specified in decimal notation only. [Elementary emphasis.] An <integer> consists of one or more digits "0" to "9". A <number> can either be an <integer>, or it can be zero or more digits followed by a dot (.) followed by one or more digits. [Elementary Note: That’s “decimal notation”. How does one interpret those preceding sentences. One states “only” whereas the next offers an either/or condition.] Both integers and real numbers may be preceded by a "-" or "+" to indicate the sign.

Nevertheless, until the CSS Validator and it’s specifications are fixed, the ‘line-height’ value must be specified with decimal notation, e.g., “1.0” before validation occurs (even if this is the sole exception to CSS specifications, e.g., all commonly-used numbers should result in validation errors, e.g., font-sizes are not specified in decimal notation).

“The Underscore Hack” which by definition is considered to be vendor-specific by CSS v.2.1 cannot be corrected and, therefore, shall never pass validation. All remaining errors can and should be corrected. Why Validate Cascading Style Sheets? illustrates reasons for correcting errors for those who believe validation serves no purpose.

The W3C Markup Validation Service is exemplary in all aspects. The W3C CSS Tool’s lacking. Dismally.

CSS Vendor-Specific Extensions fail

The first article, CSS Reboot as Web Standards Validation Indicator quantified valid sites which participated in CSS Reboot Spring 2006. The second article, The Most Common HTML Markup Errors, qualified Markup errors. The Most Common CSS Markup Errors qualified the most popular author-generated errors found in the CSS of sites found during validation process using The W3C CSS Validation Service Tool. This article addresses vendor-specific extensions errors. Vendor-specific extensions are—Astoundingly—simple. And, validation they will forever fail.

“An initial dash or underscore is guaranteed never to be used in a property or keyword by any current or future level of CSS.”

So. Those types, by inference, when written with an initial dash or underscore shall continuously cause Cascading Style Sheets, level 2 revision 1, CSS 2.1 Specification [W3C Working Draft 11 April 2006] and CSS3 Cascading Style Sheets Under Construction validation failures. Microsoft filters and selectors are oblique.

The actual, offending source code has been included when necessary for understanding the CSS Validator's error statement. The applicable CSS specification verbiage when necessary, too.

Vendor-Specific Errors

MS Filters

1. Line: 146
Parse Error - : opacity=60)
2. Line: 215 Context : .topTear
attempt to find a semi-colon before the property name. add it

Mozilla Properties

Line: 240 Context : body div#toolTip
Parse error - Unrecognized : }

Mozilla CSS extensions [Note: See Netscape CSS Extensions by Brian Wilson [circa 2002] are vendor-specific properties with their “-moz-” prefix; they don’t validate.

Cascading Style Sheets, level 2 revision 1, CSS 2.1 Specification, 4 Syntax and basic data types, 4.1.2.1 Vendor-specific extensions states,

In CSS 2.1, identifiers may begin with '-' (dash) or '_' (underscore). Keywords and property names, beginning with -' or '_' are reserved for vendor-specific extensions. Such vendor-specific extensions should have one of the following formats:


'-' + vendor identifier + '-' + meaningful name
'_' + vendor identifier + '-' + meaningful name

For example, if XYZ organization added a property to describe the color of the border on the East side of the display, they might call it -xyz-border-east-color.

Other known examples:


-moz-box-sizing
-moz-border-radius
-wap-accesskey

An initial dash or underscore is guaranteed never to be used in a property or keyword by any current or future level of CSS. Thus typical CSS implementations may not recognize such properties and may ignore them according to the rules for handling parsing errors. However, because the initial dash or underscore is part of the grammar, CSS 2.1 implementers should always be able to use a CSS-conforming parser, whether or not they support any vendor-specific extensions.

And, 4.1.2.2 Informative Historical Notes

This section is informative.

At the time of writing, the following prefixes are known to exist:

prefixorganization
-ms-Microsoft Corporation
-moz-The Mozilla Organization
-o-Opera Software
-atsc-Advanced Television Standards Committee
-wap-The WAP Forum

Vendor/organization specific extensions should be avoided.

And, if one reads further, 4.1.3 Characters and case states,

The following rules always hold:

  • In CSS 2.1, identifiers (including element names, classes, and IDs in selectors) can contain only the characters [A-Za-z0-9] and ISO 10646 characters U+00A1 and higher, plus the hyphen (-) and the underscore (_); they cannot start with a digit, or a hyphen followed by a digit. Only properties, values, units, pseudo-classes, pseudo-elements, and at-rules may start with a hyphen (-); other identifiers (e.g. element names, classes, or IDs) may not. Identifiers can also contain escaped characters and any ISO 10646 character as a numeric code (see next item). For instance, the identifier "B&W?" may be written as "B\&W\?" or "B\26 W\3F".

All vendor-specific errors failed. They were not failed as “Vendor-Specific Extension” They were failed for syntax errors. Still, it would be nice if that validation tool were more specific, e.g.,

1.Line: 33 Context : body div#kingMenehuneTitle
Parse error - : vendor-specific selector used }

Conclusions

Several notable conclusions may be derived from Standards Reboot Spring 2007 even though participation in Reboots has waned since last Spring. Seven hundred eight-six (786) sites were found in CSS Reboot Spring 2006. Site validity has increased. [Note: If we were to remove the five (5) sites which failed validation because of opacity and underscore hack errors caused by Word Press templates and Thickbox, validation percentage would increase. And, if the four (4) sites which had one (1) error were to have corrected that error, validation would have increased further.]

  1. UTF-8 has gone de facto.

    Several years ago there was grand discussions regarding utf-8 versus iso-8859-1. That’s gone mute. Word Press may be implicated.

  2. XHTML 1.0 has gone de facto.

    That’s expected but not surprising since Word Press accounted for 1/3 of the CMS platforms.

  3. XHTML/Strict has gained popularity.

    Strict’s good.

  4. Validation is not practiced.

    The grand majority of sites failed for less than ten (10) errors. Typos, font shorthand, ampersands, legacy markup, missing alt attributes, and missed XHTML closings on meta elements. That was the majority. That thirteen sites performed validation after participation in Standards Reboot was encouraging; and, frustrating.

  5. Web Standards need CMS participation for continued subversion.

    It’s novel. The W3C HTML Working Group and Web Standards Soap-Box Evangelists are attempting to subvert the very nature of shoddy markup and style sheets but often overlook Content Management Systems. Word Press can be attributed for the rise in charset="utf-8". And, XHTML 1.0. And—Perhaps—rise of validated sites.

    Everyone knows that professional web developers practice Web Standards. It’s Everyone else. That majority which utilizes some sort of content management system. How about this. CMS manufacturers and template developers meet Web Standards afterwhich all and any errors can be attributed to the authors.

I’ll digress further.

The Basics - what you should run on all your web pages

  • The MarkUp Validator. - Also known as the HTML validator, it helps check Web documents in formats like HTML and XHTML, SVG or MathML.
  • The CSS Validator - validates CSS stylesheets or documents using CSS stylesheets.
  • The Link Checker - Checks anchors (hyperlinks) in a HTML/XHTML document. Useful to find broken links, etc.

It’s not frightening nor abhorrent. It’s simple validation.

Standards Reboot Spring 2007 illustrated that Web Standards are proceeding albeit slightly.


Sean Fraser posted this on June 27, 2007 07:21 PM.

  • Add to Technorati Favorites
  • de.licio.us: http://www.elementary-group-standards.com/web-standards/standards-reboot-as-web-standards-indicator.html
  • furl: http://www.elementary-group-standards.com/web-standards/standards-reboot-as-web-standards-indicator.html
  • reddit: http://www.elementary-group-standards.com/web-standards/standards-reboot-as-web-standards-indicator.html

Comments

Roger Johansson wrote this at June 28, 2007 12:01 AM

What is really frightening is that so many participants failed to read what is on every page of the Reboot site:

Standards Reboot is all about the use of standards in web design. The Standards Reboot is open to the design community at large to showcase strides in web design using standards.


Comment Author Gravatar
Sean Fraser wrote this at June 28, 2007 08:03 PM

Roger:

Yes, I must agree. Though, the unsettling aspect of those failed sites was that some of them stated they practiced Web Standards. They genuinely seemed to embrace standards by their text.

How does one expect the furtherance of Web Standards when self-proclaimed advocates cannot be bothered to set an example of - at least - valid code by correcting typographical errors.

Or, when having difficulties with CSS shorthand rules, correct their errors so that others may benefit.


adam wrote this at July 24, 2007 12:29 PM

as one of the rebooters still wearing the "invalid" badge, despite having both XHTML and CSS validity for months now, i find the whole thing rather annoying.

that survey would be great if it reflected site's actual validity. my site failed because i had a windows-edited PHP file hosted on a linux webserver (the site validated until i deployed), and because i'm using a pre-processed PHP stylesheet, which the validator changes its mind about regularly (today it claims to like it).

i highly doubt that i'm the only one affected by bugs in the validator.

also, nofollow is a blunt object devised by a lethargic company more interested in penalizing legitimate websites than solving spam problems on sites they host. i wouldn't advertise that you use it.


Comment Author Gravatar
Sean Fraser wrote this at July 24, 2007 08:59 PM
Adam:

Thank you for your comments. The Standards Reboot shows the initial validation results; my review has your site as one of those that were valid afterwards. I don't know what error caused the initial XHTML failure(s); I noted that CSS failed for one errant error = valign:bottom. I do know that each validation service will show fatal (or, draconian) errors for some server issues, e.g., bad HTTP Header Responses.

I would suggest reporting the PHP bug to the [email protected] and [email protected] mailing lists. They do fix them.


Comment Here

Reply guidelines: Basic HTML (a href, p, code, blockquote, dl, dt, dd, ul, ol, li, cite and q) are allowed. Line breaks and paragraphs are automated.


Inappropriate, unwarranted or self-aggrandizemented comments may suffer redaction. Or, deletion.

[Note: A gravatar, or globally recognized avatar, is that small image in the comments. Gravatar sets-up them.]

The Elementary Standards: A Compendium of Web Standards, CSS, Linguistics and Search Engine Optimization methodology Copyright ©2005-2007 Sean Fraser. All work is published under a Creative Commons License. All Rights Reserved.

Palm trees on a grassy field in Hawai’i

Main Content Returns thus