|  |  | Copyright | 
|  |  | Special Thanks to: | 
|  |  | Introduction | 
|  |  |  | What Is this Book About? | 
|  |  |  | Who Is this Book for? | 
|  |  |  | Why Standards (Still) Matter | 
|  |  |  | Values and Units Used in this Book | 
|  |  |  | Reading this Book | 
|  |  |  | What Tools Do You Need for this Book? | 
|  |  |  | Using the Web Site for this Book | 
|  |  | Part 1:             Cascading Style Sheets | 
|  |  |  | Chapter 1.             Understanding CSS | 
|  |  |  | What Is a Style? | 
|  |  |  | What are Cascading Style Sheets? | 
|  |  |  | Versions of CSS | 
|  |  |  | Types of CSS Rules | 
|  |  |  | CSS and Markup Languages | 
|  |  |  | Kinds of Tags | 
|  |  |  | Setting Your DTD | 
|  |  |  | Chapter 2.             CSS Basics | 
|  |  |  | Adding Styles to an HTML Tag: Inline | 
|  |  |  | Adding Styles to a Web Page: Embedded | 
|  |  |  | Adding Styles to a Web Site: External | 
|  |  |  | (Re)Defining HTML Tags | 
|  |  |  | Defining Classes for Any Tag | 
|  |  |  | Defining ID Selectors to Identify an Object | 
|  |  |  | Defining Selectors to Have the Same Styles | 
|  |  |  | Making a Declaration !important | 
|  |  |  | Defining Selectors Based on Context | 
|  |  |  | Defining Selectors Based on Tag Attributes | 
|  |  |  | Working with Pseudo-Classes | 
|  |  |  | Working with Pseudo-Elements | 
|  |  |  | Setting Styles for Print and Other Media | 
|  |  |  | Adding Comments to CSS | 
|  |  |  | Inheriting Properties from a Parent | 
|  |  |  | Determining the Cascade Order | 
|  |  |  | Using Conditional Comments to Fix CSS in Internet Explorer | 
|  |  |  | Style Sheet Strategies | 
|  |  |  | Chapter 3.             Font Properties | 
|  |  |  | Understanding Typography on the Web | 
|  |  |  | Setting the Font-Family | 
|  |  |  | Setting the Font Size | 
|  |  |  | Making Text Italic | 
|  |  |  | Setting Bold, Bolder, Boldest | 
|  |  |  | Creating Small Caps | 
|  |  |  | Setting Multiple Font Values | 
|  |  |  | Chapter 4.             Text Properties | 
|  |  |  | Adjusting Text Spacing | 
|  |  |  | Setting Text Case | 
|  |  |  | Adding a Text Drop Shadow | 
|  |  |  | Aligning Text Horizontally | 
|  |  |  | Aligning Text Vertically | 
|  |  |  | Indenting Paragraphs | 
|  |  |  | Controlling White Space | 
|  |  |  | Decorating Text | 
|  |  |  | Setting Text Direction | 
|  |  |  | Chapter 5.             Color and Background Properties | 
|  |  |  | Choosing Your Color Palette | 
|  |  |  | Setting Text and Foreground Color | 
|  |  |  | Setting a Background Color | 
|  |  |  | Setting a Background Image | 
|  |  |  | Setting Multiple Background Values | 
|  |  |  | Chapter 6.             Box Properties | 
|  |  |  | Understanding an Element's Box | 
|  |  |  | Setting How an Element Is Displayed | 
|  |  |  | Setting an Element's Margins | 
|  |  |  | Setting an Element's Border | 
|  |  |  | Setting an Element's Outline | 
|  |  |  | Setting an Element's Padding | 
|  |  |  | Setting the Width and Height of an Element | 
|  |  |  | Chapter 7.             Visual Formatting Properties | 
|  |  |  | Understanding the Window and Document | 
|  |  |  | Setting the Positioning Type | 
|  |  |  | Setting an Element's Position | 
|  |  |  | Stacking Objects (3D Positioning) | 
|  |  |  | Floating Elements in the Window | 
|  |  |  | Clearing a Floated Element | 
|  |  |  | Chapter 8.             Visual Effect and User Interface Properties | 
|  |  |  | Setting the Visibility of an Element | 
|  |  |  | Setting an Element's Visible Area (Clipping) | 
|  |  |  | Setting Where the Overflow Content Goes | 
|  |  |  | Setting an Element's Opacity | 
|  |  |  | Changing the Mouse Pointer's Appearance | 
|  |  |  | Changing the Scrollbar's Appearance (IE Windows Only) | 
|  |  |  | Chapter 9.             Table Properties | 
|  |  |  | Setting the Table Layout | 
|  |  |  | Setting the Space Between Table Cells | 
|  |  |  | Collapsing Borders Between Table Cells | 
|  |  |  | Dealing with Empty Table Cells | 
|  |  |  | Setting the Position of a Table Caption | 
|  |  |  | Chapter 10.             Generated Content and List Properties | 
|  |  |  | Adding Content Using CSS | 
|  |  |  | Teaching the Browser to Count | 
|  |  |  | Specifying the Quote Style | 
|  |  |  | Setting the Bullet Style | 
|  |  |  | Creating Your Own Bullets | 
|  |  |  | Setting Bullet Positions | 
|  |  |  | Setting Multiple List Styles | 
|  |  |  | Displaying an Element as a List | 
|  |  | Part 2:             Dynamic HTML | 
|  |  |  | Chapter 11.             Understanding DHTML | 
|  |  |  | What Is Dynamic HTML? | 
|  |  |  | The History of DHTML | 
|  |  |  | Why Should I Use DHTML? | 
|  |  |  | Flash vs. DHTML | 
|  |  |  | Should I Use DHTML or Flash? | 
|  |  |  | Chapter 12.             DHTML Basics | 
|  |  |  | DOM: The Road Map to Your Web Page | 
|  |  |  | Setting Up an Object | 
|  |  |  | Understanding Events | 
|  |  |  | Using Event Handlers | 
|  |  |  | Getting an Element | 
|  |  |  | Passing Events to a Function | 
|  |  |  | Binding Events to Objects | 
|  |  |  | Using Feature Sensing | 
|  |  |  | Chapter 13.             Learning About the Environment | 
|  |  |  | Detecting the Operating System | 
|  |  |  | Detecting the Browser's Name | 
|  |  |  | Finding the Page's Location and Title | 
|  |  |  | Determining the Number of Colors (Bit Depth) | 
|  |  |  | Determining the Screen Dimensions | 
|  |  |  | Determining the Browser Window's Dimensions | 
|  |  |  | Determining the Page's Visible Dimensions | 
|  |  |  | Chapter 14.             Learning About an Object | 
|  |  |  | Detecting Which Object Was Clicked | 
|  |  |  | Determining an Object's Properties | 
|  |  |  | Detecting an Object's Position | 
|  |  |  | Finding an Object's Style Property Values | 
|  |  |  | Finding an Object's 3D Position | 
|  |  |  | Finding an Object's Visible Area | 
|  |  |  | Chapter 15.             Learning About an Event | 
|  |  |  | Detecting Which Event Type Fired | 
|  |  |  | Detecting Which Key Was Pressed | 
|  |  |  | Detecting Which Modifier Key Was Pressed | 
|  |  |  | Detecting Which Mouse Button Was Clicked | 
|  |  |  | Detecting Where the Mouse Was Clicked | 
|  |  |  | Chapter 16.             Basic Dynamic Techniques | 
|  |  |  | Changing CSS Property Values | 
|  |  |  | Making Objects Appear and Disappear | 
|  |  |  | Moving Objects From Point to Point | 
|  |  |  | Moving Objects by a Certain Amount | 
|  |  |  | Moving Objects in 3D | 
|  |  |  | Changing an Object's Visible Area | 
|  |  |  | Changing an Object's Content | 
|  |  |  | Controlling Objects Between Frames | 
|  |  |  | Chapter 17.             Advanced Dynamic Techniques | 
|  |  |  | Making a Function Run Again | 
|  |  |  | Animating an Object | 
|  |  |  | Using Input From a Form Field | 
|  |  |  | Following the Mouse Pointer | 
|  |  |  | Making an Object Draggable | 
|  |  |  | Opening a New Browser Window | 
|  |  |  | Moving the Browser Window | 
|  |  |  | Changing the Browser Window's Size | 
|  |  |  | Scrolling the Browser Window | 
|  |  |  | Chapter 18.             Dynamic CSS | 
|  |  |  | Finding a Style Property's Value | 
|  |  |  | Adding or Changing a Style Declaration | 
|  |  |  | Changing Classes | 
|  |  |  | Disabling or Enabling a Style Sheet | 
|  |  | Part 3:             Ajax | 
|  |  |  | Chapter 19.             Understanding Ajax | 
|  |  |  | What Is Ajax? | 
|  |  |  | How Ajax Works | 
|  |  |  | Why Should I Use Ajax? | 
|  |  |  | What Is Web 2.0? | 
|  |  |  | Chapter 20.             Ajax Basics | 
|  |  |  | Understanding Server Requests | 
|  |  |  | Fetching Data | 
|  |  |  | Fetching a Response | 
|  |  |  | Filtering the Data | 
|  |  |  | Utilizing the AjaxBasics.js Library | 
|  |  | Part 4:             Using CSS, DHTML, and Ajax | 
|  |  |  | Chapter 21.             Layout | 
|  |  |  | Structuring Your Page | 
|  |  |  | Creating Multicolumn Layouts | 
|  |  |  | Styling Headers | 
|  |  |  | Styling Links and Navigation | 
|  |  |  | Styling Copy and Content | 
|  |  |  | Styling Tables | 
|  |  |  | Styling Forms | 
|  |  |  | Styling Frames | 
|  |  |  | Chapter 22.             Content | 
|  |  |  | Importing External Content | 
|  |  |  | Dynamically Controlling Form Data | 
|  |  |  | Adding Pop-Up Layers | 
|  |  |  | Dynamic Type Ahead | 
|  |  |  | Chapter 23.             Navigation | 
|  |  |  | Creating Navigation Buttons with CSS Sprites | 
|  |  |  | Creating Drop-Down Menus | 
|  |  |  | Creating Collapsible Menus | 
|  |  |  | Creating a Tab Menu | 
|  |  |  | Creating Sliding Menus | 
|  |  |  | Creating a Remote Control | 
|  |  |  | Chapter 24.             Controls | 
|  |  |  | Providing Page Controls | 
|  |  |  | Creating Scroll Bars for a Layer | 
|  |  |  | Adding Style Controls | 
|  |  |  | Putting Together a Photo Album | 
|  |  | Index |