Copyright © 2009 W3C® (MIT, ERCIM, Keio), All Rights Reserved. W3C liability, trademark and document use rules apply.
This document supplements W3C Mobile Web Best Practices 1.0 [MWBP] by providing additional evaluations of conformance to Best Practice statements and by providing additional interpretations of Best Practice statements.
Editor draft: This document has no official standing. It is used as material for discussion within the Mobile Web Best Practices working group. In particular, the rest of this Status of This Document section should be ignored.
This section describes the status of this document at the time of its publication. Other documents may supersede this document. A list of current W3C publications and the latest revision of this technical report can be found in the W3C technical reports index at http://www.w3.org/TR/.
This is a public editor's draft produced by the mobileOK Pro Tests Taskforce of the Mobile Web Best Practices Working Group as part of the Mobile Web Initiative . Please send comments on this document to the Working Group's public email list public-bpwg-pro@w3.org, a publicly archived mailing list .
This document was produced under the 5 February 2004 W3C Patent Policy . W3C maintains a public list of patent disclosures made in connection with this document; that page also includes instructions for disclosing a patent. An individual who has actual knowledge of a patent which the individual believes contains Essential Claim(s) with respect to this specification must disclose the information in accordance with section 6 of the W3C Patent Policy.
Publication as an Editor's Draft does not imply endorsement by the W3C Membership. This is a draft document and may be updated, replaced or obsoleted by other documents at any time. It is inappropriate to cite this document as other than work in progress. Other documents may supersede this document.
1.1 Purpose
1.2 Relationship to mobileOK Basic Tests
1.3 Scope
1.4 Audience
2 Sampling
2.1 Evaluation Scope
2.2 Evaluation Structure
3.1 Access
Keys
3.2 Auto Refresh
3.3 Avoid Free Text
3.4 Background Image Readability
3.5 Balance
3.6 Device Capabilities
3.7 Central Meaning
3.8 Suitable, Limited and Clarity
3.9 Content Format Preferred
3.10 Control Labeling and Position
3.11 Cookies
3.12 Error Messages
3.13 Fonts, Style Sheet Use and Style Sheet Support
3.14 Graphics for Spacing
3.15 Link Target ID
3.16 Minimize Keystrokes
3.17 Navbar
3.18 Navigation
3.19 Non-text Alternatives
3.20 Objects or Scripts
3.21 Page Size Usable
3.22 Page Title
3.23 Provide Defaults
3.24 Scrolling
3.25 Structure
3.26 Style Sheets Size
3.27 Tab Order
3.28 Tables Layout
3.29 Tables Support
3.30 URIs
3.31 Use of Color
This document builds on Mobile Web Best Practices 1.0 [MWBP] and helps content providers to create content suitable for delivery to mobile devices. It does this by providing additional evaluations for content and by interpreting and clarifying some Best Practice statements.
mobileOK Basic Tests 1.0 [MOKTESTS] also builds on Mobile Web Best Practices 1.0 [MWBP] and describes machine-executable tests for some of the Best Practice statements. Performing those tests assesses whether a Web site is capable of delivering content to the hypothetical basic mobile device called the "Default Delivery Context" (DDC). It does not assess the capability of a Web site to deliver alternative representations that take advantage of capabilities that exceed those of the DDC when accessed from such devices. This addendum provides an additional set of evaluations, some machine-testable, that go beyond the objectives of mobileOK Basic Tests in that they are not applicable solely to the DDC.
The scope of this document is a commentary on Mobile Web Best Practices 1.0 [MWBP] and mobileOK Basic Tests 1.0 [MOKTESTS].
This document is intended for creators, maintainers and operators of Web sites. Readers of this document are expected to be familiar with the creation of Web sites, and to have a general familiarity with the technologies involved, such as Web servers and HTTP, and with Mobile Web Best Practices and mobileOK Basic Tests.
While most evaluations apply to single pages or delivery units [DIGLOSS], some, such as ACCESS_KEYS, NAVIGATION and URIS, are tested across multiple pages.
Where useful the following structure has been adhered to:
Related mobileOK Basic Test
A link to a related mobileOK Basic Test, where relevant.
Relevant Delivery Context Capabilities
Properties of the delivery context [DIGLOSS] that are referred to by the evaluation.
You will need to use a Device Description Repository (DDR) [DDRSA] to find out which capabilities a given device possesses. See Device Atlas or Morfeo for example.
Interpretation of the Best Practice
Clarification of one or more aspects of the Best Practice to which the evaluation refers.
Evaluation Procedure
How to carry out the evaluation.
Examples
Explanatory material.
To satisfy the Testing Best Practice, the following evaluations should be carried out using a range of real devices as well as, or instead of, emulators. Note that several tests require certain features of the device or browser to be absent or disabled if present.
Relevant Delivery Context Capability
Support for access keys, i.e. key presses that provide a short cut to activation of links in a page.
Interpretation of the Best Practice
Typically a "Web site" has common navigation links that apply to most, or all, pages in the site (a menu bar for example). Such navigation links should be associated with access keys and the keys assigned should be the same on all pages. Other frequently accessed links (such as navigation within a page) may also benefit from being associated with an access key.
There is no standard way for a content provider to indicate the availability of access keys to users of the site.
Common techniques are:
Note that access keys are not supported by some user agents. Representations targeted at such user agents should not contain link decoration.
Evaluation Procedure
Where there are elements that would benefit from quick access, particularly navigation links and form controls:
Related mobileOK Basic Test
Evaluation Procedure
Verify that pages that use automatic refresh (e.g. as highlighted by a mobileOK evaluation) contain a link to a non-refreshing version.
Relevant Delivery Context Capabilities
Evaluation Procedure
Assess whether free-text input fields:
<input type="text">, <input
type="password">, <textarea>
would provide a more usable experience if replaced
by a series of radio buttons, checkboxes or a select menu (where the number of
choices is limited so as to be appropriate to the capabilities and ergonomics
of the device).
Relevant Delivery Context Capabilities
Interpretation of the Best Practice
The use of colored, patterned or photographic background images can make text hard to read both because of reduced device screen contrast and because of the context of use, in bright sunlight for example, reducing the perceived contrast.
Evaluation Procedure
Verify that where background images are used contrast ratio between the overlying text and each color used in the background image is sufficient.
Examples
There are also a variety of color contrast measuring tools available online, such as:
Relevant Delivery Context Capability
Type of scrolling and link navigation
Interpretation of the Best Practice
Different devices provide a number of means of navigating within a page:
If there is a large number of links in the page, users of devices that can only navigate by successive selection of links will find it difficult to scroll the page and use links that are lower down.
Evaluation Procedure
Assess the number of links in the page. If the representation is targeted at devices that do not support navigation independently of the number of links in the page, verify that the page does not use more than 30 links. Other types of device and special purpose pages may warrant a larger number of links.
Relevant Delivery Context Capabilities
For details see the DDC.
Interpretation of the Best Practice
Unlike the DDC, many real devices support Scripts, XML HTTP requests, DOM Capabilities, Cookies and advanced CSS support. Web sites that are designed to support a variety of different representations might target a particular demographic of users with certain classes of device or simply make significant efforts to give users the best possible experience. Browsing a simple, static Web site on an advanced device may be little more rewarding than attempting to browse one that assumes capabilities that are unavailable on the device used, thereby making the content inaccessible.
There is no simple rule or single evaluation that will determine whether a content provider has exploited device capabilities. There will always be a balance between the cost of providing multiple representations versus the benefit of doing so. For this reason, we do not provide a formal evaluation procedure to test this aspect of Best Practice except to say that any evaluation necessarily requires the Web site to be accessed from a variety of different devices with different capabilities. However, we do offer some examples of the kind of informal evaluation that may be possible, depending on what type of content is being offered.
Examples
Interpretation of the Best Practice
When accessing a page on a mobile device, the primary content should be visible. This means that the well-established layout for desktop devices, with navigation along the top and/or side of the page, is usually inappropriate.
Evaluation Procedure
Verify that the main content of the web page is visible without scrolling. This is usually content that is unique to the page and does not repeat across several pages
Interpretation of the Best Practice
Informational content should be provided in a manner suitable for access on mobile, i.e. with an eye to quick assimilation by the user, rather than in a verbose style.
Evaluation Procedure
Examples
Related mobileOK Basic Test
Interpretation of the Best Practice
If a device supports one format better than another, it is preferable to deliver content in the better-supported format if possible.
Evaluation Procedure
It is dangerous to assume that the same layout will
be presented to all users of mobile devices. It is important therefore to
ensure that <input>
elements are correctly labeled so that
the association between <label>
and
<input>
element is retained even if the layout is changed.
For a detailed description of labels and form controls, the reader may also refer to Techniques for WCAG 2.0 [TWCAG], specifically to section H44: Using label elements to associate text labels with form controls from some examples have been.
Evaluation Procedure
<label>
elements, if
user-visible <input>
elements are used.for
attribute of the
<label>
element is present and corresponds to the
id
attribute of a form control.<label>
element contains the form
control for which it is a label. <input>
elements are visually
associated with and without CSS support.Examples
<label>
Your name <input
type="date"/></label>
<label for="firstname">
First
name:</label><input type="text" name="firstname"
id="firstname" />
Relevant Delivery Context Capabilities
Device can accept cookies and the network is transparent to cookies
Evaluation Procedure
Examples
A site that requires a user to login might store that login in a cookie to save the user typing in their credentials each time they visit. If cookies are unavailable, an acceptable degradation would mean that the user was prompted for a login each time they visited that page, but would browse the site without further logins from then on. A poor (and unacceptable) cookie-less degradation would render a site useless by always checking for a non-existent cookie and so not letting the user past the login page.
Evaluation Procedure
Relevant Delivery Context Capabilities
Interpretation of the Best Practices
Although the overwhelming majority of devices have support for CSS, such support is not uniform. CSS is designed to control presentation but it should not be used to convey meaning - that is the job of the markup.
Evaluation Procedure
Verify that structural markup is used such as
<strong>
, <em>
and
<q>
(rather than <b>
or
<i>
which, although HTML tags instead of CSS, are
presentational in nature).
Interpretation of the Best Practice
The correct way to control presentation on a Web page is to use CSS. Using graphics to achieve positioning and spacing effects adds an unnecessary overhead to the page.
Evaluation Procedure
<img>
element.Examples
Evaluation Procedure
hreflang
attribute. type
attribute. charset
attribute. title
attribute (if provided) point to the same resource. (See UWEM 1.0 13.1 for more details)
Examples
Relevant Delivery Context Capabilities
Input mode
Evaluation Procedure
This evaluation is covered by AVOID_FREE_TEXT, URIS, CENTRAL_MEANING and PROVIDE_DEFAULTS. [MWBP]
Relevant Delivery Context Capabilities
Screen width
Evaluation Procedure
Examples
A navigation bar above the main content consisting of only: Home, Up, Down, Site map & Search, or similarly limited options, would be acceptable.
Evaluation Procedure
Examples
Evaluation Procedure
Referring to Web Content Accessibility Guidelines (WCAG) 2.0 [WCAG20]
Non-text elements include 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.
Verify that content meets the mobileOK Basic Test NON_TEXT_ALTERNATIVES [MOKTESTS]
Examples
alt=""
) for
decorative images such as rounded corners in frame. alt
value that is the same as the filename.alt=" "
(space).alt
attribute.Evaluation Procedure
Verify that the document can be viewed or used, with objects or scripts inactive or removed, without any change in the function, or value of the content, of the page.
Examples
From Web Content Accessibility Guidelines 1.0 [WCAG10], Guideline 6, Checkpoint 6.3:
Check that links that trigger scripts work when scripts are turned off or are not supported (e.g., do not use "javascript:" as the link target). If it is not possible to make the page usable without scripts, provide a text equivalent with the NOSCRIPT element, or use a server-side script instead of a client-side script, or provide an alternative accessible page as per checkpoint 11.4. Refer also to guideline 1.
With scripts turned off or when the page is accessed on a device that does not support scripts or objects:
Relevant Delivery Context Capabilities
Evaluation Procedure
Verify that a given web page contains contiguous content, which could technically and semantically be separated into individual pages, and exceeds 3 screen sizes in length without page break.
Examples
Relevant Delivery Context Capabilities
Evaluation Procedure
Examples
Interpretation of the Best Practice
This section only applies to pages that call for user input in a form.
Evaluation Procedure
Submit the form without selecting any item. This will ensure that defaults, such as preselected values, will be used:
<text>
or
<textarea>
elements that include a default value telling
the user what to enter, verify that these values do not have to be manually
deleted in order for them not to be processed as user input.Examples
Relevant Delivery Context Capabilities
Evaluation Procedure
If horizontal scrolling is necessary to view a page, for each element wider than screen size:
Examples
Related mobileOK Basic Test
Interpretation of the Best Practice
The mobileOK test will ensure that markup is valid, however, it does not ensure that markup elements are used correctly, in terms of the semantics of the document, as opposed to being used to achieve presentational effects.
Evaluation Procedure
<h1>, <h2>
etc.) are used to represent
headers and are not used for formatting effects.<list>
element in the markup
to provide that structure.<p>
or
<div>
in the markup rather than creating visual separation using multiple <br>
line breaks.Evaluation Procedure
Evaluation Procedure
Verify that the tab order of links, form controls and objects follows a logical or thematic order.
Examples
Relevant Delivery Context Capabilities
Table support
Evaluation Procedure
Verify that tables used solely for layout cannot be replaced by use of CSS.
Examples
An image or text which is spaced and positioned with the aid of a table is not acceptable.
Relevant Delivery Context Capabilities
Table support
Evaluation Procedure
Verify that the <table>
element
is not found within the source code if the device does not support tables.
Evaluation Procedure
Evaluation Procedure
Examples
<em>
element).See the closely related WCAG Success Criteria for more.