- •Taking Your Talent to the Web
- •Introduction
- •1 Splash Screen
- •Meet the Medium
- •Expanding Horizons
- •Working the Net…Without a Net
- •Smash Your Altars
- •Breath Mint? Or Candy Mint?
- •Where’s the Map?
- •Mars and Venus
- •Web Physics: Action and Interaction
- •Different Purposes, Different Methodologies
- •Web Agnosticism
- •Point #1: The Web Is Platform-Agnostic
- •Point #2: The Web Is Device-Independent
- •The 18-Month Pregnancy
- •Chocolatey Web Goodness
- •’Tis a Gift to Be Simple
- •Democracy, What a Concept
- •Instant Karma
- •The Whole World in Your Hands
- •Just Do It: The Web as Human Activity
- •The Viewer Rules
- •Multimedia: All Talking! All Dancing!
- •The Server Knows
- •It’s the Bandwidth, Stupid
- •Web Pages Have No Secrets
- •The Web Is for Everyone!
- •Swap text and code for images
- •Prune redundancy
- •Cache as Cache Can
- •Much Ado About 5K
- •Screening Room
- •Liquid Design
- •Color My Web
- •Thousands Weep
- •Gamma Gamma Hey!
- •Typography
- •The 97% Solution
- •Points of Distinction
- •Year 2000—Browsers to the Rescue
- •Touch Factor
- •Appropriate Graphic Design
- •User Knowledge
- •What Color Is Your Concept?
- •Business as (Cruel and) Usual
- •The Rise of the Interface Department
- •Form and Function
- •Copycats and Pseudo-Scientists
- •Chaos and Clarity
- •A Design Koan: Interfaces Are a Means too Often Mistaken for an End
- •Universal Body Copy and Other Fictions
- •Interface as Architecture
- •Ten (Okay, Three) Points of Light
- •Be Easily Learned
- •Remain Consistent
- •Continually Provide Feedback
- •GUI, GUI, Chewy, Chewy
- •It’s the Browser, Stupid
- •Clarity Begins at Home (Page)
- •I Think Icon, I Think Icon
- •Structural Labels: Folding the Director’s Chair
- •The Soul of Brevity
- •Hypertext or Hapless Text
- •Scrolling and Clicking Along
- •Stock Options (Providing Alternatives)
- •The So-Called Rule of Five
- •Highlights and Breadcrumbs
- •Consistent Placement
- •Brand That Sucker!
- •Why We Mentioned These Things
- •The year web standards broke, 1
- •The year web standards broke, 2
- •The year web standards broke, 3
- •The year the bubble burst
- •5 The Obligatory Glossary
- •Web Lingo
- •Extranet
- •HTML
- •Hypertext, hyperlinks, and links
- •Internet
- •Intranet
- •JavaScript, ECMAScript, CSS, XML, XHTML, DOM
- •Web page
- •Website
- •Additional terminology
- •Web developer/programmer
- •Project manager
- •Systems administrator (sysadmin) and network administrator (netadmin)
- •Web technician
- •Your Role in the Web
- •Look and feel
- •Business-to-business
- •Business-to-consumer
- •Solve Communication Problems
- •Brand identity
- •Restrictions of the Medium
- •Technology
- •Works with team members
- •Visually and emotionally engaging
- •Easy to navigate
- •Compatible with visitors’ needs
- •Accessible to a wide variety of web browsers and other devices
- •Can You Handle It?
- •What Is the Life Cycle?
- •Why Have a Method?
- •We Never Forget a Phase
- •Analysis (or “Talking to the Client”)
- •The early phase
- •Design
- •Brainstorm and problem solve
- •Translate needs into solutions
- •Sell ideas to the client
- •Identify color comps
- •Create color comps/proof of concept
- •Present color comps and proof of concept
- •Receive design approval
- •Development
- •Create all color comps
- •Communicate functionality
- •Work with templates
- •Design for easy maintenance
- •Testing
- •Deployment
- •The updating game
- •Create and provide documentation and style guides
- •Provide client training
- •Learn about your client’s methods
- •Work the Process
- •Code Wars
- •Table Talk
- •XHTML Marks the Spot
- •Minding Your <p>’s and q’s
- •Looking Ahead
- •Getting Started
- •View Source
- •A Netscape Bonus
- •The Mother of All View Source Tricks
- •Doin’ it in Netscape
- •Doin’ it in Internet Explorer
- •Absolutely Speaking, It’s All Relative
- •What Is Good Markup?
- •What Is Sensible Markup?
- •HTML as a Design Tool
- •The Frames of Hazard
- •Please Frame Safely
- •Framing Your Art
- •<META> <META> Hiney Ho!
- •Search Me
- •Take a (Re)Load Off
- •WYSIWYG, My Aunt Moira’s Left Foot
- •Code of Dishonor
- •WYS Is Not Necessarily WYG
- •Publish That Sucker!
- •HTMHell
- •9 Visual Tools
- •Photoshop Basics: An Overview
- •Comp Preparation
- •Dealing with Color Palettes
- •Exporting to Web-Friendly Formats
- •Gamma Compensation
- •Preparing Typography
- •Slicing and Dicing
- •Rollovers (Image Swapping)
- •GIF Animation
- •Create Seamless Background Patterns (Tiles)
- •Color My Web: Romancing the Cube
- •Dither Me This
- •Death of the Web-Safe Color Palette?
- •A Hex on Both Your Houses
- •Was Blind, but Now I See
- •From Theory to Practice
- •Format This: GIFs, JPEGs, and Such
- •Loves logos, typography, and long walks in the woods
- •GIFs in Photoshop
- •JPEG, the Other White Meat
- •Optimizing GIFs and JPEGs
- •Expanding on Compression
- •Make your JPEGS smaller
- •Combining sharp and blurry
- •Animated GIFs
- •Creating Animations in ImageReady
- •Typography
- •The ABCs of Web Type
- •Anti-Aliasing
- •Specifying Anti-Aliasing for Type
- •General tips
- •General Hints on Type
- •The Sans of Time
- •Space Patrol
- •Lest We Fail to Repeat Ourselves
- •Accessibility, Thy Name Is Text
- •Slicing and Dicing
- •Thinking Semantically
- •Tag Soup and Crackers
- •CSS to the Rescue…Sort of
- •Separation of Style from Content
- •CSS Advantages: Short Term
- •CSS Advantages: Long Term
- •Compatibility Problems: An Overview
- •Working with Style Sheets
- •Types of Style Sheets
- •External style sheets
- •Embedding a style sheet
- •Adding styles inline
- •Fear of Style Sheets: CSS and Layout
- •Fear of Style Sheets: CSS and Typography
- •Promise and performance
- •Font Size Challenges
- •Points of contention
- •Point of no return: browsers of the year 2000
- •Absolute size keywords
- •Relative keywords
- •Length units
- •Percentage units
- •Looking Forward
- •11 The Joy of JavaScript
- •What Is This Thing Called JavaScript?
- •The Web Before JavaScript
- •JavaScript, Yesterday and Today
- •Sounds Great, but I’m an Artist. Do I Really Have to Learn This Stuff?
- •Educating Rita About JavaScript
- •Don’t Panic!
- •JavaScript Basics for Web Designers
- •The Dreaded Text Rollover
- •The Event Handler Horizon
- •Status Quo
- •A Cautionary Note
- •Kids, Try This at Home
- •The Not-So-Fine Print
- •The Ever-Popular Image Rollover
- •A Rollover Script from Project Cool
- •Windows on the World
- •Get Your <HEAD> Together
- •Avoiding the Heartbreak of Linkitis
- •Browser Compensation
- •JavaScript to the Rescue!
- •Location, location, location
- •Watching the Detection
- •Going Global with JavaScript
- •Learning More
- •12 Beyond Text/Pictures
- •You Can Never Be Too Rich Media
- •Server-Side Stuff
- •Where were you in ‘82?
- •Indiana Jones and the template of doom
- •Serving the project
- •Doing More
- •Mini-Case Study: Waferbaby.com
- •Any Size Kid Can Play
- •Take a Walk on the Server Side
- •Are You Being Served?
- •Advantages of SSI
- •Disadvantages of SSI
- •Cookin’ with Java
- •Ghost in the Virtual Machine
- •Java Woes
- •Java Woes: The Politically Correct Version
- •Java Joys
- •Rich Media: Exploding the “Page”
- •Virtual Reality Modeling Language (VRML)
- •SVG and SMIL
- •SMIL (through your fear and sorrow)
- •Romancing the logo
- •Sounds dandy, but will it work?
- •Promises, Promises
- •Turn on, Tune in, Plug-in
- •A Hideous Breach of Reality
- •The ubiquity of plug-ins
- •The Impossible Lightness of Plug-ins
- •Plug-ins Most Likely to Succeed
- •Making It Work: Providing Options
- •The “Automagic Redirect”
- •The iron-plated sound console from Hell
- •The Trouble with Plug-ins
- •If Plug-ins Run Free
- •Parting Sermon
- •13 Never Can Say Goodbye
- •Separation Anxiety
- •A List Apart
- •Astounding Websites
- •The Babble List
- •Dreamless
- •Evolt
- •Redcricket
- •Webdesign-l
- •When All Else Fails
- •Design, Programming, Content
- •The Big Kahunas
- •Beauty and Inspiration
- •Index
248 HOW: Visual Tools: Slicing and Dicing
Figure 9.13
Here is a Photoshop web layout that combines photography, logos, and interface elements. We used this layout to sell a final web design to JazzRadio.Net (www.jazzradio.net).
SLICING AND DICING
Photoshop is the primary tool used to design navigational menus and their associated text (unless these menus are created in CSS, per the preceding discussion). Photoshop and Illustrator are also used to create assorted navigational elements such as arrows and buttons. The larger and more commercial the site, the greater the pressure to create uniquely branded elements.
These elements can be created in separate image documents. For instance, you might create hundreds of arrows in Illustrator before choosing one for your design. Similarly, you might (and probably will) go through several rounds of logo development.
But after they are created and chosen, all of these elements are generally layered into a single Photoshop comp, which is used to sell the work to the client (see Figure 9.13). Of course, as we’ve just said (and as Chapter 7 explained), this “selling” is a multistage process, with continual refinement occurring based on research, user testing, and the client’s strange whims.
Taking Your Talent to the Web |
249 |
After it’s sold, production begins, and at this point Photoshop’s ImageReady module comes into its own. Knives were made to slice cake, and ImageReady was made to slice web comps. The process begins by dragging Photoshop guidelines across any area that will have to be sliced—for instance, dragging guidelines to separate one menu bar item from the next (see Figure 9.14).
Figure 9.14
The next phase is dragging Photoshop’s guides to mark areas to be converted to slices in the ImageReady module. (Photoshop 6 can create the slices itself.) Though slicing such comps is the normal next step, for this project we opened a text editor and re-created the
layout in HTML and CSS to minimize bandwidth and enable the layout to squash or stretch in true “liquid” fashion.
With Photoshop 6, you can create and name slices right in the Photoshop program itself. With Photoshop 5.5, having dragged guides, you “Jump to ImageReady” via the File menu and automatically convert your guides to slices at the touch of a button. ImageReady generates the relevant HTML, animations (if any), and JavaScript rollover functions (if any). We don’t mean to imply that this happens instantly, of course. There is a great deal of typing, dragging, and layer selection involved.
Rollovers are created by selecting new layers for each rollover state and typing the relevant URL and text (if any) in the Slices dialog box. Now you can see why rollover states are visually designed during the comping phase. Not only does this satisfy the client, it also enables you to focus on production tasks without worrying about previously unconsidered design issues.
250 HOW: Visual Tools: Slicing and Dicing
Performing all these production tasks is a fairly straightforward process, and the Photoshop manual spells it out so completely that we won’t bother doing so here. One thing Photoshop’s manual does not emphasize (but we will) is that you can often replace selected slices with bandwidth-friendly HTML and CSS equivalents. For example, instead of generating a large brown GIF image, you can generate an empty table cell filled with the appropriate background color, merely by choosing No Image from the Type drop-down menu.
This by no means converts a browser-centric, brand-heavy site into a light, accessible one. It does, however, help reduce overall file size, and it does make life a bit easier for those using nontraditional browsers, given that this will be one less pointless image to trouble them with its incomprehensibility.
After the process is completed, sophisticated web designers take the HTML and JavaScript generated by ImageReady, open it in an HTML text editor such as BBEdit, PageSpinner, or HomeSite, and edit as needed. For example, you might substitute a simpler JavaScript function for one generated by ImageReady.
ImageReady’s JavaScript is verily a two-edged sword. Novices and experienced web designers in a hurry can rightly consider ImageReady’s automated scripting a godsend. But it is equally easy to generate massively confusing or even completely dysfunctional scripts until you familiarize yourself with the process. The first time we used ImageReady to automatically generate image rollovers, we ended up with a folder full of bizarrely named duplicate slices and a script that changed every image on the page at the slightest movement of the mouse.
Then we read the manual.
Most professionals will use ImageReady to generate slices and raw HTML, then tighten up its markup for better standards compliance and lower bandwidth, and replace its often complex scripts with simpler ones. In large web agencies, web technicians will perform these tasks.
Taking Your Talent to the Web |
251 |
THINKING SEMANTICALLY
Photoshop and ImageReady perform vital tasks splendidly, but what they cannot do is generate semantic websites predicated on the separation of style from content. Being visual tools, they necessarily create visual sites— and of course this is what most clients want and what most designers are comfortable with. But this is not the only way and not necessarily the best way to create websites.
Visual sites are a comforting link to the past, to our history of print and package design—of concrete objects made beautiful and intelligible through precise design. Semantic sites are something else again.
Because they are rooted in images, and images are necessarily of fixed and specific sizes, Photoshop and ImageReady generate image-laden sites laid out in HTML tables with specific heights and widths. They do not generate the Liquid Design we discussed in Chapter 2 because it is not in the nature of a pixel-based program to develop abstractions of form. And certainly they cannot separate style from content because style is their content.
So separating style from content becomes your job, if you choose to accept it. As an interim step, what we’ve done in our shop over the past two years is confine ImageReady’s slicing skills to key elements that must be precisely sized—for instance, to branded navigational menu bars. But whenever possible, instead of slicing entire comps to create precise graphic web layouts, we use our comps as guidelines to create HTML (or, even better) CSS equivalents that are loose, flexible, and fairly minimalist.
This process enables us to create templates that function as “content containers.” Such sites are still branded and still function as all sites function, but they are less tied down by fixed elements than traditional sites. This makes them easier to revise and update (just change a style sheet) and harder for clients to screw up when they take over the maintenance chores. It also makes them easier for nontraditional browsers to process and positions them for the next phase of web development.
252 HOW: Visual Tools: Thinking Semantically
We have now broached the vital next step in the web’s history: the separation of style from content. Meanwhile, in our discussion of web typography, we have so far avoided the specifics of coping with actual web texts as opposed to decorative elements. So maybe it’s time to look at a technology that handles both the separation of style from content and the need for precise typographic control of web text.
The people of earth call it CSS, and the next chapter will explain how it works—and what to do when it stops working.
chapter 10
Style Sheets for
Designers
IN THE BEGINNING WAS THE WORD: without style and unadorned on a plain gray background.
The scientists who envisioned the Web saw it as a place for reasoned discourse conducted through documents whose structure was as logical as the arguments they propounded. HTML would present content and structure, and the browser (or User Agent) would interpret it visually, according to its own built-in rules of display. <h1>Headlines</h1> would look like whatever the browser decided they should look like (typically, 24pt. Times). <p>Paragraphs</p> would look like whatever the browser decided they should look like (typically, 12pt. Times).
In early browsers such as Mosaic and Netscape 1.0, web page backgrounds were generally gray. Why did browser developers choose this dingy color? The answers are lost in the mists of time. In other words, we have no idea. But we do have a theory. Namely, images seemed to want to appear against a black background for maximum contrast and impact. Text, of course, wanted to appear on white. We’re guessing that the makers of the first browsers compromised by giving us a washed-out gray that would provide rudimentary contrast for either type of foreground element. Regardless of their reasons, the resulting web pages were not much to look at.