Computing Reviews
Today's Issue Hot Topics Search Browse Recommended My Account Log In
Review Help
Search
Developing with Web standards
Allsopp J., New Riders Publishing, Thousand Oaks, CA, 2009. 432 pp. Type: Book (978-0-321646-92-7)
Date Reviewed: Mar 15 2011

The use of Web standards does not end with the Web site design process; they are also used in the development of the Web site. Readers who are new to Web development will need to roll up their sleeves and work with the realities of Hypertext Markup Language (HTML), cascading style sheets (CSS), and the document object model (DOM).

As Allsopp says, Web development is for users, not browsers. As a result, Web pages do not have to look the same in every browser. A Web developer needs to provide a core set of functionality and information to everyone. Then, the developer needs to work to progressively enhance the Web pages for users with more capable access devices.

The chapters in Part 1 cover the basics of using HTML for markup, using CSS for presentation, using the DOM for behavior, and accessibility. The World Wide Web Consortium’s (W3C’s) Web Content Accessibility Guidelines (WCAG) built accessibility directly into CSS and HTML. The Accessible Rich Internet Applications (ARIA) specification is a set of HTML extensions that allows access to Web applications and pages with dynamic content without requiring a mouse.

Part 2 covers real-world development. One of the first challenges that Web developers must face is dealing with the different levels of support of Web standards in today’s browsers.

The browsers that cause the most problems are the different versions of Internet Explorer (IE). Microsoft claims that IE 8 is fully compliant with CSS2.1, the current standard for controlling Web content presentation. IE 6 and IE 7 lack support for some of the features in CSS2.1. Because many people still use IE 6 and IE 7, Web developers have to find standards-compliant solutions to common bugs in these browsers. One way to target different versions of IE is to use conditional statements. Conditional statements were created by Microsoft and are only processed by IE. All other modern browsers treat them as HTML comments. Allsopp also discusses a JavaScript library created by Dean Edwards that enhances support for CSS2.1 and CSS3 features in IE 6, IE 7, and IE 8. One drawback of using a JavaScript library to provide the missing functionality is that many people have JavaScript disabled in their browsers.

According to the author, writing clean, meaningful markup--for example, plain old semantic HTML (POSH)--has many benefits: it makes the code easier to maintain, it is easier for search engines to index sites, it helps users find content, and it makes Web content more accessible. To write POSH, you need to use valid and semantically suitable HTML, avoid presentational markup, and use meaningful class and ID values where appropriate. Class and ID values should be used to annotate and provide semantic information for an element that is a significant part of the document.

With modern browsers that support CSS2.1, page layouts can be created using semantic HTML and CSS. Gone are the days when tables were used to create a page layout. Float-based layouts are used on many sites today: the page can contain a header section with the company logo and other branding information; the main content is contained within multiple floated columns; and the footer can contain copyright information and/or additional content.

According to Allsopp, there are a couple of CSS topics that have split the development community: CSS resets and CSS frameworks.

Each browser has a default style sheet with its own default settings for the various HTML elements. These different browser style sheets can affect the style sheet(s) created by the developer differently. To avoid this problem, some developers use a reset style sheet to set attributes for elements to a known value. For example, many CSS resets set the margin and padding for elements to zero. Critics of CSS reset style sheets point out that these style sheets can create a great deal of performance overhead.

CSS frameworks allow code to be reused and have built-in cross-browser layout capability. However, they require specific markup that keeps the presentation from being completely separated from the markup. They also tend to use nonsemantic class and ID values.

Part 3 covers HTML5 and CSS3, the future of Web page markup and presentation. Firefox, Safari, and Opera already support some of the new features. The canvas element is an HTML5 feature. Graphics are drawn on the canvas using JavaScript. CSS3 provides new selectors that help reduce the number of elements that need a class or ID value.

I highly recommend this book to practicing Web professionals who want to improve their understanding of both current and emerging best practices and technologies. It’s also great for those new to the Web development field.

Reviewer:  Will Wallace Review #: CR138901 (1111-1142)
Bookmark and Share
  Reviewer Selected
Featured Reviewer
 
 
Standardization (H.5.2 ... )
 
 
HTML (I.7.2 ... )
 
 
World Wide Web (WWW) (H.3.4 ... )
 
Would you recommend this review?
yes
no
Other reviews under "Standardization": Date
Institutionalization of usability: a step-by-step guide
Schaffer E., Addison Wesley Longman Publishing Co, Inc., Redwood City, CA, 2004.  304, Type: Book (9780321179340), Reviews: (1 of 2)
Mar 21 2006
Institutionalization of usability: a step-by-step guide
Schaffer E., Addison Wesley Longman Publishing Co, Inc., Redwood City, CA, 2004.  304, Type: Book (9780321179340), Reviews: (2 of 2)
Jun 7 2006
The anatomy of HCI design patterns
Kruschitz C., Hitz M.  COMPUTATIONWORLD 2009 (Proceedings of the 2009 Computation World: Future Computing, Service Computation, Cognitive, Adaptive, Content, Patterns, Athens, Greece, Nov 15-20, 2009)202-207, 2009. Type: Proceedings
May 5 2011

E-Mail This Printer-Friendly
Send Your Comments
Contact Us
Reproduction in whole or in part without permission is prohibited.   Copyright 1999-2024 ThinkLoud®
Terms of Use
| Privacy Policy