Home > Store

Special Edition Using Microsoft Expression Web 2

Special Edition Using Microsoft Expression Web 2

eBook (Adobe DRM)

  • Sorry, this book is no longer in print.
  • About Adobe DRM eBooks
  • This eBook requires the free Adobe® Digital Editions software.

    Before downloading this DRM-encrypted PDF, be sure to:

    • Install the free Adobe Digital Editions software on your machine. Adobe Digital Editions only works on Macintosh and Windows, and requires the Adobe Flash Player. Please see the official system requirements.
    • Authorize your copy of Adobe Digital Editions using your Adobe ID (select AdobeID as the eBook vendor). If you don't already have an Adobe ID, you can create one here.
Not for Sale

Also available in other formats.

Register your product to gain access to bonus material or receive a coupon.


  • Copyright 2008
  • Edition: 1st
  • eBook (Adobe DRM)
  • ISBN-10: 0-7686-8238-X
  • ISBN-13: 978-0-7686-8238-0

Special Edition Using Microsoft® Expression® Web 2

The only EXPRESSION WEB 2 book you need

The successor to the best-selling book on the first release of Microsoft Expression Web, this book provides comprehensive coverage of Microsoft Expression Web 2. You’ll learn the basics of Web design and Expression Web 2 and gain valuable insight into Expression Web 2’s advanced features, such as ASP.NET and PHP development. If you’re interested in learning how to design standards-compliant Web sites using Expression Web 2, this is the only book you need.

     •    Create standards-compliant Web sites with Expression Web 2 that work consistently in all browsers.

     •    Become proficient in the use of CSS by learning how to use the powerful CSS tools in Expression Web 2.

     •    Learn how to take advantage of ASP.NET and ASP.NET AJAX without writing any code.

     •    Learn how to use the new PHP features available in Expression Web 2.

     •    Add dynamic, interactive content with Behaviors and Layers.

     •    Design your Web site for accessibility using both Section 508 and WCAG compliance.

“Expression Web was built to help web authors create standards-based and standards-compliant web sites. Jim Cheshire has a broad understanding of those standards and a deep appreciation of Expression Web. Put the two together and you’ve got a guide that helps you understand and build sites that meet the challenges of modern Web design.”

—Steven Guttman,

Product Unit Manager,

Expression Web

Jim Cheshire is the owner of Jimco Software, a freeware software company and technology review site, and is the author of several books on Web development and ASP.NET. Jim has been heavily involved in Web development for more than a decade and has operated and designed many Web sites during that time. He’s been featured in numerous publications, including MSDN Magazine and PC Magazine. Jim previously worked on the FrontPage team at Microsoft and currently is an escalation engineer on the ASP.NET and IIS teams.

Category:  Web Development

Covers    Microsoft Expression Web 2

User Level    Beginning—Advanced

On the CD-ROM

     •    Sample files from the author

     •    FREE! full version of Logo Creator (retail value of $39.95)

     •    FREE! full version of DHTML Menu Builder Lite (retail value of $25)

     •    Electronic version of this book in Adobe’s Portable Document Format (PDF)

Cover image: Digital Vision Photography/Veer Inc.

Sample Content

Table of Contents


Who Should Read This Book?

Why Use Expression Web 2?

How This Book Is Organized

    Special Elements

Lagniappe (lan yap’) n., a gift or bonus

Part I An Overview of Expression Web 2

Chapter 1 A Tour of Expression Web 2

The Expression Web 2 Interface

    Task Panes

    The Folder List

    The Design Surface

    The Status Bar

Working with Web Sites

    Creating Web Sites

    Web Site Reports

    Publishing Web Sites

Tools for Creating Pages

    Powerful Table Tools

    Dynamic Web Templates

    Find and Replace

    Editing Tag Properties

    Quick Tag Tools

Powerful CSS Tools

    Style Builder

    Manage Styles Task Pane

    Apply Styles Task Pane

Site Optimization

    Accessibility Reports

    Compatibility Reports

    CSS Reports

Scripting and Dynamic Content

    Interactive Buttons



ASP.NET Controls

PHP Support

Data Access Features

Lagniappe: Extending Expression Web 2

Part II Web Sites in Expression Web 2

Chapter 2 Creating a Web Site

What Is a Web Site?

How Expression Web 2 Maintains a Web Site

Web Sites and Subsites

Web Site Templates

Types of Web Sites

    Disk-based Web Sites

    FTP Web Sites

    HTTP Web Sites


Lagniappe: Deciding on a Web Site Type

Chapter 3 Publishing a Web Site

What Is Publishing?

Server Options for Publishing

    FrontPage Server Extensions



    File System

Publishing Content

    Configuring Publish Options

    Optimizing HTML During Publishing

    The Remote Web Site View

    Troubleshooting HTTP Publishing


Lagniappe: Hosting Your Web Site

Chapter 4 Web Site Management and Reporting

Web Site Settings

    General Tab

    Preview Tab

    Advanced Tab

    Language Tab

Web Site Reports

    Configuring Reports

    Saving Reports


Lagniappe: Better Web Site Reporting

Chapter 5 Importing a Web Site

Moving Web Sites by Importing

Using the Import Web Site Wizard

    Step 1: Choosing an Import Method

    Step 2: Specifying a Destination Web Site Location

    Step 3: Finish


Lagniappe: Importing Versus Publishing

Chapter 6 Using Personal Web Packages

What Are Personal Web Packages?

Creating a Personal Web Package

Importing a Personal Web Package


Lagniappe: Capitalizing on Personal Web Packages

Part III Creating and Editing Web Content

Chapter 7 Creating Pages and Content

Creating Web Pages

    General Page

    ASP.NET Pages

    CSS Layouts

    Style Sheets

    Frames Pages

Importing Files

Importing Adobe Photoshop Files

Formatting Text

    How Expression Web 2 Formats Text

    Font Families

    Font Sizes

Creating Hyperlinks

    Targeting Hyperlinks

    Hyperlink Parameters

    HTML Bookmarks

    Hyperlink ScreenTips


Configuring Page Properties

    General Tab

    Formatting Tab

    Advanced Tab

    Custom Tab

    Language Tab

Using Code Snippets

Configuring File Editors


Lagniappe: Making the Most of Code Snippets

Chapter 8 Using Web Page Views

Introduction to Page Views

Working in Design View

    Visual Aids

    Formatting Marks

    Ruler and Grid

    Tracing Images

    Adjusting Page Size

Working in Code View

    Customizing Code Formatting

    Quick Tag Tools


    Context Menu


Working in Split View


Lagniappe: Taking Advantage of Page Views

Chapter 9 Using Tables and Layout Tables

The Origin of Tables

The Makeup of an HTML Table Tag

    The align Attribute

    The border Attribute

    The cellpadding Attribute

    The cellspacing Attribute

    The frame Attribute

Rows, Columns, and Cells

    The colspan and rowspan Attributes

    Aligning Content in Cells

Tables in Expression Web 2

    Inserting Tables

    Customizing Tables

Layout Tables and Cells

    Designing Layout with Tables

Using the Layout Tables Task Pane


Lagniappe: Designing for Multiple Resolutions Using Tables

Chapter 10 Using Frames

Using Frames in Web Sites

    When to Use Frames

    When Not to Use Frames

Creating Frames Pages

Configuring Frames

    Splitting Frames

    Deleting Frames

Creating Alternative Content

Targeting Frames

Adding and Configuring Inline Frames


Lagniappe: Tips for Frames

    Frame Borders

    Resizable Frames

    Breaking Out of a Frameset

Chapter 11 Using Form Controls

Understanding HTML Forms

Using Form Controls in Expression Web 2

Creating a Form

Saving Form Results to a File or E-mail

    File Results Tab

    E-mail Results Tab

    Confirmation Page Tab

    Saved Fields Tab

Saving Form Results to a Database

    Updating a Database with New Fields


Lagniappe: Hidden Form Fields

Chapter 12 Editing Tag Properties

An Introduction to Tag Properties

Understanding the Tag Properties Task Pane

Viewing Tag Properties with the Tag Properties Task Pane

Setting Tag Attributes with the Tag Properties Task Pane

    Creating a Page

    Setting Tag Properties

Using Events with the Tag Properties Task Pane


Lagniappe: Tag Properties and Web Standards

Chapter 13 Using the Quick Tag Tools

Introduction to the Quick Tag Tools

Locating and Selecting Elements Using the Quick Tag Selector

Editing Page Content Using the Quick Tag Editor

    Editing a Tag

    Removing a Tag

    Inserting HTML

    Wrapping a Tag

    Controlling Positioning

    Editing Tag Properties


Lagniappe: When to Use the Quick Tag Editor

Chapter 14 Using Graphics and Multimedia

Web Image Formats

    The GIF Format

    The JPEG Format

    The PNG Format

Inserting Images

Formatting Images

    Resizing Images

    Changing Picture Properties

Converting Images

Creating Image Thumbnails

    Configuring Auto Thumbnails

Creating Image Maps

Inserting Multimedia

    Inserting Flash Movies

    Inserting Silverlight

    Inserting Windows Media

Page Transitions


Lagniappe: Serving Video

Chapter 15 Configuring Page Editor Options

Accessing Page Editor Options

Exploring Page Editor Options

    The General Tab

    AutoThumbnail Tab

    Default Fonts Tab

    Code Formatting Tab

    CSS Tab

    Color Coding Tab

    Authoring Tab

    Picture Tab

    Code Snippets Tab

    Ruler and Grid Tab

    IntelliSense Tab

    Font Families Tab

Lagniappe: Experiment to Learn More

Chapter 16 Using Find and Replace

An Introduction to Find and Replace

Finding and Replacing Text

    Using Regular Expressions

    Finding Text

    Replacing Text

Using HTML Rules in Find and Replace

Finding and Replacing HTML Tags

Saving Queries


Lagniappe: Editing and Removing Recent Searches

Part IV Using CSS in Expression Web 2

Chapter 17 Creating Style Sheets

An Introduction to CSS

The Purpose of CSS

How CSS Is Applied to Web Pages

    External Style Sheets

    Embedded Style Sheets

    Inline Styles

Formatting Content with CSS

Positioning Content with CSS

CSS Classes

    Basic Application of a CSS Class

    Applying Multiple CSS Classes




Lagniappe: Background Images

Chapter 18 Managing CSS Styles

Expression Web 2’s CSS Tools

    Apply Styles Task Pane

    Manage Styles Task Pane

    Link Style Sheet Dialog

    CSS Properties Task Pane

    CSS Reports

    Style Builder

Working with Styles

    Using the Manage Styles Task Pane

    Using the Apply Styles Task Pane

    Using the CSS Properties Task Pane

    Using the Style Builder

    Using the Attach Style Sheet and Link Style Sheet Dialogs

CSS Reports

    Checking for CSS Errors

    Checking CSS Usage


Lagniappe: Arranging CSS Styles

Part V Optimizing Your Web Site

Chapter 19 Accessibility Features in Expression Web 2

An Introduction to Accessibility

Designing for Accessibility

    Accessible Hyperlinks

    Accessible Tables

    Accessible Frames

    Other Accessibility Considerations

Using the Accessibility Checker

    Checking Accessibility

    Working with the Accessibility Task Pane

Generating Accessibility Reports

Lagniappe: Seeing Color

Chapter 20 Designing for Compatibility

A Brief History of Web Browsers

What Is Browser Compatibility?

Compatibility Features in Expression Web 2

    Identifying Code Problems

    Marking Invalid Code

    Using Reports to Find Problems


Lagniappe: Don’t Rely on Expression Web 2 to Enforce Standards

Part VI Scripting, DHTML, and Other Dynamic Content

Chapter 21 Using Dynamic Web Templates

An Introduction to Dynamic Web Templates

Creating a Dynamic Web Template

    Creating a Page Layout

    Adding Editable Regions

Attaching a Dynamic Web Template

    Attaching to an Existing Page

    Attaching to a New Page

Updating a Site with Dynamic Web Templates

    Modifying a Dynamic Web Template

    Modifying an Attached Page in Code View

Managing Editable Regions

    Adding a New Editable Region

    Renaming an Existing Editable Region

    Resolving Mismatched Editable Regions

Detaching a Dynamic Web Template


Lagniappe: Under the Hood

Chapter 22 Using Interactive Buttons

Overview of Interactive Buttons

Inserting and Configuring Interactive Buttons

    The Button Tab

    The Font Tab

    The Image Tab

Saving an Interactive Button

Editing an Interactive Button


Lagniappe: Practical Uses for Interactive Buttons

Chapter 23 Using Behaviors

Understanding and Working with Behaviors

    Using the Behaviors Task Pane

    How Behaviors Work

    Adding Behaviors Within a Paragraph

Expression Web 2 Behaviors

    The Call Script Behavior

    The Change Property Behavior

    The Change Property Restore Behavior

    The Check Browser Behavior

    The Check Plug-in Behavior

    The Go To URL Behavior

    The Jump Menu Behavior

    The Jump Menu Go Behavior

    The Open Browser Window Behavior

    The Play Sound Behavior

    The Popup Message Behavior

    The Preload Images Behavior

    The Set Text Behavior

    The Swap Image Behavior

    The Swap Image Restore Behavior


Lagniappe: Detecting Browsers

    Creating a Blank Page for Redirecting

    Editing the Check Browser Code

Chapter 24 Client-side Scripting

A History of Browser Scripting

JavaScript Basics

    Adding JavaScript to a Web Page

    Linking to an External Script File

    Adding Inline JavaScript

The Document Object Model

    The window Object

    The document Object

Writing Simple Scripts

    Showing and Hiding Page Elements

    Accessing and Changing Attributes

    Form Field Validation


Lagniappe: Debugging

Chapter 25 Using Layers

Introduction to Layers

Inserting and Configuring Layers

    Adding Content to a Layer

    Resizing a Layer

    Creating and Working with Child Layers

Positioning Layers

Setting Layer Properties with Behaviors

    Setting the Visibility of Layers

    Adding Layer Interactivity


Lagniappe: Z-Order Anomalies

Chapter 26 Creating VBA Macros

Introduction to Programming with Visual Basic for Applications

    Understanding Modules, Class Modules, and UserForms

Accessing Web Sites with VBA

    The Application Object Model

    The Web Object Model

    The Page Object Model

Writing a Macro

    Creating the UserForm

    Implementing the Functionality

    Finishing the Code

    Running the Macro

    When Something Goes Wrong—Debugging


Lagniappe: Protecting Macro Code

Part VII ASP.NET and PHP Development in Expression Web 2

Chapter 27 Using the Microsoft Expression Development Server

Introduction to the Microsoft Expression Development Server

How to Use the Microsoft Expression Development Server

Limitations of the Microsoft Expression Development Server

    Process Identity

    No Remote Access

    No Support for ASP Pages


Lagniappe: Starting the Microsoft Expression Development Server from the Command Prompt

Chapter 28 Using Standard ASP.NET Controls

ASP.NET: A Brief Introduction

Creating ASP.NET Pages

The Basics of ASP.NET Controls

    Understanding Control Properties

An Overview of the Standard ASP.NET Controls

The AdRotator Control

    Creating a Simple AdRotator Page

    Creating the Advertisement File

The Calendar Control

    Formatting the Calendar Control

    Calendar Control Properties

The Wizard Control

    Wizard Steps

    Creating a Simple Wizard

Making ASP.NET Work for You


Lagniappe: Formatting with Styles

Chapter 29 Using ASP.NET Navigation Controls

Overview of Navigation Systems

Creating a Sitemap File

Using the ASP.NET Menu Control

    Creating a Test Web Site

    Adding a Menu Control

    Formatting the Menu Control

Using the ASP.NET TreeView Control

    Formatting the TreeView Control

Using the ASP.NET SiteMapPath Control

    Formatting the SiteMapPath Control


Lagniappe: Improving Navigation with Master Pages

Chapter 30 Using ASP.NET Master Pages and User Controls

The Need For a Common Layout

The Master Page

The Content Page

Developing a Master Page Web Site

    Creating the Master Page

    Creating the Content Page


Lagniappe: Converting an Existing Site to a Master Page Site

Chapter 31 Developing a Login System with ASP.NET

Web Site Login Systems

Overview of ASP.NET Login Controls

    The Login Control

    LoginStatus Control

    LoginName Control

    ChangePassword Control

    PasswordRecovery Control

    CreateUserWizard Control

    LoginView Control

Creating a Login Solution

    Configuring the Web Site (IIS 5 or IIS 6)

    Configuring the Web Site (IIS 7)

    Configuring the Web Site (Microsoft Expression Development Server)

    Creating the Web Pages


Lagniappe: Modifying Password Requirements

Chapter 32 Implementing Form Validation Using ASP.NET

The Need for Form Validation

    The ASP.NET Validation Controls

    Common Properties

    Creating a Validated Form


Lagniappe: Validation Groups

Chapter 33 Using ASP.NET Web Parts

An Introduction to Web Parts

Creating ASP.NET User Controls

Web Parts Controls in the Toolbox

Creating a Web Parts Page

Web Parts Page Display Modes

    Creating a User Control that Sets the Display Mode

    Adding Code to Change the Display Mode

The Web Parts Catalog


Lagniappe: Editing Web Parts Controls

Chapter 34 ASP.NET AJAX Extensions

What Is Ajax?

Microsoft’s ASP.NET AJAX

    Microsoft AJAX Library

    Microsoft ASP.NET AJAX Extensions

    Microsoft AJAX ASP.NET Control Toolkit

Adding Ajax Functionality to a Web Form

    Creating a Web Site and Web Page

    Adding Server-Side Code

    Adding a ScriptManager Control

    Adding an UpdatePanel Control


Lagniappe: Using the AJAX Library

    Adding a <div> to the Web Form

    Creating the Client Library

    Adding the Client Script to the ScriptManager Control

Chapter 35 Using PHP in Expression Web 2

An Introduction to PHP

    PHP Syntax

Installing PHP

    Installing IIS 7 and FastCGI

    Installing PHP

    Enabling PHP Using FastCGI

Creating PHP Pages

    Previewing the Page

PHP in Design View

PHP in Code View

    PHP Syntax Highlighting

    Using IntelliSense with PHP

    Setting PHP-Specific IntelliSense Options

PHP Script Options

    Form Variable

    URL Variable

    Session Variable

    Cookie Variable


    Include Once



    Code Block






Lagniappe: Displaying PHP Information

Part VIII Accessing Data in Expression Web 2

Chapter 36 Primer on Data Access Technologies

A History of Data Access

Data Access Technologies in Expression Web 2

ASP.NET and Other Web Application Platforms

Lagniappe: Databases Aren’t Just for Online Spreadsheets

Chapter 37 Accessing Data with ASP.NET

ASP.NET Data Source Controls

    AccessDataSource Control

    SqlDataSource Control

    SiteMapDataSource Control

    XmlDataSource Control

Displaying Data with ASP.NET

    Displaying Data in Tabular Form

    Sorting the GridView

Editing Data with ASP.NET

    Configuring the Data Source

    Configuring the GridView

    Testing the Page

Troubleshooting .

Lagniappe: Creating a Master/Detail View

    Creating the Master View

    Creating the Detail View

Part IX Appendixes

Appendix A Taking Advantage of E-Commerce

The Power of E-Commerce

E-Commerce Options

    Digital River


Payment Processing




Putting It All Together In Expression Web 2


    Advertising and Affiliates

Lagniappe: Is It Worth the Risk?

Appendix B The Future of Web Development

Changing Standards

    Benefits of XHTML

Emerging Technologies


    Ruby on Rails

    Other Emerging Technologies

Lagniappe: Understanding and Using RSS

    The RSS Feed

    The RSS Reader

Appendix C Resources on Expression Web 2, Web Design, ASP.NET, and PHP

Online Resources on Expression Web 2


    Microsoft’s Expression Forums

    Expression Web 2 Help

    The Expression Designers: Graphic, Interactive, and Web


Online Resources on Web Design



    O’Reilly Network

    World Wide Web Consortium

    Template World Free Templates

Online Resources on ASP.NET and PHP



    ASP.NET Official Web Site


    Chris Hanscom’s PHP Resource Center

    The Official PHP Web Site

    Microsoft IIS 7 Web Site

0789737841   TOC   3/6/2008


Submit Errata

More Information

Unlimited one-month access with your purchase
Free Safari Membership