You are previewing Creating Web Sites Bible, Third Edition.
O'Reilly logo
Creating Web Sites Bible, Third Edition

Book Description

  • Updated for the most recent tools, techniques, and standards for creating cutting-edge Web sites for businesses or personal use, this book is one-stop shopping for HTML, JavaScript, CSS, tables, forms, Flash, and more

  • Brand-new chapters cover Ajax, Adobe CS3 tools, RSS, and blogging tools

  • Hands-on guidance and expert advice dive into such topics as creating and editing images and graphics, adding multimedia elements (e.g., Flash animations, audio, and video), creating stores for Yahoo! and Amazon.com, designing auction pages for eBay, and building blogs

Table of Contents

  1. Copyright
  2. About the Authors
  3. Credits
  4. Acknowledgments
  5. Introduction
    1. Who Should Read This Book
    2. How This Book Is Organized
      1. Part I: Laying the Foundation
      2. Part II: The Basics
      3. Part III: Advanced Design Features
      4. Part IV: Making It Look Professional
      5. Part V: Transitioning to the Future: XHTML, XML, and Ajax
      6. Part VII: Images on the Web
      7. Part VII: Cashing in on eCommerce
      8. Part II: Keeping Your Site Fresh
    3. Conventions and Features
    4. What's on the Companion Web Site/CD
    5. Minimum Requirements
    6. Where to Go from Here
  6. I. Laying the Foundation
    1. 1. The Basics of Building Web Pages and Sites
      1. 1.1. Web Browsers
      2. 1.2. Web Pages
      3. 1.3. Web Sites
      4. 1.4. Analyzing Web Site Types
        1. 1.4.1. Personal home pages
        2. 1.4.2. Informational sites
        3. 1.4.3. Organizational sites
        4. 1.4.4. Political Sites
        5. 1.4.5. Commercial sites
      5. 1.5. Understanding Internet Demographics
        1. 1.5.1. Finding good information
        2. 1.5.2. Surveying site visitors
      6. 1.6. Determining Your Approach
        1. 1.6.1. Focusing on goals
        2. 1.6.2. Deciding on complexity levels
          1. 1.6.2.1. Living and dying on the edge
          2. 1.6.2.2. Staying deliberately obsolete
        3. 1.6.3. Establishing a budget
      7. 1.7. Dos and Don'ts of Web Site Development
        1. 1.7.1. Tips for good Web sites
        2. 1.7.2. Top ways to have bad sites
      8. 1.8. Summary
    2. 2. Popular Web Design Tools
      1. 2.1. Adobe Creative Suite 3 (CS3)
        1. 2.1.1. Photoshop
        2. 2.1.2. Dreamweaver
        3. 2.1.3. Illustrator
        4. 2.1.4. Flash Professional
        5. 2.1.5. Photoshop Extended
        6. 2.1.6. Fireworks
        7. 2.1.7. Acrobat
        8. 2.1.8. Contribute
      2. 2.2. Freeware and Shareware
        1. 2.2.1. Image-editing programs
        2. 2.2.2. Image-creation programs
        3. 2.2.3. Other graphics-related applications
      3. 2.3. Designing for the Mobile Web
        1. 2.3.1. Background for Mobile Web design
        2. 2.3.2. Current difficulties with Web usage on mobile devices
        3. 2.3.3. Future of the Mobile Web
      4. 2.4. Summary
  7. II. The Basics
    1. 3. History and Development of the Internet and HTML
      1. 3.1. Origins of the Internet
        1. 3.1.1. Emergence of packet switching and ARPANET
        2. 3.1.2. Evolution of Ethernet
        3. 3.1.3. Public emergence of the Internet
        4. 3.1.4. Emergence of hypertext
      2. 3.2. Development and Evolution of HTML
        1. 3.2.1. Hypercard
        2. 3.2.2. HTML
        3. 3.2.3. Future trends in HTML
        4. 3.2.4. The Arrival of XHTML
      3. 3.3. Summary
    2. 4. HTML Building Blocks
      1. 4.1. Creating a Web Page Using HTML
      2. 4.2. Head and Body Sections
        1. 4.2.1. <head> section
          1. 4.2.1.1. Comments
          2. 4.2.1.2. Titles, Metatags, and Functions
        2. 4.2.2. <body> section
      3. 4.3. Block-Level Elements
        1. 4.3.1. Head
        2. 4.3.2. Title
        3. 4.3.3. Body
        4. 4.3.4. Inline elements
        5. 4.3.5. Paragraphs
        6. 4.3.6. Unordered lists
        7. 4.3.7. Ordered lists
        8. 4.3.8. Definition lists
        9. 4.3.9. Heading tags
      4. 4.4. HTML Tools
        1. 4.4.1. Link checkers
        2. 4.4.2. Code validators
        3. 4.4.3. Compatibility testers
        4. 4.4.4. Authoring tools
          1. 4.4.4.1. Text editors
          2. 4.4.4.2. HTML editors
          3. 4.4.4.3. WYSIWYG programs
          4. 4.4.4.4. Word processors
          5. 4.4.4.5. Exceptions to the rule
      5. 4.5. Designing a Simple Web Page
      6. 4.6. Logical and Physical Elements
        1. 4.6.1. Physical tags
        2. 4.6.2. Logical tags
        3. 4.6.3. Incorporating logical and physical tags
      7. 4.7. Special Characters and Encoding Schemes: ASCII and Unicode
      8. 4.8. Element Quick Reference
      9. 4.9. Summary
    3. 5. Links, Hotspots, and Web Site Navigation
      1. 5.1. Example Web Site
      2. 5.2. Internal Links with Anchor Tags
      3. 5.3. Developing a Sample Web Site
        1. 5.3.1. Navigating within your Web site
        2. 5.3.2. Links between pages of a site
        3. 5.3.3. Creating Web Pages for Family and Sports
        4. 5.3.4. Creating the Family page
        5. 5.3.5. Creating the Sports and Schools sections
      4. 5.4. Absolute and Relative Paths
        1. 5.4.1. Locking relative URLs with the BASE element
      5. 5.5. Previous and Next Links
      6. 5.6. External Links
        1. 5.6.1. Getting hypertext references right
        2. 5.6.2. Creating internal links with local anchors
        3. 5.6.3. Sending e-mail with mailto links
        4. 5.6.4. Other types of links
        5. 5.6.5. Linking via images
        6. 5.6.6. Linking via Image Maps
      7. 5.7. Storyboarding
      8. 5.8. Links Quick Reference
      9. 5.9. Summary
    4. 6. The Elements of Color and Images In Web Pages
      1. 6.1. Setting Color Attributes
        1. 6.1.1. Changing color settings
        2. 6.1.2. Setting background colors
        3. 6.1.3. Specifying foreground colors
        4. 6.1.4. Changing link colors for your browser
      2. 6.2. Using the Three C's: Complement, Contrast, and Coordination
        1. 6.2.1. Choosing complementary colors
        2. 6.2.2. Ensuring contrast and visibility
        3. 6.2.3. Coordinating color schemes
        4. 6.2.4. Understanding color warmth
      3. 6.3. Using Color Names and Hex Numbers
        1. 6.3.1. Decoding RGB triplets
        2. 6.3.2. Facing limitations of named colors
        3. 6.3.3. Using color pickers
      4. 6.4. Popular Graphics Formats
        1. 6.4.1. Graphics Interchange Format (GIF)
          1. 6.4.1.1. Transparent GIFs
          2. 6.4.1.2. Animated GIFs
        2. 6.4.2. Joint Photographic Experts Group (JPEG, or JPG)
        3. 6.4.3. Portable Network Graphics (PNG)
      5. 6.5. Setting Background and Foreground Color
        1. 6.5.1. Coding for background
        2. 6.5.2. Coding for foreground (text)
      6. 6.6. Adding Background Images
        1. 6.6.1. Calculating sizes for tiling
        2. 6.6.2. Dealing with "sidebar" backgrounds
        3. 6.6.3. Checking seamlessness
        4. 6.6.4. Avoiding busy backgrounds
        5. 6.6.5. Choosing color and contrast
      7. 6.7. Adding Images
        1. 6.7.1. Coding for images using some CSS styles
      8. 6.8. Aligning Images
        1. 6.8.1. Aligning multiple images
        2. 6.8.2. Setting margins
        3. 6.8.3. Setting borders
      9. 6.9. Setting Image Size
        1. 6.9.1. Using the height and width attributes
      10. 6.10. Solving Image Problems
        1. 6.10.1. Using thumbnail images to speed up page downloads
        2. 6.10.2. Embedding special fonts
      11. 6.11. Quick Reference
      12. 6.12. Summary
    5. 7. Text Formatting
      1. 7.1. Fonts
      2. 7.2. Customizing Text with Character Styles
        1. 7.2.1. Italicizing text
        2. 7.2.2. Bolding text
        3. 7.2.3. Preformatting text
        4. 7.2.4. Adding superscripts and subscripts using HTML and CSS
        5. 7.2.5. <span> and <div>
      3. 7.3. Using the FONT and BASEFONT Elements
        1. 7.3.1. Specifying a size
        2. 7.3.2. Font size options and inline styles
        3. 7.3.3. Scalability and absolute measurement
        4. 7.3.4. Using relative size in standard HTML coding
        5. 7.3.5. Comparing font size with heading size
        6. 7.3.6. Overriding default font faces
        7. 7.3.7. Coloring text
        8. 7.3.8. Using fonts with style
      4. 7.4. Aligning and Indenting Text
        1. 7.4.1. Dealing with deprecation
        2. 7.4.2. Indenting with BLOCKQUOTE
      5. 7.5. Choosing Character Sets
      6. 7.6. Using Special Characters and Entities
      7. 7.7. Summary
  8. III. Advanced Design Features
    1. 8. Harnessing the Power of Tables
      1. 8.1. Adding Tables and Setting Table Size
      2. 8.2. Managing Borders
        1. 8.2.1. Frames and rules
      3. 8.3. Using Padding and Spacing
      4. 8.4. Aligning Tables and Cell Contents
        1. 8.4.1. Setting horizontal alignment
          1. 8.4.1.1. Using tables with forms
          2. 8.4.1.2. Using tables with sidebar images
        2. 8.4.2. Setting vertical alignment
        3. 8.4.3. Preventing word wrap
      5. 8.5. Spanning Rows and Columns
      6. 8.6. Working with Images and Color
        1. 8.6.1. Specifying background images
        2. 8.6.2. Specifying background colors
      7. 8.7. Tables Quick Reference
      8. 8.8. Summary
    2. 9. Organizing Your Site with Frames
      1. 9.1. Designing Frame Layouts
        1. 9.1.1. Analyzing functional needs
        2. 9.1.2. Creating navigation layouts
        3. 9.1.3. Setting up action or result layouts
      2. 9.2. Creating Framesets
        1. 9.2.1. Setting columns and rows
        2. 9.2.2. Mixing pixel, percentage, and relative sizing
        3. 9.2.3. Preventing resizing
        4. 9.2.4. Specifying frame names and contents
        5. 9.2.5. Nesting framesets
        6. 9.2.6. Adding NOFRAMES content
      3. 9.3. Setting Targets for Your Links
        1. 9.3.1. Targeting custom-named frames
        2. 9.3.2. Base target element
        3. 9.3.3. Expandable and collapsible list
        4. 9.3.4. Using reserved frame names
      4. 9.4. Customizing Frame Borders and Margins
        1. 9.4.1. Setting border width
        2. 9.4.2. Handling border colors
        3. 9.4.3. Setting margin width
      5. 9.5. Setting Scroll Bar Options
        1. 9.5.1. Alternatives to framesets and frames
          1. 9.5.1.1. Iframes
          2. 9.5.1.2. Server-side includes
          3. 9.5.1.3. XML and XSL
      6. 9.6. Avoiding Frame Problems
        1. 9.6.1. Making sure that you have enough frames
        2. 9.6.2. Adding foreign elements
        3. 9.6.3. What size is the user's screen?
        4. 9.6.4. Using too many frames
        5. 9.6.5. Providing backup navigation
      7. 9.7. Frames Quick Reference
      8. 9.8. Summary
    3. 10. Getting Input with Forms
      1. 10.1. Adding Forms
        1. 10.1.1. The INPUT element
        2. 10.1.2. Naming elements
      2. 10.2. Getting Short Data with Text Boxes
        1. 10.2.1. Setting box size
        2. 10.2.2. Defining the maximum length of input
        3. 10.2.3. Prefilling a text box
        4. 10.2.4. Locking content with readonly and disabled
      3. 10.3. Gathering Information with Text Areas
        1. 10.3.1. Sizing text areas
        2. 10.3.2. Setting wordwrap
        3. 10.3.3. Setting default contents
      4. 10.4. Making Choices with Check Boxes and Option Buttons
        1. 10.4.1. Adding check boxes
        2. 10.4.2. Grouping option buttons
        3. 10.4.3. Setting a default choice
      5. 10.5. Saving Space with the SELECT and OPTION Elements
        1. 10.5.1. Specifying values
        2. 10.5.2. Setting menu types
        3. 10.5.3. Allowing multiple selections
        4. 10.5.4. Setting a default choice
      6. 10.6. Using INPUT Buttons
        1. 10.6.1. Adding the Submit button
        2. 10.6.2. Adding a Reset button
        3. 10.6.3. Creating custom buttons
        4. 10.6.4. Going pictorial with graphical buttons
      7. 10.7. Using the BUTTON Element
      8. 10.8. Adding Hidden Fields
      9. 10.9. Adding Labels
      10. 10.10. Setting Tab Order
      11. 10.11. Specifying Access Keys
      12. 10.12. Submitting the Form
      13. 10.13. Simple DOM
      14. 10.14. Summary
  9. IV. Making It Look Professional
    1. 11. Adding Multimedia and Other Objects
      1. 11.1. Adding Audio
        1. 11.1.1. Choosing a file type
        2. 11.1.2. Embedding audio
        3. 11.1.3. Setting volume
        4. 11.1.4. Using NOEMBED
        5. 11.1.5. Finding digital audio sources
          1. 11.1.5.1. Making your own music
          2. 11.1.5.2. Buying music
      2. 11.2. Embedding Video
        1. 11.2.1. Running a movie
        2. 11.2.2. Finding digital video sources
      3. 11.3. Animating with Adobe Flash
      4. 11.4. Understanding the Flash Layout
        1. 11.4.1. The Stage
        2. 11.4.2. Scenes
        3. 11.4.3. Layers
        4. 11.4.4. The Timeline
        5. 11.4.5. The toolbox
        6. 11.4.6. Adding Audio
      5. 11.5. Creating Objects
        1. 11.5.1. Drawing lines with the Line tool
        2. 11.5.2. Setting stroke characteristics
        3. 11.5.3. Selecting and deleting objects
        4. 11.5.4. Making shapes with tools
        5. 11.5.5. Saving your work
        6. 11.5.6. Importing art
        7. 11.5.7. Using the Library panel
      6. 11.6. Modifying Objects
        1. 11.6.1. Stretching and distorting objects
        2. 11.6.2. Grouping Objects
        3. 11.6.3. Scaling
        4. 11.6.4. Rotating and skewing
        5. 11.6.5. Straightening and smoothing
        6. 11.6.6. Using gradient fills
        7. 11.6.7. Working with bitmap fills
      7. 11.7. Working with Text
        1. 11.7.1. Adding text
        2. 11.7.2. Choosing fonts
        3. 11.7.3. Setting font characteristics
        4. 11.7.4. Creating text effects
      8. 11.8. Working with Animation Timelines
        1. 11.8.1. Using frames
        2. 11.8.2. Assigning keyframes
        3. 11.8.3. Adding Layers
        4. 11.8.4. Adding objects to the Layers
        5. 11.8.5. Converting objects to symbols
        6. 11.8.6. Creating animation
        7. 11.8.7. Tweening action
        8. 11.8.8. Creating more Layer effects
        9. 11.8.9. Using sound
        10. 11.8.10. Adding MP3 sound
        11. 11.8.11. Synchronizing sound and action
      9. 11.9. Using Advanced Techniques
        1. 11.9.1. Programming with ActionScript
        2. 11.9.2. Adding actions
      10. 11.10. Exporting and Publishing Movies
        1. 11.10.1. Exporting movies
        2. 11.10.2. Publishing movies
        3. 11.10.3. Tips for optimizing your movies
      11. 11.11. Summary
    2. 12. Styling Web Pages with Cascading Style Sheets
      1. 12.1. Testing Your Browser
      2. 12.2. Coping with Browser Support Issues
      3. 12.3. Cascading Priorities
        1. 12.3.1. Going inline with the style attribute
        2. 12.3.2. Embedding with the <style> tag
        3. 12.3.3. Linking external stylesheets
      4. 12.4. Redefining HTML Elements
      5. 12.5. Assigning Classes
      6. 12.6. Using IDs
      7. 12.7. Defining Nested Elements with Contextual Selectors
        1. 12.7.1. Cool effects with CSS
      8. 12.8. Consulting the CSS Reference
        1. 12.8.1. CSS1 properties
          1. 12.8.1.1. background
          2. 12.8.1.2. background-attachment
          3. 12.8.1.3. background-color
          4. 12.8.1.4. background-image
          5. 12.8.1.5. background-position
          6. 12.8.1.6. background-repeat
          7. 12.8.1.7. border
          8. 12.8.1.8. border-color
          9. 12.8.1.9. border-style
          10. 12.8.1.10. border-top, border-right, border-bottom, border-left
          11. 12.8.1.11. border-width
          12. 12.8.1.12. border-top-width, border-right-width, border-bottom-width, border-left-width
          13. 12.8.1.13. clear
          14. 12.8.1.14. color
          15. 12.8.1.15. display
          16. 12.8.1.16. float
          17. 12.8.1.17. font
          18. 12.8.1.18. font-family
          19. 12.8.1.19. font-size
          20. 12.8.1.20. font-style
          21. 12.8.1.21. font-variant
          22. 12.8.1.22. font-weight
          23. 12.8.1.23. height
          24. 12.8.1.24. letter-spacing
          25. 12.8.1.25. line-height
          26. 12.8.1.26. list-style
          27. 12.8.1.27. list-style-image
          28. 12.8.1.28. list-style-position
          29. 12.8.1.29. list-style-type
          30. 12.8.1.30. margin
          31. 12.8.1.31. margin-top, margin-right, margin-bottom, margin-left
          32. 12.8.1.32. padding
          33. 12.8.1.33. padding-top, padding-right, padding-bottom, padding-left
          34. 12.8.1.34. text-align
          35. 12.8.1.35. text-decoration
          36. 12.8.1.36. text-indent
          37. 12.8.1.37. text-transform
          38. 12.8.1.38. vertical-align
          39. 12.8.1.39. white-space
          40. 12.8.1.40. width
          41. 12.8.1.41. word-spacing
        2. 12.8.2. CSS2 properties
          1. 12.8.2.1. azimuth
          2. 12.8.2.2. background
          3. 12.8.2.3. background-attachment
          4. 12.8.2.4. background-color
          5. 12.8.2.5. background-image
          6. 12.8.2.6. background-position
          7. 12.8.2.7. background-repeat
          8. 12.8.2.8. border
          9. 12.8.2.9. border-collapse
          10. 12.8.2.10. border-color
          11. 12.8.2.11. border-spacing
          12. 12.8.2.12. border-style
          13. 12.8.2.13. border-top, border-right, border-bottom, border-left
          14. 12.8.2.14. border-top-color, border-right-color, border-bottom-color, border-left-color
          15. 12.8.2.15. border-top-style, border-right-style, border-bottom-style, border-left-style
          16. 12.8.2.16. border-top-width, border-right-width, border-bottom-width, border-left-width
          17. 12.8.2.17. border-width
          18. 12.8.2.18. bottom
          19. 12.8.2.19. caption-side
          20. 12.8.2.20. clear
          21. 12.8.2.21. clip
          22. 12.8.2.22. color
          23. 12.8.2.23. content
          24. 12.8.2.24. counter-increment
          25. 12.8.2.25. counter-reset
          26. 12.8.2.26. cue
          27. 12.8.2.27. cue-after
          28. 12.8.2.28. cue-before
          29. 12.8.2.29. cursor
          30. 12.8.2.30. direction
          31. 12.8.2.31. display
          32. 12.8.2.32. elevation
          33. 12.8.2.33. empty-cells
          34. 12.8.2.34. float
          35. 12.8.2.35. font
          36. 12.8.2.36. font-family
          37. 12.8.2.37. font-size
          38. 12.8.2.38. font-size-adjust
          39. 12.8.2.39. font-stretch
          40. 12.8.2.40. font-style
          41. 12.8.2.41. font-variant
          42. 12.8.2.42. font-weight
          43. 12.8.2.43. height
          44. 12.8.2.44. left
          45. 12.8.2.45. letter-spacing
          46. 12.8.2.46. line-height
          47. 12.8.2.47. list-style
          48. 12.8.2.48. list-style-image
          49. 12.8.2.49. list-style-position
          50. 12.8.2.50. list-style-type
          51. 12.8.2.51. margin
          52. 12.8.2.52. margin-top, margin-right, margin-bottom, margin-left
          53. 12.8.2.53. marker-offset
          54. 12.8.2.54. marks
          55. 12.8.2.55. max-height
          56. 12.8.2.56. max-width
          57. 12.8.2.57. min-height
          58. 12.8.2.58. min-width
          59. 12.8.2.59. orphans
          60. 12.8.2.60. outline
          61. 12.8.2.61. outline-color
          62. 12.8.2.62. outline-style
          63. 12.8.2.63. outline-width
          64. 12.8.2.64. overflow
          65. 12.8.2.65. padding
          66. 12.8.2.66. padding-top, padding-right, padding-bottom, padding-left
          67. 12.8.2.67. page
          68. 12.8.2.68. page-break-after
          69. 12.8.2.69. page-break-before
          70. 12.8.2.70. page-break-inside
          71. 12.8.2.71. pause
          72. 12.8.2.72. pause-after
          73. 12.8.2.73. pause-before
          74. 12.8.2.74. pitch
          75. 12.8.2.75. pitch-range
          76. 12.8.2.76. play-during
          77. 12.8.2.77. position
          78. 12.8.2.78. quotes
          79. 12.8.2.79. richness
          80. 12.8.2.80. right
          81. 12.8.2.81. size
          82. 12.8.2.82. speak
          83. 12.8.2.83. speak-header
          84. 12.8.2.84. speak-numeral
          85. 12.8.2.85. speak-punctuation
          86. 12.8.2.86. speech-rate
          87. 12.8.2.87. stress
          88. 12.8.2.88. table-layout
          89. 12.8.2.89. text-align
          90. 12.8.2.90. text-decoration
          91. 12.8.2.91. text-indent
          92. 12.8.2.92. text-shadow
          93. 12.8.2.93. text-transform
          94. 12.8.2.94. top
          95. 12.8.2.95. unicode-bidi
          96. 12.8.2.96. vertical-align
          97. 12.8.2.97. visibility
          98. 12.8.2.98. voice-family
          99. 12.8.2.99. volume
          100. 12.8.2.100. white-space
          101. 12.8.2.101. widows
          102. 12.8.2.102. width
          103. 12.8.2.103. word-spacing
          104. 12.8.2.104. z-index
      9. 12.9. Using Stylesheet-Creation Programs
      10. 12.10. Interesting CSS Sites
      11. 12.11. Adding Layers
        1. 12.11.1. Using CSS positioning properties
        2. 12.11.2. Going with the flow
        3. 12.11.3. Choosing absolute or relative positioning
        4. 12.11.4. Nested elements
        5. 12.11.5. Overlapping Layers
        6. 12.11.6. Stacking layers with z-order
        7. 12.11.7. Using transparency and background color
      12. 12.12. Clipping Layer Content
        1. 12.12.1. Visibility of layers
      13. 12.13. Handling Large Elements with Overflow Attributes
        1. 12.13.1. Visible overflow
        2. 12.13.2. Hidden overflow
        3. 12.13.3. Scroll bars
      14. 12.14. CSS and Layers Quick Reference
      15. 12.15. Summary
    3. 13. Making Dynamic Pages with JavaScript
      1. 13.1. Trying Out JavaScript
      2. 13.2. Understanding JavaScript
        1. 13.2.1. Working with variables, constants, and literals
          1. 13.2.1.1. Constant
          2. 13.2.1.2. Declaring variables
          3. 13.2.1.3. Naming variables and constants
          4. 13.2.1.4. Assigning different values
          5. 13.2.1.5. Value types
        2. 13.2.2. Affecting values with operators
          1. 13.2.2.1. Comparison operators
          2. 13.2.2.2. Arithmetic operators
          3. 13.2.2.3. Logical operators
          4. 13.2.2.4. Assignment operators
          5. 13.2.2.5. Strings
        3. 13.2.3. Adding statements using event handlers
          1. 13.2.3.1. Using the <SCRIPT> tag
          2. 13.2.3.2. Understanding the double slash (//) comment marker
          3. 13.2.3.3. Including comments
          4. 13.2.3.4. Processing statements
          5. 13.2.3.5. Resetting form value
        4. 13.2.4. Combining statements into functions
          1. 13.2.4.1. Calling a function
          2. 13.2.4.2. Calling a statement
          3. 13.2.4.3. Understanding the scope of variables
        5. 13.2.5. Making choices with If and If ... Else
        6. 13.2.6. Going in loops
      3. 13.3. Using Events to Trigger Scripts
        1. 13.3.1. Triggering on page loads and unloads
        2. 13.3.2. Reacting to mouse movements
        3. 13.3.3. Clicking and double-clicking
        4. 13.3.4. Pressing and releasing keys
      4. 13.4. Seeing Elements as Objects
        1. 13.4.1. Understanding properties
        2. 13.4.2. Working with methods
      5. 13.5. Form Validation
      6. 13.6. Examining Browser Compatibility
      7. 13.7. JavaScript Quick Reference
      8. 13.8. Summary
    4. 14. Putting It on the Web
      1. 14.1. Getting Your Domain Name
        1. 14.1.1. Choosing a domain name
        2. 14.1.2. Picking a registrar
        3. 14.1.3. Coping with registration pitfalls
          1. 14.1.3.1. Signing up for multiple years at a discount
          2. 14.1.3.2. Why does it take so long?
      2. 14.2. Finding a Web Hosting Provider
        1. 14.2.1. Picking the right Web server
        2. 14.2.2. Determining your space needs
        3. 14.2.3. Choosing a nonvirtual, virtual, dedicated, or co-located server
          1. 14.2.3.1. Nonvirtual hosting
          2. 14.2.3.2. Virtual Web hosting
          3. 14.2.3.3. Dedicated servers
          4. 14.2.3.4. Co-located servers
        4. 14.2.4. Balancing price-service ratios
        5. 14.2.5. Investigating Web space providers
      3. 14.3. Testing Responsiveness to Your Needs
        1. 14.3.1. Obtaining customer service
        2. 14.3.2. Assessing technical support
      4. 14.4. Avoiding Common Provider Scams
        1. 14.4.1. Thinking like a crook
        2. 14.4.2. Suffering domain name theft
        3. 14.4.3. Getting "unlimited" traffic or space
        4. 14.4.4. Rushing deadlines for special deals
      5. 14.5. Exploring Bells and Whistles
        1. 14.5.1. Getting extra e-mail accounts
        2. 14.5.2. Redirecting messages
        3. 14.5.3. Using autoresponders to provide information
        4. 14.5.4. Getting visitor statistics
        5. 14.5.5. Using control panels to set site options
        6. 14.5.6. Becoming a reseller
      6. 14.6. Uploading Your Pages
        1. 14.6.1. Transferring with FTP
        2. 14.6.2. Uploading with Web browsers via HTTP
      7. 14.7. Web Posting Quick Reference
      8. 14.8. Summary
  10. V. Transitioning to the Future: XHTML, XML, and Ajax
    1. 15. XHTML
      1. 15.1. A Quick Review of HTML
      2. 15.2. Enter XHTML
      3. 15.3. Transitioning to XHTML 1.0
        1. 15.3.1. Document Type Definitions (DTDs)
          1. 15.3.1.1. Transitional
          2. 15.3.1.2. Strict DTD
          3. 15.3.1.3. Frameset
          4. 15.3.1.4. DTD templates
        2. 15.3.2. Making HTML compliant with XML
        3. 15.3.3. Contrasting XHTML with HTML 4.0
        4. 15.3.4. Modules
        5. 15.3.5. Frowned-upon practices in older HTML syntax
      4. 15.4. Creating an XHTML Document
        1. 15.4.1. Namespace
        2. 15.4.2. CDATA and PCDATA
        3. 15.4.3. White space
      5. 15.5. Code Validation in an XHTML Document
      6. 15.6. Making Your Site Mobile with WAP/WML
      7. 15.7. What is WML?
        1. 15.7.1. Dealing with WML
        2. 15.7.2. WML Tags
        3. 15.7.3. Shuffling the cards
      8. 15.8. Interacting with Users
        1. 15.8.1. Forms in WML
        2. 15.8.2. Specifying the format
        3. 15.8.3. Specifying required values
        4. 15.8.4. Menus à la card
        5. 15.8.5. Multiple-choice menus
        6. 15.8.6. Differences between HTML lists and WML lists
      9. 15.9. Transforming XHTML into WML
      10. 15.10. WML Web Sites
      11. 15.11. Summary
    2. 16. Designing with XML
      1. 16.1. Designing with XML
        1. 16.1.1. XML Rules
        2. 16.1.2. Getting different XML vocabularies to work together – namespaces
        3. 16.1.3. Classifying content versus defining presentation
        4. 16.1.4. Specifying a CSS
        5. 16.1.5. Specifying an XSL stylesheet
        6. 16.1.6. Similarities to a programming language
        7. 16.1.7. Defining the structure of an XML document
        8. 16.1.8. Customizing tags
        9. 16.1.9. More on DTD
      2. 16.2. Schemas
        1. 16.2.1. string and numeric data types
        2. 16.2.2. Date and time data types
        3. 16.2.3. Primitive data types
        4. 16.2.4. Schema format
      3. 16.3. XML Web Sites
      4. 16.4. Summary
    3. 17. Ajax
      1. 17.1. XMLHttpRequest
        1. 17.1.1. XMLRequest in Switch Format Case 0
        2. 17.1.2. XMLRequest in Switch Format Case 1
        3. 17.1.3. XMLRequest in Switch Format Case 2
        4. 17.1.4. XMLRequest in Switch Format Case 3
        5. 17.1.5. XMLRequest in Switch Format Case 4
          1. 17.1.5.1. PHP code
        6. 17.1.6. Making an XMLHttpRequest
      2. 17.2. DOM 3 Specifications for IDL Node Interface
      3. 17.3. Ajax and the Mobile Web
      4. 17.4. Ajax Quick Reference
      5. 17.5. Summary
  11. VI. Images on the Web
    1. 18. Finding, Creating, and Enhancing Images on the Web
      1. 18.1. Exploring Graphics File Types
        1. 18.1.1. GIF
        2. 18.1.2. JPEG
        3. 18.1.3. PNG
        4. 18.1.4. Comparing the three
      2. 18.2. Choosing Image-Editing Tools
        1. 18.2.1. Photoshop
        2. 18.2.2. Fireworks
        3. 18.2.3. Painter X
        4. 18.2.4. Paint Shop Pro
        5. 18.2.5. Xara
      3. 18.3. Modifying Images
        1. 18.3.1. Cropping
          1. 18.3.1.1. Photoshop
          2. 18.3.1.2. Fireworks
          3. 18.3.1.3. Painter
          4. 18.3.1.4. Paint Shop Pro
        2. 18.3.2. Resizing and resampling
          1. 18.3.2.1. Photoshop
          2. 18.3.2.2. Fireworks
          3. 18.3.2.3. Painter
          4. 18.3.2.4. Paint Shop Pro
        3. 18.3.3. Rotating and flipping
          1. 18.3.3.1. Photoshop
          2. 18.3.3.2. Fireworks
          3. 18.3.3.3. Painter
          4. 18.3.3.4. Paint Shop Pro
        4. 18.3.4. Sharpening and blurring
          1. 18.3.4.1. Photoshop
          2. 18.3.4.2. Fireworks
          3. 18.3.4.3. Painter
          4. 18.3.4.4. Paint Shop Pro
        5. 18.3.5. Applying artistic effects filters
          1. 18.3.5.1. Photoshop
          2. 18.3.5.2. Fireworks
          3. 18.3.5.3. Painter
          4. 18.3.5.4. Paint Shop Pro
      4. 18.4. Using 3D Graphics Programs
        1. 18.4.1. Poser
        2. 18.4.2. Bryce
        3. 18.4.3. trueSpace
      5. 18.5. Getting Free Images off the Web
        1. 18.5.1. Finding public domain photographs
        2. 18.5.2. Downloading free artwork
        3. 18.5.3. Finding suitable artists
        4. 18.5.4. Using stock photographs
      6. 18.6. Avoiding Legal Problems
        1. 18.6.1. Using copyrighted material
        2. 18.6.2. Respecting trademarks
      7. 18.7. Summary
  12. VII. Cashing in on eCommerce
    1. 19. Setting Up Your Store
      1. 19.1. Choosing Your eCommerce Setup
        1. 19.1.1. Single-product sites and specialty stores
        2. 19.1.2. General stores
          1. 19.1.2.1. Online superstores
          2. 19.1.2.2. Online computer stores
        3. 19.1.3. Service sites
        4. 19.1.4. Shopping malls
        5. 19.1.5. Affiliate stores
      2. 19.2. Setting Up Shopping Carts
        1. 19.2.1. Addressing concerns about security
        2. 19.2.2. Joining mall-provided programs
        3. 19.2.3. Getting commercial programs
        4. 19.2.4. Using open source programs
      3. 19.3. Taking Payments
        1. 19.3.1. Credit and debit cards
        2. 19.3.2. Watching out for chargebacks
        3. 19.3.3. Checks
        4. 19.3.4. E-cash
        5. 19.3.5. Establishing return and refund policies
        6. 19.3.6. Setting up an affiliate store
      4. 19.4. Utilizing Internet Buying Patterns
      5. 19.5. Updating Your Site
      6. 19.6. Keeping Your Site Fresh
        1. 19.6.1. Using incremental uploads
        2. 19.6.2. Establishing a schedule
        3. 19.6.3. Finding new material
        4. 19.6.4. Having your visitors provide material
      7. 19.7. Adding Extra Value
        1. 19.7.1. Producing newsletters and e-zines
        2. 19.7.2. Writing product reviews
        3. 19.7.3. Creating tutorials
      8. 19.8. Summary
    2. 20. Using Advertising
      1. 20.1. Advertising with Google and Other Search Engines
        1. 20.1.1. Advertising with Google
        2. 20.1.2. Advertising with other search engines
        3. 20.1.3. Advertising with banners
      2. 20.2. Working with Advertisement Agencies
        1. 20.2.1. Finding an Internet advertisement agency
        2. 20.2.2. Working with affiliates
      3. 20.3. Promoting Your Site
      4. 20.4. Exploiting Search Engines
        1. 20.4.1. Understanding robots and spiders
        2. 20.4.2. Submitting your site
        3. 20.4.3. Keeping your site searchable
          1. 20.4.3.1. TITLE
          2. 20.4.3.2. META
          3. 20.4.3.3. ALT
        4. 20.4.4. Pulling it all together
        5. 20.4.5. Ranking
        6. 20.4.6. Portals
        7. 20.4.7. Blocking search engines
      5. 20.5. Working the Web Directories
        1. 20.5.1. Ranking in a directory
        2. 20.5.2. Registering with the major sites
        3. 20.5.3. Listing on free-for-all link pages
      6. 20.6. Issuing Press Releases
        1. 20.6.1. Saying the right thing
        2. 20.6.2. Finding e-mail addresses
        3. 20.6.3. Formatting the e-mail-to use HTML or just plain text?
      7. 20.7. Setting Up Reciprocal Links
      8. 20.8. Evaluating Banner Exchanges
        1. 20.8.1. Building the banner
        2. 20.8.2. Design do's and don'ts
        3. 20.8.3. Multimedia ads
        4. 20.8.4. Banner exchanges
        5. 20.8.5. Traditional advertising
      9. 20.9. Investigating Alternative Approaches
        1. 20.9.1. E-mail advertising
        2. 20.9.2. Amassing a mailing list
        3. 20.9.3. Sending newsletters
      10. 20.10. Summary
    3. 21. Covering All the Bases
      1. 21.1. Using Domain Names and Trademarks
        1. 21.1.1. Domain name disputes
        2. 21.1.2. Anti-Cybersquatting Consumer Protection Act
        3. 21.1.3. Researching domain names online
        4. 21.1.4. Maintaining your domain name
        5. 21.1.5. Researching trademarks online
      2. 21.2. Soothing Common Fears
        1. 21.2.1. Publicizing your security
        2. 21.2.2. Creating a privacy policy
      3. 21.3. Establishing Policies for Returns
      4. 21.4. Investigating Alternative Approaches
        1. 21.4.1. Accepting advertising
        2. 21.4.2. Optimize your site for search engines
      5. 21.5. Summary
  13. VIII. Keeping Your Site Fresh
    1. 22. Maintaining Your Site
      1. 22.1. Testing Your Site
        1. 22.1.1. Visit your site as a stranger
        2. 22.1.2. Finding outside testers
        3. 22.1.3. Evaluating input from testers and visitors
      2. 22.2. Coping with Visitors Changing Your Site
        1. 22.2.1. Browser preference settings
      3. 22.3. Maintaining Consistency on Your Site
        1. 22.3.1. Visitor comfort
        2. 22.3.2. Common maintenance tasks
        3. 22.3.3. Site improvement tools
        4. 22.3.4. Server monitors
      4. 22.4. Summary
    2. 23. RSS
      1. 23.1. Origin of RSS
      2. 23.2. NASA Page with Links to RSS Feeds
      3. 23.3. RSS Quick Reference
      4. 23.4. Summary
    3. 24. Blogging
      1. 24.1. The World of Blogging
      2. 24.2. Using Blogger
        1. 24.2.1. A brief history of Blogger
        2. 24.2.2. Setting up your blog on Blogger
          1. 24.2.2.1. Entering initial information into Blogger
          2. 24.2.2.2. Choosing your title and blog address
          3. 24.2.2.3. Use a template for your blog's look
        3. 24.2.3. Adding to your blog
          1. 24.2.3.1. Posting
          2. 24.2.3.2. Other Blogger options
      3. 24.3. Alternative Blogging Tools
        1. 24.3.1. AOL's Hometown
        2. 24.3.2. blogs.com and TypePad
        3. 24.3.3. LiveJournal
        4. 24.3.4. Radio UserLand
        5. 24.3.5. Blogging add-ons
      4. 24.4. Integrating Blogging
        1. 24.4.1. Blogging as a writing style
        2. 24.4.2. Integration by reference
        3. 24.4.3. Full integration
      5. 24.5. Summary