designing and developing windowed interfaces for web apps

52
for Web Applications

Upload: steve-smith

Post on 01-Nov-2014

4.798 views

Category:

Technology


3 download

DESCRIPTION

Learn to design and code rich, desktop caliber application interfaces for your web applications.

TRANSCRIPT

Page 1: Designing and Developing Windowed Interfaces for Web Apps

for Web Applications

Page 2: Designing and Developing Windowed Interfaces for Web Apps

Steve SmithHi, I’m

http://sidebarcreative.comhttp://orderedlist.com@orderedlist

Page 3: Designing and Developing Windowed Interfaces for Web Apps

Windowed Interface?What is a

Page 4: Designing and Developing Windowed Interfaces for Web Apps
Page 5: Designing and Developing Windowed Interfaces for Web Apps

Advantages• Important interface elements are always in

sight and available

• Allows for independent scrolling of various content sections

• Feels more like a desktop application

• Lends itself to more natural AJAX integration

Page 6: Designing and Developing Windowed Interfaces for Web Apps

Concerns• Less room for content areas because of

persistent navigation or header

• Requires fluidity in your layout

• More difficult to replicate the interaction of a desktop application

Page 7: Designing and Developing Windowed Interfaces for Web Apps

Windowed InterfaceHow to design a

Page 8: Designing and Developing Windowed Interfaces for Web Apps

Common ElementsIdentify

Page 9: Designing and Developing Windowed Interfaces for Web Apps
Page 10: Designing and Developing Windowed Interfaces for Web Apps
Page 11: Designing and Developing Windowed Interfaces for Web Apps
Page 12: Designing and Developing Windowed Interfaces for Web Apps
Page 13: Designing and Developing Windowed Interfaces for Web Apps

Keep it SimpleRemember to

Page 14: Designing and Developing Windowed Interfaces for Web Apps
Page 15: Designing and Developing Windowed Interfaces for Web Apps

Remember to Think Thin• Thin doesn’t mean small

• Take only the space necessary for each element

• The fewer items you need to show, the more breathing room you can give them, which increases usability

• Maximize the clickable area on any visually small elements

Page 16: Designing and Developing Windowed Interfaces for Web Apps
Page 17: Designing and Developing Windowed Interfaces for Web Apps

Window FlexibilityPrepare for

Page 18: Designing and Developing Windowed Interfaces for Web Apps
Page 19: Designing and Developing Windowed Interfaces for Web Apps
Page 20: Designing and Developing Windowed Interfaces for Web Apps

Cursor StylesThink about

Page 21: Designing and Developing Windowed Interfaces for Web Apps

vs.

Arrow Cursor Pointer Cursor

Page 22: Designing and Developing Windowed Interfaces for Web Apps

Fight!!!

Page 23: Designing and Developing Windowed Interfaces for Web Apps

Use the arrow pointer everywhere except on standard text links.

Suggestion:

Page 24: Designing and Developing Windowed Interfaces for Web Apps

Why alter the default behavior?• No other application except browsers use the

pointer cursor

• The arrow cursor feels more precise

• Often the click behavior only alters the current page, not loading a new one

• Don’t rely on the pointer cursor to indicate if an element is clickable

Page 25: Designing and Developing Windowed Interfaces for Web Apps

ConsistencyNotes about

Page 26: Designing and Developing Windowed Interfaces for Web Apps

Be consistent in...• Navigational treatments

• Button styles and placement

• Cursor treatments

• Graphical elements across sections

• Section width, height, and placement

Page 27: Designing and Developing Windowed Interfaces for Web Apps
Page 28: Designing and Developing Windowed Interfaces for Web Apps

Windowed InterfaceHow to develop a

Page 29: Designing and Developing Windowed Interfaces for Web Apps

Think in GroupsStart simple:

Page 30: Designing and Developing Windowed Interfaces for Web Apps

#header

#content

#secondary #main

Page 31: Designing and Developing Windowed Interfaces for Web Apps

HTML

<div id="header"> <h1>My Web Application</h1></div><div id="content"> <div id="main"> <h2>Main Content</h2> ... </div> <div id="secondary"> <h2>Secondary Content</h2> ... </div></div>

Page 32: Designing and Developing Windowed Interfaces for Web Apps

Position and StyleStart to

Page 33: Designing and Developing Windowed Interfaces for Web Apps

Style the Header

#header { height:60px; line-height:60px; width:100%; position:absolute; overflow:hidden;}

Page 34: Designing and Developing Windowed Interfaces for Web Apps

Style the Content Area

#content { position:absolute; top:60px; left:0; right:0; bottom:0;}

Page 35: Designing and Developing Windowed Interfaces for Web Apps

Style the Main Content

#main { padding:10px 15px; position:absolute; top:0; left:280px; right:0; bottom:0; overflow:auto; border-left:1px solid #717171;}

Page 36: Designing and Developing Windowed Interfaces for Web Apps

Style the Sidebar

#secondary { padding:10px 15px; position:absolute; top:0; left:0; width:250px; bottom:0; overflow:auto;}

Page 37: Designing and Developing Windowed Interfaces for Web Apps

Examine the ResultsGetting to

Page 38: Designing and Developing Windowed Interfaces for Web Apps
Page 39: Designing and Developing Windowed Interfaces for Web Apps
Page 40: Designing and Developing Windowed Interfaces for Web Apps
Page 41: Designing and Developing Windowed Interfaces for Web Apps
Page 42: Designing and Developing Windowed Interfaces for Web Apps

IE6 and CSS ExpressionsWorking with

Page 43: Designing and Developing Windowed Interfaces for Web Apps

Conditional Comments

<!--[if IE 6]><link rel="stylesheet"

href="css/ie6.css" /><![endif]-->

Page 44: Designing and Developing Windowed Interfaces for Web Apps

ie6.css: Basic Styles

html { overflow:hidden;}

body { height:100%; overflow:auto;}

Page 45: Designing and Developing Windowed Interfaces for Web Apps

ie6.css: Fix the Height

#secondary, #main {height:expression(

document.body.scrollTop + document.body.clientHeight - document.getElementById('header').offsetHeight - 20

);}

Page 46: Designing and Developing Windowed Interfaces for Web Apps

ie6.css: Fix the Width

#main { width:expression(

document.body.scrollLeft + document.body.clientWidth - document.getElementById('secondary').offsetWidth - 31

);}

Page 47: Designing and Developing Windowed Interfaces for Web Apps

Internet Explorer 6Testing in

Page 48: Designing and Developing Windowed Interfaces for Web Apps
Page 49: Designing and Developing Windowed Interfaces for Web Apps

Just the BeginingThis is

Page 50: Designing and Developing Windowed Interfaces for Web Apps

Questions?Are there any

Page 51: Designing and Developing Windowed Interfaces for Web Apps

Thank YouA sincere

Copyright © 2009 Steve Smith

Page 52: Designing and Developing Windowed Interfaces for Web Apps

for Web Applications