SlideShare a Scribd company logo
1 of 69
Download to read offline
QUALITY DEVELOPMENT
WITH CSS3


Shay Howe
September 2011
www.shayhowe.com – @letscounthedays
SHAY HOWE
               www.shayhowe.com – @letscounthedays




Quality Development with HTML5 & CSS3                @letscounthedays
HTML5                              CSS3
  Markup language to give               Presentation language to
   content structure and                 give content style and
         meaning.                             appearance.




Quality Development with HTML5 & CSS3                    @letscounthedays
Quality Development with HTML5 & CSS3   @letscounthedays
Quality Development with HTML5 & CSS3   @letscounthedays
CSS3
Quality Development with HTML5 & CSS3   @letscounthedays
VENDOR PREFIXES
Chrome                                  Opera
-­‐chrome-­‐                            -­‐o-­‐

Microsoft                               Webkit
-­‐ms-­‐                                -­‐webkit-­‐

Mozilla
-­‐moz-­‐




Quality Development with HTML5 & CSS3                  @letscounthedays
VENDOR PREFIXES
section	
  {
  -­‐chrome-­‐border-­‐radius:	
  5px;
  -­‐ms-­‐border-­‐radius:	
  5px;
  -­‐moz-­‐border-­‐radius:	
  5px;
  -­‐o-­‐border-­‐radius:	
  5px;
  -­‐webkit-­‐border-­‐radius:	
  5px;
  border-­‐radius:	
  5px;
}




Quality Development with HTML5 & CSS3    @letscounthedays
SELECTORS



Quality Development with HTML5 & CSS3   @letscounthedays
ATTRIBUTE
a[target]	
  {	
  ...	
  }
Elements with the attribute


a[src="http://www.shayhowe.com/"]	
  {	
  ...	
  }
Elements with the attribute value


a[src*="shayhowe"]	
  {	
  ...	
  }
Elements with an attribute value containing...


a[src^="https"]	
  {	
  ...	
  }
Elements with an attribute value starting with...


a[src$=".pdf"]	
  {	
  ...	
  }
Elements with an attribute value ending with...



Quality Development with HTML5 & CSS3               @letscounthedays
:TARGET PSEUDO-CLASS
section#web-­‐design:target	
  {	
  ...	
  }

http://www.shayhowe.com/#web-­‐design




Quality Development with HTML5 & CSS3          @letscounthedays
ELEMENT PSEUDO-CLASSES
input[type="text"]:enabled	
  {	
  ...	
  }
Enabled input


input[type="text"]:disabled	
  {	
  ...	
  }
Disabled input


input:checked	
  {	
  ...	
  }
Checked input




Quality Development with HTML5 & CSS3          @letscounthedays
STRUCTURAL PSEUDO-CLASSES
:nth-­‐child(3)	
  {	
  ...	
  }
Third child element

:nth-­‐child(odd)	
  {	
  ...	
  }
Odd child elements (1, 3, 5 ...)

:nth-­‐child(even)	
  {	
  ...	
  }
Even child elements (2, 4, 6 ...)

:nth-­‐child(3n)	
  {	
  ...	
  }
Child elements with a multiple of 3 (3, 6, 9 ...)

:nth-­‐child(3n+11)	
  {	
  ...	
  }
Child elements with a multiple of 3 starting at 11 (11, 14, 17 ...)




Quality Development with HTML5 & CSS3                                 @letscounthedays
STRUCTURAL PSEUDO-CLASSES
:nth-­‐child(-­‐n+3)	
  {	
  ...	
  }
First 3 child elements

:nth-­‐last-­‐child(-­‐n+3)	
  {	
  ...	
  }
Last 3 child elements

:not(:first-­‐of-­‐type):not(:last-­‐of-­‐type)	
  {	
  ...	
  }
All elements but the first and last elements




Quality Development with HTML5 & CSS3                  @letscounthedays
STRUCTURAL PSEUDO-CLASSES
:nth-­‐last-­‐child(3)	
  {	
  ...	
  }
Third to last child element

:first-­‐child	
  {	
  ...	
  }
Last child element (also works with :last-­‐child)

:nth-­‐of-­‐type(3)	
  {	
  ...	
  }
Third child element of this type of element

:nth-­‐last-­‐of-­‐type(3)	
  {	
  ...	
  }
Third to last child element of this type of element

:first-­‐of-­‐type	
  {	
  ...	
  }
First child element of this type of element (also works with :last-­‐of-­‐type)




Quality Development with HTML5 & CSS3                                         @letscounthedays
STRUCTURAL PSEUDO-CLASSES
:only-­‐child	
  {	
  ...	
  }
Only child element

:only-­‐of-­‐type	
  {	
  ...	
  }
Only child element of this type of element

:empty	
  {	
  ...	
  }
Empty element (<p></p>)

:not(p)	
  {	
  ...	
  }
Anything but this type of element




Quality Development with HTML5 & CSS3        @letscounthedays
TEXTURAL PSEUDO-CLASSES
:first-­‐letter	
  {	
  ...	
  }
First letter within the element

:first-­‐line	
  {	
  ...	
  }
First line within the element

:before	
  {	
  ...	
  }
Add content before an element

:after	
  {	
  ...	
  }
Add content after an element

::selection	
  {	
  ...	
  }
Selected or highlighted element




Quality Development with HTML5 & CSS3   @letscounthedays
SELECTORS




Quality Development with HTML5 & CSS3   @letscounthedays
BACKGROUNDS



Quality Development with HTML5 & CSS3   @letscounthedays
MULTIPLE BACKGROUNDS
section	
  {
  background:
    url(foreground.png)	
  no-­‐repeat	
  0	
  0,
    url(middle-­‐ground.png)	
  no-­‐repeat	
  0	
  0,
    url(background.png)	
  no-­‐repeat	
  0	
  0;
}

section	
  {
  background:
    url(section-­‐left.png)	
  no-­‐repeat	
  0	
  0,
    url(section-­‐right.png)	
  no-­‐repeat	
  100%	
  0;
}


Quality Development with HTML5 & CSS3                @letscounthedays
BACKGROUND-SIZE
section	
  {
  background-­‐size:	
  178px	
  238px;
}

section	
  {
  background-­‐size:	
  85%	
  auto;
}




Quality Development with HTML5 & CSS3     @letscounthedays
BACKGROUND-CLIP
section	
  {
  background-­‐clip:	
  border-­‐box;
}

section	
  {
  background-­‐clip:	
  padding-­‐box;
}




Quality Development with HTML5 & CSS3    @letscounthedays
BACKGROUND-ORIGIN
section	
  {
  background-­‐origin:	
  border-­‐box;
}

section	
  {
  background-­‐origin:	
  content-­‐box;
}




Quality Development with HTML5 & CSS3      @letscounthedays
BACKGROUNDS




Quality Development with HTML5 & CSS3   @letscounthedays
BORDERS



Quality Development with HTML5 & CSS3     @letscounthedays
BORDER-RADIUS
section	
  {
  border-­‐radius:	
  5px;
}

section	
  {
  border-­‐radius:	
  5px	
  20px	
  60px	
  0;
}




Quality Development with HTML5 & CSS3             @letscounthedays
ELLIPTICAL CORNERS
section	
  {
  border-­‐radius:
    60px	
  /	
  30px;
}

section	
  {
  border-­‐radius:
    5px	
  10px	
  6px	
  20px	
  /	
  10px	
  30px	
  40px	
  80px;
}




Quality Development with HTML5 & CSS3                          @letscounthedays
BORDER-IMAGE
section	
  {
       border-­‐image:	
  url(paper.png)	
  10;
       border-­‐width:	
  10px;
}
	
  	
  
section	
  {
       border-­‐image:	
  url(paper.png)	
  48	
  22	
  30	
  36;
       border-­‐width:	
  48px	
  22px	
  30px	
  36px;
}




Quality Development with HTML5 & CSS3                        @letscounthedays
BORDER-IMAGE KEYWORDS
section	
  {
  border-­‐image:	
  url(paper.png)	
  10	
  repeat;
  border-­‐width:	
  10px;
}

section	
  {
border-­‐image:	
  url(paper.png)	
  10	
  stretch;
border-­‐width:	
  10px;
}




Quality Development with HTML5 & CSS3                 @letscounthedays
BORDERS




Quality Development with HTML5 & CSS3   @letscounthedays
GRADIENTS



Quality Development with HTML5 & CSS3   @letscounthedays
LINEAR-GRADIENT
section	
  {
       background-­‐color:
          #f60;	
  
       background-­‐image:
          url(gradient.png);	
  
	
  	
  background-­‐image:
          linear-­‐gradient(top,	
  #f60,	
  #f00);	
  
}




Quality Development with HTML5 & CSS3                     @letscounthedays
COLOR STOPS
section	
  {
  background-­‐image:
     linear-­‐gradient(left,	
  
     #f9e600,	
  
     #6f156c	
  35%,	
  
     #fd7c00	
  65%,	
  
     #002874);
}




Quality Development with HTML5 & CSS3   @letscounthedays
RADIAL-GRADIENT
section	
  {	
  
  background-­‐image:
     radial-­‐gradient(center	
  45deg,
     circle	
  closest-­‐corner,	
  
     #ff0,	
  #f60);
}




Quality Development with HTML5 & CSS3     @letscounthedays
GRADIENTS




Quality Development with HTML5 & CSS3   @letscounthedays
ADDITIONAL
                         FEATURES


Quality Development with HTML5 & CSS3   @letscounthedays
CALC
section	
  {
  width:	
  600px;
  width:	
  calc(100%	
  -­‐	
  20px);
}

section	
  {
  width:	
  100px;
  width:	
  calc(100%	
  -­‐	
  20px	
  /	
  6);
}




Quality Development with HTML5 & CSS3              @letscounthedays
FONT-FACE
@font-­‐face	
  {
  font-­‐family:	
  "Museo	
  Slab";
  src:	
  url("MuseoSlab.svg")	
  format("svg");
  src:	
  url("MuseoSlab.ttf")	
  format("truetype");
  src:	
  url("MuseoSlab.woff")	
  format("woff");
}

h1	
  {
  font-­‐family:	
  "Museo	
  Slab",	
  Georgia,	
  serif;	
  
}




Quality Development with HTML5 & CSS3                   @letscounthedays
FONT-FACE




Quality Development with HTML5 & CSS3   @letscounthedays
MULTI-COLUMN LAYOUTS
section	
  {
  column-­‐count:	
  3;
  column-­‐gap:	
  20px;
}

section	
  {
  column-­‐width:	
  220px;
  column-­‐gap:	
  40px;
  column-­‐rule:	
  1px	
  solid	
  rgb(255,255,255);
}




Quality Development with HTML5 & CSS3              @letscounthedays
MULTI-COLUMN LAYOUTS




Quality Development with HTML5 & CSS3   @letscounthedays
BOX & TEXT SHADOWS
select	
  {
  box-­‐shadow:	
  3px	
  3px	
  5px	
  rgba(0,	
  0,	
  0,	
  0.4);
}

section	
  {
  box-­‐shadow:
    inset	
  0	
  3px	
  5px	
  rgba(0,	
  0,	
  0,	
  0.4),
    0	
  2px	
  4px	
  rgba(0,	
  0,	
  0,	
  0.5);
  text-­‐shadow:	
  0	
  -­‐1px	
  3px	
  rgba(0,	
  0,	
  0,	
  0.6);
}




Quality Development with HTML5 & CSS3                          @letscounthedays
BOX & TEXT SHADOWS




Quality Development with HTML5 & CSS3   @letscounthedays
OPACITY
section	
  {
  background-­‐color:	
  rgba(255,	
  102,	
  0,	
  0.5);
}

section	
  {
  background-­‐color:	
  hlsa(24,	
  100%,	
  100%,	
  0.5);
}




Quality Development with HTML5 & CSS3                 @letscounthedays
TEXT-OVERFLOW
select	
  {
  text-­‐overflow:	
  ellipsis;
}




Quality Development with HTML5 & CSS3   @letscounthedays
TRANSFORMS



Quality Development with HTML5 & CSS3   @letscounthedays
ROTATE
section	
  {
  transform:	
  rotate(10deg);
}

section	
  {
  transform:	
  rotate(-­‐30deg);
}




Quality Development with HTML5 & CSS3   @letscounthedays
ORIGIN
section	
  {
  transform:	
  rotate(30deg);
  transform-­‐origin:	
  100%	
  0;
}

section	
  {
  transform:	
  rotate(30deg);
  transform-­‐origin:	
  right	
  top;
}




Quality Development with HTML5 & CSS3    @letscounthedays
SCALE
section	
  {
  transform:	
  scaleX(1.5);
  transform:	
  scaleY(.4);
}

section	
  {
  transform:	
  scale(1.5,	
  .4);
}

section	
  {
	
  	
  transform:	
  scale(.4);
}


Quality Development with HTML5 & CSS3   @letscounthedays
SKEW
section	
  {
  transform:	
  skewX(10deg);
  transform:	
  skewY(30deg);
}

section	
  {
  transform:	
  skew(10deg,	
  30deg);
}




Quality Development with HTML5 & CSS3    @letscounthedays
TRANSLATE
section	
  {
  transform:	
  translateX(50px);
  transform:	
  translateY(10%);
}

section	
  {
  transform:	
  translate(50px,	
  10%);
}




Quality Development with HTML5 & CSS3      @letscounthedays
MULTIPLE TRANSFORMS
section	
  {
  transform:	
  rotate(30deg);
  transform:	
  scale(.4);
  transform:	
  skew(-­‐15deg,	
  -­‐15deg);
  transform:	
  translate(50px,	
  10%);
}




Quality Development with HTML5 & CSS3          @letscounthedays
HOMEWORK
3D Transforms
matrix3d
perspective
perspective-­‐origin
rotate3d
scale3d
translate3d




Quality Development with HTML5 & CSS3   @letscounthedays
TRANSFORMS




Quality Development with HTML5 & CSS3   @letscounthedays
TRANSITIONS



Quality Development with HTML5 & CSS3   @letscounthedays
TRANSITIONS
section	
  {
  transition-­‐property:	
  color;
  transition-­‐duration:	
  .25s;
  transition-­‐timing-­‐function:	
  linear;
}

section	
  {
  transition-­‐property:	
  background-­‐color;
  transition-­‐duration:	
  .5s;
  transition-­‐delay:	
  .25s;
  transition-­‐timing-­‐function:	
  ease-­‐in;
}


Quality Development with HTML5 & CSS3             @letscounthedays
TRANSITIONS
section	
  {
  transition-­‐property:	
  color,	
  background-­‐color;
  transition-­‐duration:	
  .25s,	
  .5s;
  transition-­‐delay:	
  0,	
  .25s;
  transition-­‐timing-­‐function:	
  linear,	
  ease-­‐in;
}

section	
  {
  transition:	
  
    color	
  .25s	
  linear,
    background-­‐color	
  .5s	
  .25s	
  ease-­‐in;
}


Quality Development with HTML5 & CSS3                 @letscounthedays
TRANSITIONS
section	
  {
  transition:	
  all	
  .25s	
  linear;
}

Transitionable Properties
Backgrounds, Borders, Colors, Dimensions, Fonts,
Margins, Opacity, Padding, Position, Transforms




Quality Development with HTML5 & CSS3          @letscounthedays
TRANSITIONS




Quality Development with HTML5 & CSS3   @letscounthedays
KEYFRAME
                        ANIMATIONS


Quality Development with HTML5 & CSS3   @letscounthedays
KEYFRAMES
@keyframes	
  walking	
  {
  0%	
  {	
  left:	
  0;	
  }
  50%	
  {	
  left:	
  40%;	
  }
  100%	
  {	
  left:	
  100%;	
  }
}

section	
  {
  animation-­‐name:	
  walking;
  animation-­‐duration:	
  5s;
  animation-­‐iteration-­‐count:	
  1;
  animation-­‐timing-­‐function:	
  ease-­‐in-­‐out;
}


Quality Development with HTML5 & CSS3              @letscounthedays
KEYFRAMES
section	
  {
  animation:	
  walking	
  5s	
  1	
  ease-­‐in-­‐out;
}




Quality Development with HTML5 & CSS3                    @letscounthedays
ANIMATION PROPERTIES
• animation-­‐name
• animation-­‐delay
• animation-­‐direction
• animation-­‐duration
• animation-­‐iteration-­‐count
• animation-­‐timing-­‐function




Quality Development with HTML5 & CSS3   @letscounthedays
ANIMATIONS




Quality Development with HTML5 & CSS3   @letscounthedays
MEDIA QUERIES



Quality Development with HTML5 & CSS3   @letscounthedays
SCREEN SIZE
<link	
  rel="stylesheet"
  media="screen	
  and	
  (min-­‐width:	
  960px)"	
  
  href="960.css">

@media	
  screen	
  and	
  (min-­‐width:	
  960px)	
  {
  ...
}




Quality Development with HTML5 & CSS3                     @letscounthedays
ORIENTATION
@media	
  screen	
  and	
  (min-­‐width:	
  960px)	
  and	
  
  (orientation:	
  portrait),	
  screen	
  and	
  (min-­‐
  width:	
  480px)	
  and	
  (orientation:	
  landscape)	
  {
  ...
}




Quality Development with HTML5 & CSS3                 @letscounthedays
MEDIA QUERIES
• aspect-­‐ratio
• color
• device-­‐aspect-­‐ratio
• device-­‐height
• device-­‐width
• height
• max-­‐height
• max-­‐width
• monochrome
• orientation
• resolution
• width



Quality Development with HTML5 & CSS3   @letscounthedays
QUESTIONS?
                                        Thank you!




Quality Development with HTML5 & CSS3                @letscounthedays

More Related Content

What's hot

Dive into HTML5: SVG and Canvas
Dive into HTML5: SVG and CanvasDive into HTML5: SVG and Canvas
Dive into HTML5: SVG and CanvasDoris Chen
 
Sara Soueidan: Styling and Animating Scalable Vector Graphics with CSS [CSSCo...
Sara Soueidan: Styling and Animating Scalable Vector Graphics with CSS [CSSCo...Sara Soueidan: Styling and Animating Scalable Vector Graphics with CSS [CSSCo...
Sara Soueidan: Styling and Animating Scalable Vector Graphics with CSS [CSSCo...Guillaume Kossi
 
SVG For Web Designers (and Developers)
SVG For Web Designers (and Developers) SVG For Web Designers (and Developers)
SVG For Web Designers (and Developers) Sara Soueidan
 
CSS3: Are you experienced?
CSS3: Are you experienced?CSS3: Are you experienced?
CSS3: Are you experienced?Denise Jacobs
 
The Future Of CSS
The Future Of CSSThe Future Of CSS
The Future Of CSSAndy Budd
 
Vector Graphics on the Web: SVG, Canvas, CSS3
Vector Graphics on the Web: SVG, Canvas, CSS3Vector Graphics on the Web: SVG, Canvas, CSS3
Vector Graphics on the Web: SVG, Canvas, CSS3Pascal Rettig
 
About Best friends - HTML, CSS and JS
About Best friends - HTML, CSS and JSAbout Best friends - HTML, CSS and JS
About Best friends - HTML, CSS and JSNaga Harish M
 
CSS - OOCSS, SMACSS and more
CSS - OOCSS, SMACSS and moreCSS - OOCSS, SMACSS and more
CSS - OOCSS, SMACSS and moreRuss Weakley
 
Presentation about html5 css3
Presentation about html5 css3Presentation about html5 css3
Presentation about html5 css3Gopi A
 
HTML5 and SVG
HTML5 and SVGHTML5 and SVG
HTML5 and SVGyarcub
 
Modular HTML, CSS, & JS Workshop
Modular HTML, CSS, & JS WorkshopModular HTML, CSS, & JS Workshop
Modular HTML, CSS, & JS WorkshopShay Howe
 
Trendsetting: Web Design and Beyond
Trendsetting: Web Design and BeyondTrendsetting: Web Design and Beyond
Trendsetting: Web Design and BeyondAndy Stratton
 
CSS in React - The Good, The Bad, and The Ugly
CSS in React - The Good, The Bad, and The UglyCSS in React - The Good, The Bad, and The Ugly
CSS in React - The Good, The Bad, and The UglyJoe Seifi
 
Html & Css presentation
Html  & Css presentation Html  & Css presentation
Html & Css presentation joilrahat
 

What's hot (20)

Dive into HTML5: SVG and Canvas
Dive into HTML5: SVG and CanvasDive into HTML5: SVG and Canvas
Dive into HTML5: SVG and Canvas
 
Sara Soueidan: Styling and Animating Scalable Vector Graphics with CSS [CSSCo...
Sara Soueidan: Styling and Animating Scalable Vector Graphics with CSS [CSSCo...Sara Soueidan: Styling and Animating Scalable Vector Graphics with CSS [CSSCo...
Sara Soueidan: Styling and Animating Scalable Vector Graphics with CSS [CSSCo...
 
SVG For Web Designers (and Developers)
SVG For Web Designers (and Developers) SVG For Web Designers (and Developers)
SVG For Web Designers (and Developers)
 
CSS3: Are you experienced?
CSS3: Are you experienced?CSS3: Are you experienced?
CSS3: Are you experienced?
 
CSS3 Introduction
CSS3 IntroductionCSS3 Introduction
CSS3 Introduction
 
The Future Of CSS
The Future Of CSSThe Future Of CSS
The Future Of CSS
 
Vector Graphics on the Web: SVG, Canvas, CSS3
Vector Graphics on the Web: SVG, Canvas, CSS3Vector Graphics on the Web: SVG, Canvas, CSS3
Vector Graphics on the Web: SVG, Canvas, CSS3
 
CSS3
CSS3CSS3
CSS3
 
Learn svg
Learn svgLearn svg
Learn svg
 
About Best friends - HTML, CSS and JS
About Best friends - HTML, CSS and JSAbout Best friends - HTML, CSS and JS
About Best friends - HTML, CSS and JS
 
CSS - OOCSS, SMACSS and more
CSS - OOCSS, SMACSS and moreCSS - OOCSS, SMACSS and more
CSS - OOCSS, SMACSS and more
 
Presentation about html5 css3
Presentation about html5 css3Presentation about html5 css3
Presentation about html5 css3
 
HTML5 and SVG
HTML5 and SVGHTML5 and SVG
HTML5 and SVG
 
Modular HTML, CSS, & JS Workshop
Modular HTML, CSS, & JS WorkshopModular HTML, CSS, & JS Workshop
Modular HTML, CSS, & JS Workshop
 
Trendsetting: Web Design and Beyond
Trendsetting: Web Design and BeyondTrendsetting: Web Design and Beyond
Trendsetting: Web Design and Beyond
 
CSS in React - The Good, The Bad, and The Ugly
CSS in React - The Good, The Bad, and The UglyCSS in React - The Good, The Bad, and The Ugly
CSS in React - The Good, The Bad, and The Ugly
 
Sass
SassSass
Sass
 
The Future of CSS
The Future of CSSThe Future of CSS
The Future of CSS
 
Html & Css presentation
Html  & Css presentation Html  & Css presentation
Html & Css presentation
 
css-tutorial
css-tutorialcss-tutorial
css-tutorial
 

Viewers also liked

Quality Development with HTML5
Quality Development with HTML5Quality Development with HTML5
Quality Development with HTML5Shay Howe
 
UI Design with HTML5 & CSS3
UI Design with HTML5 & CSS3UI Design with HTML5 & CSS3
UI Design with HTML5 & CSS3Shay Howe
 
Mastering CSS3 Selectors
Mastering CSS3 SelectorsMastering CSS3 Selectors
Mastering CSS3 SelectorsRachel Andrew
 
HTML5 Semantics
HTML5 SemanticsHTML5 Semantics
HTML5 SemanticsShay Howe
 
Smacking Git Around Advanced Git Tricks
Smacking Git Around   Advanced Git TricksSmacking Git Around   Advanced Git Tricks
Smacking Git Around Advanced Git Tricksrailsconf
 
The Web Design Process: A Strategy for Success
The Web Design Process: A Strategy for SuccessThe Web Design Process: A Strategy for Success
The Web Design Process: A Strategy for SuccessShay Howe
 
CSS: selectors and the box model
CSS: selectors and the box modelCSS: selectors and the box model
CSS: selectors and the box modelIdan Gazit
 
Yes, Designer, You CAN Be a Product Leader
Yes, Designer, You CAN Be a Product LeaderYes, Designer, You CAN Be a Product Leader
Yes, Designer, You CAN Be a Product LeaderShay Howe
 
Writing for the Web: The Right Strategy
Writing for the Web: The Right StrategyWriting for the Web: The Right Strategy
Writing for the Web: The Right StrategyShay Howe
 
An Intro to HTML & CSS
An Intro to HTML & CSSAn Intro to HTML & CSS
An Intro to HTML & CSSShay Howe
 
Git in a nutshell
Git in a nutshellGit in a nutshell
Git in a nutshellNelson Tai
 
Building Responsive Layouts
Building Responsive LayoutsBuilding Responsive Layouts
Building Responsive LayoutsZoe Gillenwater
 
Git and GitHub
Git and GitHubGit and GitHub
Git and GitHubJames Gray
 
Advanced Git
Advanced GitAdvanced Git
Advanced Gitsegv
 
Getting Git Right
Getting Git RightGetting Git Right
Getting Git RightSven Peters
 

Viewers also liked (20)

Quality Development with HTML5
Quality Development with HTML5Quality Development with HTML5
Quality Development with HTML5
 
UI Design with HTML5 & CSS3
UI Design with HTML5 & CSS3UI Design with HTML5 & CSS3
UI Design with HTML5 & CSS3
 
Mastering CSS3 Selectors
Mastering CSS3 SelectorsMastering CSS3 Selectors
Mastering CSS3 Selectors
 
HTML5 Semantics
HTML5 SemanticsHTML5 Semantics
HTML5 Semantics
 
Smacking Git Around Advanced Git Tricks
Smacking Git Around   Advanced Git TricksSmacking Git Around   Advanced Git Tricks
Smacking Git Around Advanced Git Tricks
 
The Web Design Process: A Strategy for Success
The Web Design Process: A Strategy for SuccessThe Web Design Process: A Strategy for Success
The Web Design Process: A Strategy for Success
 
Git in a nutshell
Git in a nutshellGit in a nutshell
Git in a nutshell
 
The git
The gitThe git
The git
 
CSS: selectors and the box model
CSS: selectors and the box modelCSS: selectors and the box model
CSS: selectors and the box model
 
Yes, Designer, You CAN Be a Product Leader
Yes, Designer, You CAN Be a Product LeaderYes, Designer, You CAN Be a Product Leader
Yes, Designer, You CAN Be a Product Leader
 
Writing for the Web: The Right Strategy
Writing for the Web: The Right StrategyWriting for the Web: The Right Strategy
Writing for the Web: The Right Strategy
 
An Intro to HTML & CSS
An Intro to HTML & CSSAn Intro to HTML & CSS
An Intro to HTML & CSS
 
CSS Selectors
CSS SelectorsCSS Selectors
CSS Selectors
 
Git in a nutshell
Git in a nutshellGit in a nutshell
Git in a nutshell
 
Intro To Git
Intro To GitIntro To Git
Intro To Git
 
Building Responsive Layouts
Building Responsive LayoutsBuilding Responsive Layouts
Building Responsive Layouts
 
Git and GitHub
Git and GitHubGit and GitHub
Git and GitHub
 
Advanced Git
Advanced GitAdvanced Git
Advanced Git
 
Git Tutorial 教學
Git Tutorial 教學Git Tutorial 教學
Git Tutorial 教學
 
Getting Git Right
Getting Git RightGetting Git Right
Getting Git Right
 

Similar to Quality CSS3 Development

Presentation html5 css3 by thibaut
Presentation html5 css3 by thibautPresentation html5 css3 by thibaut
Presentation html5 css3 by thibautThibaut Baillet
 
It's a Mod World - A Practical Guide to Rocking Modernizr
It's a Mod World - A Practical Guide to Rocking ModernizrIt's a Mod World - A Practical Guide to Rocking Modernizr
It's a Mod World - A Practical Guide to Rocking ModernizrMichael Enslow
 
A brief look at CSS3 techniques by Aaron Rodgers, Web Designer @ vzaar.com
A brief look at CSS3 techniques by Aaron Rodgers, Web Designer @ vzaar.comA brief look at CSS3 techniques by Aaron Rodgers, Web Designer @ vzaar.com
A brief look at CSS3 techniques by Aaron Rodgers, Web Designer @ vzaar.comapplicake
 
Managing responsive websites with css preprocessors.
Managing responsive websites with css preprocessors. Managing responsive websites with css preprocessors.
Managing responsive websites with css preprocessors. The University of Akron
 
Web Design Trends 2010 - What Is CSS3 All About?
Web Design Trends 2010 - What Is CSS3 All About?Web Design Trends 2010 - What Is CSS3 All About?
Web Design Trends 2010 - What Is CSS3 All About?Alexandra Lo Cascio
 
Implementing Awesome: An HTML5/CSS3 Workshop
Implementing Awesome: An HTML5/CSS3 WorkshopImplementing Awesome: An HTML5/CSS3 Workshop
Implementing Awesome: An HTML5/CSS3 WorkshopShoshi Roberts
 
Even faster web sites presentation 3
Even faster web sites presentation 3Even faster web sites presentation 3
Even faster web sites presentation 3Felipe Lavín
 
Slow kinda sucks
Slow kinda sucksSlow kinda sucks
Slow kinda sucksTim Wright
 
GDI Seattle Intermediate HTML and CSS Class 1
GDI Seattle Intermediate HTML and CSS Class 1GDI Seattle Intermediate HTML and CSS Class 1
GDI Seattle Intermediate HTML and CSS Class 1Heather Rock
 
CSS3: Ripe and Ready
CSS3: Ripe and ReadyCSS3: Ripe and Ready
CSS3: Ripe and ReadyDenise Jacobs
 
webdevelopment_6132030-lva1-app6891.pptx
webdevelopment_6132030-lva1-app6891.pptxwebdevelopment_6132030-lva1-app6891.pptx
webdevelopment_6132030-lva1-app6891.pptxlekhacce
 
Web Development with HTML5, CSS3 & JavaScript
Web Development with HTML5, CSS3 & JavaScriptWeb Development with HTML5, CSS3 & JavaScript
Web Development with HTML5, CSS3 & JavaScriptEdureka!
 
Html5 Whats around the bend
Html5 Whats around the bendHtml5 Whats around the bend
Html5 Whats around the bendRaj Lal
 
HTML5 for ASP.NET Developers
HTML5 for ASP.NET DevelopersHTML5 for ASP.NET Developers
HTML5 for ASP.NET DevelopersJustin Lee
 

Similar to Quality CSS3 Development (20)

Presentation html5 css3 by thibaut
Presentation html5 css3 by thibautPresentation html5 css3 by thibaut
Presentation html5 css3 by thibaut
 
Css3
Css3Css3
Css3
 
It's a Mod World - A Practical Guide to Rocking Modernizr
It's a Mod World - A Practical Guide to Rocking ModernizrIt's a Mod World - A Practical Guide to Rocking Modernizr
It's a Mod World - A Practical Guide to Rocking Modernizr
 
A brief look at CSS3 techniques by Aaron Rodgers, Web Designer @ vzaar.com
A brief look at CSS3 techniques by Aaron Rodgers, Web Designer @ vzaar.comA brief look at CSS3 techniques by Aaron Rodgers, Web Designer @ vzaar.com
A brief look at CSS3 techniques by Aaron Rodgers, Web Designer @ vzaar.com
 
Core CSS3
Core CSS3Core CSS3
Core CSS3
 
Managing responsive websites with css preprocessors.
Managing responsive websites with css preprocessors. Managing responsive websites with css preprocessors.
Managing responsive websites with css preprocessors.
 
Web Design Trends 2010 - What Is CSS3 All About?
Web Design Trends 2010 - What Is CSS3 All About?Web Design Trends 2010 - What Is CSS3 All About?
Web Design Trends 2010 - What Is CSS3 All About?
 
Implementing Awesome: An HTML5/CSS3 Workshop
Implementing Awesome: An HTML5/CSS3 WorkshopImplementing Awesome: An HTML5/CSS3 Workshop
Implementing Awesome: An HTML5/CSS3 Workshop
 
Even faster web sites presentation 3
Even faster web sites presentation 3Even faster web sites presentation 3
Even faster web sites presentation 3
 
Slow kinda sucks
Slow kinda sucksSlow kinda sucks
Slow kinda sucks
 
GDI Seattle Intermediate HTML and CSS Class 1
GDI Seattle Intermediate HTML and CSS Class 1GDI Seattle Intermediate HTML and CSS Class 1
GDI Seattle Intermediate HTML and CSS Class 1
 
CSS3: Ripe and Ready
CSS3: Ripe and ReadyCSS3: Ripe and Ready
CSS3: Ripe and Ready
 
Accelerated Stylesheets
Accelerated StylesheetsAccelerated Stylesheets
Accelerated Stylesheets
 
CSS and CSS3
CSS and CSS3CSS and CSS3
CSS and CSS3
 
webdevelopment_6132030-lva1-app6891.pptx
webdevelopment_6132030-lva1-app6891.pptxwebdevelopment_6132030-lva1-app6891.pptx
webdevelopment_6132030-lva1-app6891.pptx
 
Web Development with HTML5, CSS3 & JavaScript
Web Development with HTML5, CSS3 & JavaScriptWeb Development with HTML5, CSS3 & JavaScript
Web Development with HTML5, CSS3 & JavaScript
 
Html5 Whats around the bend
Html5 Whats around the bendHtml5 Whats around the bend
Html5 Whats around the bend
 
Html5 more than just html5 v final
Html5  more than just html5 v finalHtml5  more than just html5 v final
Html5 more than just html5 v final
 
HTML5 - A Whirlwind tour
HTML5 - A Whirlwind tourHTML5 - A Whirlwind tour
HTML5 - A Whirlwind tour
 
HTML5 for ASP.NET Developers
HTML5 for ASP.NET DevelopersHTML5 for ASP.NET Developers
HTML5 for ASP.NET Developers
 

Recently uploaded

DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr LapshynFwdays
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piececharlottematthew16
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostZilliz
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 

Recently uploaded (20)

DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piece
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 

Quality CSS3 Development

  • 1. QUALITY DEVELOPMENT WITH CSS3 Shay Howe September 2011 www.shayhowe.com – @letscounthedays
  • 2. SHAY HOWE www.shayhowe.com – @letscounthedays Quality Development with HTML5 & CSS3 @letscounthedays
  • 3. HTML5 CSS3 Markup language to give Presentation language to content structure and give content style and meaning. appearance. Quality Development with HTML5 & CSS3 @letscounthedays
  • 4. Quality Development with HTML5 & CSS3 @letscounthedays
  • 5. Quality Development with HTML5 & CSS3 @letscounthedays
  • 6. CSS3 Quality Development with HTML5 & CSS3 @letscounthedays
  • 7. VENDOR PREFIXES Chrome Opera -­‐chrome-­‐ -­‐o-­‐ Microsoft Webkit -­‐ms-­‐ -­‐webkit-­‐ Mozilla -­‐moz-­‐ Quality Development with HTML5 & CSS3 @letscounthedays
  • 8. VENDOR PREFIXES section  { -­‐chrome-­‐border-­‐radius:  5px; -­‐ms-­‐border-­‐radius:  5px; -­‐moz-­‐border-­‐radius:  5px; -­‐o-­‐border-­‐radius:  5px; -­‐webkit-­‐border-­‐radius:  5px; border-­‐radius:  5px; } Quality Development with HTML5 & CSS3 @letscounthedays
  • 9. SELECTORS Quality Development with HTML5 & CSS3 @letscounthedays
  • 10. ATTRIBUTE a[target]  {  ...  } Elements with the attribute a[src="http://www.shayhowe.com/"]  {  ...  } Elements with the attribute value a[src*="shayhowe"]  {  ...  } Elements with an attribute value containing... a[src^="https"]  {  ...  } Elements with an attribute value starting with... a[src$=".pdf"]  {  ...  } Elements with an attribute value ending with... Quality Development with HTML5 & CSS3 @letscounthedays
  • 11. :TARGET PSEUDO-CLASS section#web-­‐design:target  {  ...  } http://www.shayhowe.com/#web-­‐design Quality Development with HTML5 & CSS3 @letscounthedays
  • 12. ELEMENT PSEUDO-CLASSES input[type="text"]:enabled  {  ...  } Enabled input input[type="text"]:disabled  {  ...  } Disabled input input:checked  {  ...  } Checked input Quality Development with HTML5 & CSS3 @letscounthedays
  • 13. STRUCTURAL PSEUDO-CLASSES :nth-­‐child(3)  {  ...  } Third child element :nth-­‐child(odd)  {  ...  } Odd child elements (1, 3, 5 ...) :nth-­‐child(even)  {  ...  } Even child elements (2, 4, 6 ...) :nth-­‐child(3n)  {  ...  } Child elements with a multiple of 3 (3, 6, 9 ...) :nth-­‐child(3n+11)  {  ...  } Child elements with a multiple of 3 starting at 11 (11, 14, 17 ...) Quality Development with HTML5 & CSS3 @letscounthedays
  • 14. STRUCTURAL PSEUDO-CLASSES :nth-­‐child(-­‐n+3)  {  ...  } First 3 child elements :nth-­‐last-­‐child(-­‐n+3)  {  ...  } Last 3 child elements :not(:first-­‐of-­‐type):not(:last-­‐of-­‐type)  {  ...  } All elements but the first and last elements Quality Development with HTML5 & CSS3 @letscounthedays
  • 15. STRUCTURAL PSEUDO-CLASSES :nth-­‐last-­‐child(3)  {  ...  } Third to last child element :first-­‐child  {  ...  } Last child element (also works with :last-­‐child) :nth-­‐of-­‐type(3)  {  ...  } Third child element of this type of element :nth-­‐last-­‐of-­‐type(3)  {  ...  } Third to last child element of this type of element :first-­‐of-­‐type  {  ...  } First child element of this type of element (also works with :last-­‐of-­‐type) Quality Development with HTML5 & CSS3 @letscounthedays
  • 16. STRUCTURAL PSEUDO-CLASSES :only-­‐child  {  ...  } Only child element :only-­‐of-­‐type  {  ...  } Only child element of this type of element :empty  {  ...  } Empty element (<p></p>) :not(p)  {  ...  } Anything but this type of element Quality Development with HTML5 & CSS3 @letscounthedays
  • 17. TEXTURAL PSEUDO-CLASSES :first-­‐letter  {  ...  } First letter within the element :first-­‐line  {  ...  } First line within the element :before  {  ...  } Add content before an element :after  {  ...  } Add content after an element ::selection  {  ...  } Selected or highlighted element Quality Development with HTML5 & CSS3 @letscounthedays
  • 18. SELECTORS Quality Development with HTML5 & CSS3 @letscounthedays
  • 19. BACKGROUNDS Quality Development with HTML5 & CSS3 @letscounthedays
  • 20. MULTIPLE BACKGROUNDS section  { background: url(foreground.png)  no-­‐repeat  0  0, url(middle-­‐ground.png)  no-­‐repeat  0  0, url(background.png)  no-­‐repeat  0  0; } section  { background: url(section-­‐left.png)  no-­‐repeat  0  0, url(section-­‐right.png)  no-­‐repeat  100%  0; } Quality Development with HTML5 & CSS3 @letscounthedays
  • 21. BACKGROUND-SIZE section  { background-­‐size:  178px  238px; } section  { background-­‐size:  85%  auto; } Quality Development with HTML5 & CSS3 @letscounthedays
  • 22. BACKGROUND-CLIP section  { background-­‐clip:  border-­‐box; } section  { background-­‐clip:  padding-­‐box; } Quality Development with HTML5 & CSS3 @letscounthedays
  • 23. BACKGROUND-ORIGIN section  { background-­‐origin:  border-­‐box; } section  { background-­‐origin:  content-­‐box; } Quality Development with HTML5 & CSS3 @letscounthedays
  • 24. BACKGROUNDS Quality Development with HTML5 & CSS3 @letscounthedays
  • 25. BORDERS Quality Development with HTML5 & CSS3 @letscounthedays
  • 26. BORDER-RADIUS section  { border-­‐radius:  5px; } section  { border-­‐radius:  5px  20px  60px  0; } Quality Development with HTML5 & CSS3 @letscounthedays
  • 27. ELLIPTICAL CORNERS section  { border-­‐radius: 60px  /  30px; } section  { border-­‐radius: 5px  10px  6px  20px  /  10px  30px  40px  80px; } Quality Development with HTML5 & CSS3 @letscounthedays
  • 28. BORDER-IMAGE section  { border-­‐image:  url(paper.png)  10; border-­‐width:  10px; }     section  { border-­‐image:  url(paper.png)  48  22  30  36; border-­‐width:  48px  22px  30px  36px; } Quality Development with HTML5 & CSS3 @letscounthedays
  • 29. BORDER-IMAGE KEYWORDS section  { border-­‐image:  url(paper.png)  10  repeat; border-­‐width:  10px; } section  { border-­‐image:  url(paper.png)  10  stretch; border-­‐width:  10px; } Quality Development with HTML5 & CSS3 @letscounthedays
  • 30. BORDERS Quality Development with HTML5 & CSS3 @letscounthedays
  • 31. GRADIENTS Quality Development with HTML5 & CSS3 @letscounthedays
  • 32. LINEAR-GRADIENT section  { background-­‐color: #f60;   background-­‐image: url(gradient.png);      background-­‐image: linear-­‐gradient(top,  #f60,  #f00);   } Quality Development with HTML5 & CSS3 @letscounthedays
  • 33. COLOR STOPS section  { background-­‐image: linear-­‐gradient(left,   #f9e600,   #6f156c  35%,   #fd7c00  65%,   #002874); } Quality Development with HTML5 & CSS3 @letscounthedays
  • 34. RADIAL-GRADIENT section  {   background-­‐image: radial-­‐gradient(center  45deg, circle  closest-­‐corner,   #ff0,  #f60); } Quality Development with HTML5 & CSS3 @letscounthedays
  • 35. GRADIENTS Quality Development with HTML5 & CSS3 @letscounthedays
  • 36. ADDITIONAL FEATURES Quality Development with HTML5 & CSS3 @letscounthedays
  • 37. CALC section  { width:  600px; width:  calc(100%  -­‐  20px); } section  { width:  100px; width:  calc(100%  -­‐  20px  /  6); } Quality Development with HTML5 & CSS3 @letscounthedays
  • 38. FONT-FACE @font-­‐face  { font-­‐family:  "Museo  Slab"; src:  url("MuseoSlab.svg")  format("svg"); src:  url("MuseoSlab.ttf")  format("truetype"); src:  url("MuseoSlab.woff")  format("woff"); } h1  { font-­‐family:  "Museo  Slab",  Georgia,  serif;   } Quality Development with HTML5 & CSS3 @letscounthedays
  • 39. FONT-FACE Quality Development with HTML5 & CSS3 @letscounthedays
  • 40. MULTI-COLUMN LAYOUTS section  { column-­‐count:  3; column-­‐gap:  20px; } section  { column-­‐width:  220px; column-­‐gap:  40px; column-­‐rule:  1px  solid  rgb(255,255,255); } Quality Development with HTML5 & CSS3 @letscounthedays
  • 41. MULTI-COLUMN LAYOUTS Quality Development with HTML5 & CSS3 @letscounthedays
  • 42. BOX & TEXT SHADOWS select  { box-­‐shadow:  3px  3px  5px  rgba(0,  0,  0,  0.4); } section  { box-­‐shadow: inset  0  3px  5px  rgba(0,  0,  0,  0.4), 0  2px  4px  rgba(0,  0,  0,  0.5); text-­‐shadow:  0  -­‐1px  3px  rgba(0,  0,  0,  0.6); } Quality Development with HTML5 & CSS3 @letscounthedays
  • 43. BOX & TEXT SHADOWS Quality Development with HTML5 & CSS3 @letscounthedays
  • 44. OPACITY section  { background-­‐color:  rgba(255,  102,  0,  0.5); } section  { background-­‐color:  hlsa(24,  100%,  100%,  0.5); } Quality Development with HTML5 & CSS3 @letscounthedays
  • 45. TEXT-OVERFLOW select  { text-­‐overflow:  ellipsis; } Quality Development with HTML5 & CSS3 @letscounthedays
  • 46. TRANSFORMS Quality Development with HTML5 & CSS3 @letscounthedays
  • 47. ROTATE section  { transform:  rotate(10deg); } section  { transform:  rotate(-­‐30deg); } Quality Development with HTML5 & CSS3 @letscounthedays
  • 48. ORIGIN section  { transform:  rotate(30deg); transform-­‐origin:  100%  0; } section  { transform:  rotate(30deg); transform-­‐origin:  right  top; } Quality Development with HTML5 & CSS3 @letscounthedays
  • 49. SCALE section  { transform:  scaleX(1.5); transform:  scaleY(.4); } section  { transform:  scale(1.5,  .4); } section  {    transform:  scale(.4); } Quality Development with HTML5 & CSS3 @letscounthedays
  • 50. SKEW section  { transform:  skewX(10deg); transform:  skewY(30deg); } section  { transform:  skew(10deg,  30deg); } Quality Development with HTML5 & CSS3 @letscounthedays
  • 51. TRANSLATE section  { transform:  translateX(50px); transform:  translateY(10%); } section  { transform:  translate(50px,  10%); } Quality Development with HTML5 & CSS3 @letscounthedays
  • 52. MULTIPLE TRANSFORMS section  { transform:  rotate(30deg); transform:  scale(.4); transform:  skew(-­‐15deg,  -­‐15deg); transform:  translate(50px,  10%); } Quality Development with HTML5 & CSS3 @letscounthedays
  • 54. TRANSFORMS Quality Development with HTML5 & CSS3 @letscounthedays
  • 55. TRANSITIONS Quality Development with HTML5 & CSS3 @letscounthedays
  • 56. TRANSITIONS section  { transition-­‐property:  color; transition-­‐duration:  .25s; transition-­‐timing-­‐function:  linear; } section  { transition-­‐property:  background-­‐color; transition-­‐duration:  .5s; transition-­‐delay:  .25s; transition-­‐timing-­‐function:  ease-­‐in; } Quality Development with HTML5 & CSS3 @letscounthedays
  • 57. TRANSITIONS section  { transition-­‐property:  color,  background-­‐color; transition-­‐duration:  .25s,  .5s; transition-­‐delay:  0,  .25s; transition-­‐timing-­‐function:  linear,  ease-­‐in; } section  { transition:   color  .25s  linear, background-­‐color  .5s  .25s  ease-­‐in; } Quality Development with HTML5 & CSS3 @letscounthedays
  • 58. TRANSITIONS section  { transition:  all  .25s  linear; } Transitionable Properties Backgrounds, Borders, Colors, Dimensions, Fonts, Margins, Opacity, Padding, Position, Transforms Quality Development with HTML5 & CSS3 @letscounthedays
  • 59. TRANSITIONS Quality Development with HTML5 & CSS3 @letscounthedays
  • 60. KEYFRAME ANIMATIONS Quality Development with HTML5 & CSS3 @letscounthedays
  • 61. KEYFRAMES @keyframes  walking  { 0%  {  left:  0;  } 50%  {  left:  40%;  } 100%  {  left:  100%;  } } section  { animation-­‐name:  walking; animation-­‐duration:  5s; animation-­‐iteration-­‐count:  1; animation-­‐timing-­‐function:  ease-­‐in-­‐out; } Quality Development with HTML5 & CSS3 @letscounthedays
  • 62. KEYFRAMES section  { animation:  walking  5s  1  ease-­‐in-­‐out; } Quality Development with HTML5 & CSS3 @letscounthedays
  • 63. ANIMATION PROPERTIES • animation-­‐name • animation-­‐delay • animation-­‐direction • animation-­‐duration • animation-­‐iteration-­‐count • animation-­‐timing-­‐function Quality Development with HTML5 & CSS3 @letscounthedays
  • 64. ANIMATIONS Quality Development with HTML5 & CSS3 @letscounthedays
  • 65. MEDIA QUERIES Quality Development with HTML5 & CSS3 @letscounthedays
  • 66. SCREEN SIZE <link  rel="stylesheet" media="screen  and  (min-­‐width:  960px)"   href="960.css"> @media  screen  and  (min-­‐width:  960px)  { ... } Quality Development with HTML5 & CSS3 @letscounthedays
  • 67. ORIENTATION @media  screen  and  (min-­‐width:  960px)  and   (orientation:  portrait),  screen  and  (min-­‐ width:  480px)  and  (orientation:  landscape)  { ... } Quality Development with HTML5 & CSS3 @letscounthedays
  • 68. MEDIA QUERIES • aspect-­‐ratio • color • device-­‐aspect-­‐ratio • device-­‐height • device-­‐width • height • max-­‐height • max-­‐width • monochrome • orientation • resolution • width Quality Development with HTML5 & CSS3 @letscounthedays
  • 69. QUESTIONS? Thank you! Quality Development with HTML5 & CSS3 @letscounthedays