Table of Contents

Part I Real-Life CSS

Chapter 1: Designing a Page with CSS 2

Use CSS style rules to transform the appearance of a basic HTML page. This project shows you how to create an About Us page for a fictional jazz and swing band. If you have never tried to use CSS on your pages before, this is the ideal project to start you on your way.

Chapter 2: Incorporating CSS in a Table-Based Layout

Like it or not, not all computer users upgrade their browsers to new versions immediately. To accommodate people who are still using version 4 browsers, it's still safer to use tables for laying out pages. Additionally, web designers are far more familiar with using tables for page creation. This project shows you how to incorporate CSS into a typical table-based layout using the best features of each method.

Chapter 3: Creating a Simple Layout with CSS-P

The great promise of CSS is the ability to position elements around the screen using style rules (CSS-P). Since the introduction of version 5 and later browsers, it has finally become possible to use more CSS-P for laying out a web page. This project shows the possibilities of using CSS-P for page layouts right now, as well as some of the drawbacks.

Chapter 4: Creating a Complex Layout with CSS-P

Even in the latest CSS-capable browsers, there are bugs and pitfalls to work around. In this project, you'll learn how to avoid the pitfalls while creating a complex CSS-P layout with nested elements.

Part II JavaScript Level 1: Basic JavaScript

Chapter 5: JavaScript Rollovers

Image rollovers are one of the most common uses for JavaScript. It's also one of the few JavaScript methods that can be safely used in older JavaScript-capable browsers. This project examines how IMG SRC swapping works when used in conjunction with basic JavaScript events.

Chapter 6: Dynamic Frames

Once you understand how the img object is addressed on a basic web page, the next step in conquering the basic Document Object Model (DOM) is to understand how frames can be addressed and manipulated.

Chapter 7: Working with Browser Windows

The third basic object after the img object and frames that we will learn how to address and manipulate with JavaScript is the browser window.

Part III JavaScript Level 2: Dynamic HTML

Chapter 8: Browser Detection and Displaying Elements Dynamically

In this project we delve into the different Document Object Models (DOMs) for version 4 and later browsers, as we create a page that displays a daily horoscope. A solid understanding of the various browser-specific DOMs is crucial when creating dynamic web pages.

Chapter 9: Positioning Elements Dynamically

In this project, you'll use JavaScript to position elements on a page. With this method it's possible to create a precise layout that fits the browser window perfectly.

Chapter 10: Drop-Down Hierarchical Menus

In this project we'll create a page with a drop-down navigation menu. The page uses a familiar table-based layout together with dynamically scripted elements.

Chapter 11: Scrolling Frameless Windows

In this project we'll create another popular page elementÑa scrolling inset "frame" using a combination of CSS and JavaScript. Along the way, we'll learn about constructing objects with JavaScript.

Part IV JavaScript Level 3: The Latest DOM Methods

Chapter 12: Transitional CSS and JavaScript Strategies

Creating web sites that take advantage of the CSS and JavaScript capabilities of modern browsers, while still accommodating older browsers, is a headache faced by every site creator. In this project we'll explore some ways of dealing with this issue.

Chapter 13 A Collapsing/Expanding Menu and Enhanced Table

This project shows you how to manipulate styles to create a collapsing/expanding menu and a user-friendly tabular display using W3C standards-compliant XHTML markup, CSS, the DOM, and JavaScript.

Chapter 14 Dynamically Updated Pages

One of the most powerful features available in browsers that support the W3C DOM is the ability to create and delete elements dynamically. In this project, you'll use this capability to generate and update page content on the fly on multiple pages from a single source.

What's on the CD