Effective and Efficient Design with CSS3

37
1 Effective & Efficient Design with CSS3 September 23, 2010 Web Directions USA Zoe Mickley Gillenwater @ zomigi

description

 

Transcript of Effective and Efficient Design with CSS3

Page 1: Effective and Efficient Design with CSS3

1

Effective & Efficient Design with CSS3September 23, 2010Web Directions USAZoe Mickley Gillenwater@ zomigi

Page 2: Effective and Efficient Design with CSS3

2

What I do

BooksFlexible Web Design: Creating Liquid and Elastic Layouts with CSSwww.flexiblewebbook.com

Stunning CSS3: A Project-based Guide to the Latest in CSSwww.stunningcss3.com

WebFreelance graphic designer and web developerCSS consultantMember of Adobe Task Force for WaSP

now

soon

Page 3: Effective and Efficient Design with CSS3

3

What is CSS3?

See modules at www.w3.org/Style/CSS/current-work

Page 4: Effective and Efficient Design with CSS3

4

Current status

Page 5: Effective and Efficient Design with CSS3

5

Use the parts of CSS3 that:✔ have generally stable syntax.✔ have good support.✔ don't harm non-supporting browsers by

their lack.

Page 6: Effective and Efficient Design with CSS3

6

Progressive enhancement

Page 7: Effective and Efficient Design with CSS3

7

Progressive enhancement…aims to deliver the best possible experience to the widest possible audience — whether your users are viewing your sites on an iPhone, a high-end desktop system, a Kindle, or hearing them on a screen-reader, their experience should be as fully featured and functional as possible.Designing with Progressive Enhancement,

www.filamentgroup.com/dwpe

Page 8: Effective and Efficient Design with CSS3

8

A few of the things you can use...

Photo by Kristin Roach, www.flickr.com/photos/kristinroach/3995676135

Page 9: Effective and Efficient Design with CSS3

9

border-radius

www.blueskyresumes.com, http://blog.gesteves.com, http://nicolasgallagher.com/demo/pure-css-speech-bubbles/bubbles.html

Backgrounds and Borders Module

Page 10: Effective and Efficient Design with CSS3

10

box-shadow

www.fredssoldater.se, http://chris-armstrong.com, http://girliemac.com/sandbox/button.html, http://weston.ruter.net/2009/06/15/multiple-borders-via-css-box-shadow

Backgrounds and Borders Module

Page 11: Effective and Efficient Design with CSS3

11

text-shadow

http://desandro.com, http://chunkytheme.tumblr.com, http://safe.tumblr.com/theme/preview/5932, http://sixrevisions.com/css/how-to-create-inset-typography-with-css3, , www.time2project.com

Text Module

Page 12: Effective and Efficient Design with CSS3

12

Gradients

http://designindevelopment.com/demos/grooveshark, www.broken-links.com/tests/studio_effect, www.yummly.com, http://nimbupani.com/sexy-css3-buttons.html

Image Values Module

Page 13: Effective and Efficient Design with CSS3

13

RGBA and HSLA

http://24ways.org, http://css-tricks.com/text-blocks-over-image, www.marcofolio.net/css/sweet_tabbed_navigation_using_css3.html

Color Module

Page 14: Effective and Efficient Design with CSS3

14

@ font-face

www.blueskyresumes.com, www.jasonsantamaria.com, http:// lostworldsfairs.com/atlantis, www.fredssoldater.se

Fonts Module

Page 15: Effective and Efficient Design with CSS3

15

Transforms

http://butterlabel.com, http://forabeautifulweb.com, http://girliemac.com/sandbox/dock.html, http://lab.simurai.com/css/tilt-shift

2D Transforms Module

Page 16: Effective and Efficient Design with CSS3

16

Benefits of CSS3

Decreasedevelopment timemaintenance timepage loading time

Increaseusabilityaccessibilityadaptability across devicessearch engine placement

(besides looking cool)

Page 17: Effective and Efficient Design with CSS3

17

Reduced development and maintenance time• Less images, Flash, JavaScript• Streamlined markup

Page 18: Effective and Efficient Design with CSS3

18

Increased page performance• Smaller file sizes• Fewer HTTP requests

Reducing the number of HTTP requests…is the most important guideline for improving performance for first time visitors.Yahoo! Exceptional Performance Team,

http://developer.yahoo.com/performance/rules.html

Page 19: Effective and Efficient Design with CSS3

19

Better search engine placement• Google uses speed as ranking factor• Real text instead of image or Flash text

Page 20: Effective and Efficient Design with CSS3

20

Increased usability• Real text• Optimized styles based on device

capabilities

Page 21: Effective and Efficient Design with CSS3

21

Real-world example

Page 22: Effective and Efficient Design with CSS3

22

Before CSS3

FF 3.6 IE 8 IE 6HTTP requests 36 37 47Loading time 1.5 1.3 3seconds

Page 23: Effective and Efficient Design with CSS3

23

The nav barinactive

hovered

current page indicator

Before: 8 images

Page 24: Effective and Efficient Design with CSS3

24

The nav barinactive

hovered

current page indicator

After: 1 image

Before: 8 images

Page 25: Effective and Efficient Design with CSS3

25

Before CSS3, optimized

FF 3.6 IE 8 IE 6HTTP requests 29 30 33Loading time 1.3 1.15 2

13% 11% 33%seconds

decrease

Page 26: Effective and Efficient Design with CSS3

26

After CSS3

FF 3.6 IE 8 IE 6HTTP requests 22 23 24Loading time 1.1 1 1.5

15% 13% 25%seconds

decrease

Page 27: Effective and Efficient Design with CSS3

27

IE 9 beta

Page 28: Effective and Efficient Design with CSS3

28

IE 8

Page 29: Effective and Efficient Design with CSS3

29

IE 6

Page 30: Effective and Efficient Design with CSS3

30

Wrapping tabs

Larger text + narrow window = ugly Amazon double-row tabs from 2000

Page 31: Effective and Efficient Design with CSS3

31

Media query for nav bar@media all and (max-width:52em) { #swoosh { display: none; } #mainnav { padding: 8px 0; } #mainnav ul { margin: 0; } #mainnav li { margin-left: 12px; padding: 0; border: none; -moz-border-radius: 0; -webkit-border-radius: 0; border-radius: 0; background: none; } #mainnav li:hover { background: none; }}

English translation:Up to a maximum

width of 52 ems, use

these styles. Once you

get past 52 ems, use

the regular styles.

Page 32: Effective and Efficient Design with CSS3

32

Media queries for mobilemin-widthmax-widthdevice-widthmin-device-widthmax-device-widthorientation-webkit-min-device-pixel-ratio

Page 33: Effective and Efficient Design with CSS3

33

Targeting iPhone, Android, etc.

(min-width: 320px) and (max-width: 480px)(min-device-width: 320px) and (max-device-width: 480px)(max-device-width: 480px)(min-width: 321px)(max-width: 320px)

@media screen andportrait & landscape

portrait & landscape

portrait & landscape

landscape only

portrait only

Page 34: Effective and Efficient Design with CSS3

34

Targeting iPad

(min-device-width: 768px) and (max-device-width: 1024px)(min-width: 769px)(min-device-width: 481px) and (max-device-width: 1024px) and (orientation: landscape)(min-device-width: 481px) and (max-device-width: 1024px) and (orientation: portrait)

@media screen andportrait & landscape

landscape only

landscape only

portrait only

Page 35: Effective and Efficient Design with CSS3

35

Viewport meta tagForces mobile devices to scale viewport to actual device width

<meta name="viewport" content="width=device-width, minimum-scale=1.0, maximum-scale=1.0">

Page 36: Effective and Efficient Design with CSS3

36

Learn moreDownload slides, get links:www.zomigi.com/blog/web-directions-usa/

Book:www.stunningcss3.com

Zoe Mickley Gillenwater@ zomigidesign@ zomigi.comwww.zomigi.com

Page 37: Effective and Efficient Design with CSS3

37

Questions?

Zoe Mickley Gillenwater@ zomigidesign@ zomigi.comwww.zomigi.com