| | Intermediate Perl |
| | Foreword |
| | Contributors |
| | Technical Reviewers |
| | | Lead Technical Editors |
| | | Technical Reviewers |
| | Preface |
| | | What's in the Book |
| | | Using Code Examples |
| | | Conventions Used in This Book |
| | | CSS Property Conventions |
| | | How to Contact Us |
| | | Safari® Enabled |
| | | Acknowledgments |
| | Part I: The Web Environment |
| | | Chapter 1. Web Standards |
| | | Section 1.1. What Are Standards? |
| | | Section 1.2. Current Web Standards |
| | | Section 1.3. Standards-Driven Design |
| | | Section 1.4. For Further Reading |
| | | Chapter 2. Designing for a Variety of Browsers |
| | | Section 2.1. Browser History |
| | | Section 2.2. Browser Roll-Call |
| | | Section 2.3. Gathering Usage Statistics |
| | | Section 2.4. Learning from Browser Statistics |
| | | Section 2.5. Dealing with Browser Differences |
| | | Section 2.6. Know Your Audience |
| | | Section 2.7. Test! |
| | | Chapter 3. Designing for a Variety of Displays |
| | | Section 3.1. Designing for Unknown Monitor Resolutions |
| | | Section 3.2. Fixed Versus Liquid Web Pages |
| | | Section 3.3. Designing "Above the Fold" |
| | | Section 3.4. Mobile Devices |
| | | Chapter 4. A Beginner's Guide to the Server |
| | | Section 4.1. Servers 101 |
| | | Section 4.2. Unix Directory Structures |
| | | Section 4.3. File Naming Conventions |
| | | Section 4.4. Uploading Documents (FTP) |
| | | Section 4.5. File (MIME) Types |
| | | Chapter 5. Accessibility |
| | | Section 5.1. Types of Disabilities |
| | | Section 5.2. Overview of Assistive Technology |
| | | Section 5.3. Who Is Responsible for Accessibility? |
| | | Section 5.4. Web Content Accessibility Guidelines |
| | | Section 5.5. Web Content Accessibility Guidelines 2.0 (WCAG 2.0) |
| | | Section 5.6. Standards Variations and Section 508 |
| | | Section 5.7. Web Accessibility Techniques |
| | | Section 5.8. Testing for Accessibility |
| | | Chapter 6. Internationalization |
| | | Section 6.1. Character Sets and Encoding |
| | | Section 6.2. Character References |
| | | Section 6.3. Language Features |
| | | Section 6.4. Style Sheets Language Features |
| | | Section 6.5. For Further Reading |
| | Part II: The Structural Layer: XML and (X)HTML |
| | | Chapter 7. Introduction to XML |
| | | Section 7.1. XML Basics |
| | | Section 7.2. How It Works |
| | | Section 7.3. XML Document Syntax |
| | | Section 7.4. Well-Formed XML |
| | | Section 7.5. Document Type Definition (DTD) |
| | | Section 7.6. XML Namespaces |
| | | Section 7.7. XML on the Web |
| | | Section 7.8. Web-Related XML Applications |
| | | Section 7.9. Where to Learn More |
| | | Chapter 8. HTML and XHTML Overview |
| | | Section 8.1. The Role of HTML |
| | | Section 8.2. Markup Basics |
| | | Section 8.3. Introduction to XHTML |
| | | Section 8.4. Which Standard Is Right for You? |
| | | Section 8.5. Well-Formed XHTML |
| | | Section 8.6. Web Authoring Tools |
| | | Section 8.7. Good Authoring Practices |
| | | Chapter 9. Document Structure |
| | | Section 9.1. Minimal Document Structure |
| | | Section 9.2. Document Type Declaration |
| | | Section 9.3. The Root Element |
| | | Section 9.4. The Document Header |
| | | Section 9.5. The Document Body |
| | | Chapter 10. Text Elements |
| | | Section 10.1. Choosing Text Elements |
| | | Section 10.2. The Building Blocks of Content |
| | | Section 10.3. Inline Elements |
| | | Section 10.4. Deleted and Inserted Text |
| | | Section 10.5. Generic Elements (div and span) |
| | | Section 10.6. Lists |
| | | Section 10.7. Presentational Elements |
| | | Section 10.8. Character Entity References |
| | | Chapter 11. Creating Links |
| | | Section 11.1. Simple Hypertext Links |
| | | Section 11.2. Linking Within a Document |
| | | Section 11.3. Targeting Windows |
| | | Section 11.4. Alternative Protocols |
| | | Section 11.5. Linking Documents with link |
| | | Chapter 12. Images and Objects |
| | | Section 12.1. Inline Images |
| | | Section 12.2. Image Maps |
| | | Section 12.3. Embedded Media |
| | | Section 12.4. Java Applets |
| | | Section 12.5. Inline (Floating) Frames |
| | | Chapter 13. Tables |
| | | Section 13.1. Table Uses |
| | | Section 13.2. Basic Table Structure |
| | | Section 13.3. Row Groups |
| | | Section 13.4. Columns and Column Groups |
| | | Section 13.5. Table Presentation |
| | | Section 13.6. Accessible Tables |
| | | Section 13.7. Responsible Layout Tables |
| | | Chapter 14. Frames |
| | | Section 14.1. Introduction to Frames |
| | | Section 14.2. Basic Frameset Structure |
| | | Section 14.3. Frame Function and Appearance |
| | | Section 14.4. Targeting Frames |
| | | Section 14.5. Frame Design Tips and Tricks |
| | | Chapter 15. Forms |
| | | Section 15.1. The Basic Form Element |
| | | Section 15.2. Form Controls |
| | | Section 15.3. Accessibility Features |
| | | Section 15.4. disabled and readonly |
| | | Section 15.5. Affecting Form Appearance |
| | Part III: The Presentation Layer: Cascading Style Sheets |
| | | Chapter 16. Cascading Style Sheets Fundamentals |
| | | Section 16.1. CSS in a Nutshell |
| | | Section 16.2. The Benefits of CSS |
| | | Section 16.3. How CSS Works |
| | | Section 16.4. Rule Syntax |
| | | Section 16.5. Adding Styles to a Document |
| | | Section 16.6. Key Concepts |
| | | Section 16.7. Specifying Values |
| | | Section 16.8. Browser Support |
| | | Section 16.9. For Further Reading |
| | | Chapter 17. Selectors |
| | | Section 17.1. Type (Element) Selector |
| | | Section 17.2. Contextual Selectors |
| | | Section 17.3. Class and ID Selectors |
| | | Section 17.4. Attribute Selectors |
| | | Section 17.5. Pseudoselectors |
| | | Chapter 18. Font and Text Properties |
| | | Section 18.1. Typography on the Web |
| | | Section 18.2. Font Family |
| | | Section 18.3. Font Size |
| | | Section 18.4. Other Font Settings |
| | | Section 18.5. Text Transformation (Capitalization) |
| | | Section 18.6. Text Decoration |
| | | Section 18.7. Line Height |
| | | Section 18.8. Text Alignment Properties |
| | | Section 18.9. Text Spacing |
| | | Section 18.10. Text Direction |
| | | Chapter 19. Basic Box Properties |
| | | Section 19.1. The Box Model, Revisited |
| | | Section 19.2. Width and Height |
| | | Section 19.3. Margins |
| | | Section 19.4. Borders |
| | | Section 19.5. Padding |
| | | Chapter 20. Color and Backgrounds |
| | | Section 20.1. Foreground Color |
| | | Section 20.2. Background Color |
| | | Section 20.3. Background Images |
| | | Chapter 21. Floating and Positioning |
| | | Section 21.1. Normal Flow |
| | | Section 21.2. Floating |
| | | Section 21.3. Positioning Basics |
| | | Section 21.4. Absolute Positioning |
| | | Section 21.5. Fixed Positioning |
| | | Section 21.6. Relative Positioning |
| | | Chapter 22. CSS for Tables |
| | | Section 22.1. The Essence of Tables |
| | | Section 22.2. Styling Tables |
| | | Section 22.3. Borders |
| | | Section 22.4. Table Layout (Width and Height) |
| | | Section 22.5. Table Display Values |
| | | Chapter 23. Lists and Generated Content |
| | | Section 23.1. CSS for Lists |
| | | Section 23.2. Generated Content |
| | | Chapter 24. CSS Techniques |
| | | Section 24.1. Centering a Page |
| | | Section 24.2. Two-Column Layouts |
| | | Section 24.3. Three-Column Layouts |
| | | Section 24.4. Boxes with Rounded Corners |
| | | Section 24.5. Image Replacement |
| | | Section 24.6. CSS Rollovers |
| | | Section 24.7. List-Based Navigation Bars |
| | | Section 24.8. CSS Techniques Resources |
| | | Chapter 25. Managing Browser Bugs: Workarounds, Hacks, and Filters |
| | | Section 25.1. Working with "Troubled" Browsers |
| | | Section 25.2. The Browsers |
| | | Section 25.3. Hack and Workaround Management 101 |
| | Part IV: The Behavioral Layer: JavaScript and the DOM |
| | | Chapter 26. Introduction to JavaScript |
| | | Section 26.1. A Little Background |
| | | Section 26.2. Using JavaScript |
| | | Section 26.3. JavaScript Syntax |
| | | Section 26.4. Event Handling |
| | | Section 26.5. The Browser Object |
| | | Section 26.6. Where to Learn More |
| | | Chapter 27. DOM Scripting |
| | | Section 27.1. A Sordid Past |
| | | Section 27.2. Out of the Dark Ages |
| | | Section 27.3. The DOM |
| | | Section 27.4. Manipulating Documents with the DOM |
| | | Section 27.5. Working with Style |
| | | Section 27.6. DOM Scripting in Action |
| | | Section 27.7. Supplement: Getting Started with Ajax |
| | Part V: Web Graphics |
| | | Chapter 28. Web Graphics Overview |
| | | Section 28.1. Web Graphic File Formats |
| | | Section 28.2. Image Resolution |
| | | Section 28.3. Color on the Web |
| | | Section 28.4. Web Graphics Production Tips |
| | | Chapter 29. GIF Format |
| | | Section 29.1. 8-Bit Indexed Color |
| | | Section 29.2. LZW Compression |
| | | Section 29.3. Interlacing |
| | | Section 29.4. Transparency |
| | | Section 29.5. Minimizing GIF File Sizes |
| | | Section 29.6. Designing GIFs with the Web Palette |
| | | Chapter 30. JPEG Format |
| | | Section 30.1. 24-Bit Color |
| | | Section 30.2. JPEG Compression |
| | | Section 30.3. Progressive JPEGs |
| | | Section 30.4. Creating JPEGs |
| | | Section 30.5. Minimizing JPEG File Size |
| | | Chapter 31. PNG Format |
| | | Section 31.1. When to Use PNGs |
| | | Section 31.2. PNG Features |
| | | Section 31.3. Platform/Browser Support |
| | | Section 31.4. Creating PNG Files |
| | | Section 31.5. PNG Optimization Strategies |
| | | Section 31.6. For Further Reading |
| | | Chapter 32. Animated GIFs |
| | | Section 32.1. How They Work |
| | | Section 32.2. Using Animated GIFs |
| | | Section 32.3. Tools |
| | | Section 32.4. Creating Animated GIFs |
| | | Section 32.5. Optimizing Animated GIFs |
| | Part VI: Media |
| | | Chapter 33. Audio on the Web |
| | | Section 33.1. Basic Digital Audio Concepts |
| | | Section 33.2. Using Existing Audio |
| | | Section 33.3. Preparing Your Own Audio |
| | | Section 33.4. Streaming Audio |
| | | Section 33.5. Audio Formats |
| | | Section 33.6. Choosing an Audio Format |
| | | Section 33.7. Adding Audio to a Web Page |
| | | Chapter 34. Video on the Web |
| | | Section 34.1. Basic Digital Video Concepts |
| | | Section 34.2. Compression |
| | | Section 34.3. Video File Formats |
| | | Section 34.4. Adding Video to an HTML Document |
| | | Chapter 35. The Flash Platform |
| | | Section 35.1. Using Flash on Web Pages |
| | | Section 35.2. Creating Flash Movies |
| | | Section 35.3. ActionScript |
| | | Section 35.4. Adding Flash to a Web Page |
| | | Section 35.5. Integrating Flash with Other Technologies |
| | | Section 35.6. The Flash Player |
| | | Section 35.7. Flash Resources |
| | | Chapter 36. Printing from the Web |
| | | Section 36.1. Browser Print Mechanisms |
| | | Section 36.2. Cascading Style Sheets for Print |
| | | Section 36.3. Portable Document Format (PDF) |
| | | Section 36.4. Flash Printing |
| | Part VII: Appendixes |
| | | Appendix A. HTML Elements and Attributes |
| | | Section A.1. Common Attributes and Events |
| | | Appendix B. CSS 2.1 Properties |
| | | Section B.1. Visual Media |
| | | Section B.2. Paged Media |
| | | Section B.3. Aural Styles |
| | | Appendix C. Character Entities |
| | | Section C.1. ASCII Character Set |
| | | Section C.2. Nonstandard Entities (‚-Ÿ) |
| | | Section C.3. Latin-1 (ISO-8859-1) |
| | | Section C.4. Latin Extended-A |
| | | Section C.5. Latin Extended-B |
| | | Section C.6. Spacing Modifier Letters |
| | | Section C.7. Greek |
| | | Section C.8. General Punctuation |
| | | Section C.9. Letter-like Symbols |
| | | Section C.10. Arrows |
| | | Section C.11. Mathematical Operators |
| | | Section C.12. Miscellaneous Technical Symbols |
| | | Section C.13. Geometric Shapes |
| | | Section C.14. Miscellaneous Symbols |
| | | Appendix D. Specifying Color |
| | | Section D.1. Specifying Color by RGB Values |
| | | Section D.2. Specifying Colors by Name |
| | | Appendix E. Microformats: Extending (X)HTML |
| | | Section E.1. Extending HTML 4 and XHTML |
| | | Section E.2. Semantic Class Names |
| | | Section E.3. Link Relationships |
| | | Section E.4. More Microformats |
| | Glossary |
| | About the Author |
| | Colophon |
| | Index |