SlideShare a Scribd company logo
1 of 45
10                     Advanced CSS Techniques
                       you always wanted to know more about
                                                             #webqcss




Some rights reserved                       Webuquerque November 2, 2011
He llo!
             Jason Nakai                            Emily Lewis
             Designer Developer                     Web Designer Writer        Instructor
             nakaimedia.com                         emilylewisdesign.com

Software Engineer, Data Basis          Co-host, EE Podcast
data-basis.com                         ee-podcast.com

Co-founder & Co-manager, Webuquerque   Co-founder & Co-manager, Webuquerque
webuquerque.com                        webuquerque.com

Email:     info@nakaimedia.com         Author, Microformats Made Simple
Twitter:   @jasonnakai                 microformatsmadesimple.com

                                       Contributing author, HTML5 Cookbook
                                       oreilly.com/catalog/0636920016038

                                       Email:     emily@emilylewisdesign.com
                                       Blog:      ablognotlimited.com
                                       Twitter:   @emilylewis


                                                                                #webqcss
esome
10                a nd Aw
         Advanced^Techniques
1. Text shadows          6. Multiple background images

2. Box shadows           7. Transitions

3. Generated content     8. Transforms

4. Attribute selectors   9. Media queries

5. Gradients             10.Feature detection




                                                #webqcss
1Text Shadows
text-shadow casts shadow effects on text and text-
decoration.




                                                     #webqcss
1
Text Shadows tax
          Syn
    h3 {text-shadow: 1px 1px 2px #000;}

•   x (horizontal) offset casts shadow to the right of the
    text. Negative value casts to the left.

•   y (vertical) offset casts shadow below the text.
    Negative value casts above.

•   blur radius blurs the shadow, with higher values
    making the shadows wider and lighter.

•   color
                                                        #webqcss
1Text Shadows tax
           Syn
Multiple effects are comma-separated and are applied
front to back, with the first shadow on the top of the stack.

                 text-shadow:         #fff    -1px   -1px,
                                      #fff    -2px   -2px,
                                      #fff    -3px   -3px,
                                      #fff    -4px   -4px,
                                      #fff    -5px   -5px,
                                      #fff    -6px   -6px,
                                      #fff    -7px   -7px,
                                      #fff    -8px   -8px;
                                                         #webqcss
1
Text Shadows esou
•
       T ools &R  rces

    Typekit text shadow tutorial
    blog.typekit.com/2011/07/19/shading-with-css-text-shadows/


•   Dynamic text shadow generator
    mothereffingtextshadow.com


•   Dynamic text shadow generator
    westciv.com/tools/shadows/


•   IE Shadow filter
    msdn.microsoft.com/en-us/library/ms533086(v=VS.85).aspx


•   IE DropShadow filter
    msdn.microsoft.com/en-us/library/ms532985(v=VS.85).aspx
                                                                 #webqcss
2Box Shadows
box-shadow casts shadow effects on block-level
elements.




                                                 #webqcss
2  Box Shadowsntax
            Sy
div {box-shadow: inset 2px 2px 3px 1px #666;}

   •   inset moves shadow inside frame of element.

   •   x (horizontal) offset casts shadow to the right of the
       text. Negative value casts to the left.

   •   y (vertical) offset casts shadow below the text.
       Negative value casts above.



                                                           #webqcss
2  Box Shadowsntax
            Sy
div {box-shadow: inset 2px 2px 3px 1px #666;}

   •   blur radius blurs the shadow, with higher values
       making the shadows wider and lighter.

   •   spread radius conrtrols the expansion of the
       shadow, with higher values making it bigger.

   •   color



                                                          #webqcss
2 Box Shadowsntax
           Sy
Vendor prefixes are available for older versions, which
should be listed before the standard property.


 -moz-box-shadow:    2px 2px 3px #666;
 -webkit-box-shadow: 2px 2px 3px #666;
 box-shadow:         2px 2px 3px #666;

Automatic prefixing with JavaScript
leaverou.github.com/prefixfree/




                                                          #webqcss
2Box Shadowsntax
          Sy
Multiple effects are applied front to back, with the first
shadow on top of the stack.

              box-shadow:         1px   1px   #007d9a,
                                  2px   2px   #007d9a,
                                  3px   3px   #007d9a,
                                  4px   4px   #007d9a,
                                  5px   5px   #007d9a,
                                  6px   6px   #007d9a,
                                  7px   7px   #007d9a,
                                  8px   8px   #007d9a;
                                                             #webqcss
2
Box ShadowsResou
•
      To ols &
                 rces

    CSS Tricks box shadow tutorial
    css-tricks.com/snippets/css/css-box-shadow/


•   Drop shadows tutorial & example gallery
    nicolasgallagher.com/css-drop-shadows-without-images/


•   Dynamic box shadow generator
    westciv.com/tools/box-properties/index.html


•   CSS3 decorations for IE
    css3pie.com


•   IE DropShadow filter
    msdn.microsoft.com/en-us/library/ms532985(v=VS.85).aspx
                                                              #webqcss
3   Generated Content
Using the :before and :after pseudo elements, can
insert content before and after the specified element:

•   Strings of text

•   Images

•   Counters

•   Attribute values (i.e. title)



                                                         #webqcss
3 Generated Contenttax
                Syn
a:after {content:" 00a000bb";}

  •   content property contains the content to appear
      before or after the element.

  •   For text strings, contain the value in quotes.

  •   If you want to use a special character, make sure it is
      properly encoded (digitalmediaminute.com/
      reference/entity/).


                                                          #webqcss
3
Generated Contenttax
              Syn
                   li:hover:before {
                      content:url(arrow.png);
                      position:absolute;
                      top:-17px;
                      left:0;}

•   :before and :after can also be combined with
    pseudo-classes like :hover.

•   content property can only be used on :before
    and :after.
                                                   #webqcss
3
•
    Generated Contentsources
             To ols & Re
    Generated content tutorial & speech bubble gallery
    http://nicolasgallagher.com/pure-css-speech-bubbles/


•   Tooltips with generated content
    http://jsfiddle.net/chriscoyier/EMhRJ/92/


•   Automatic numbering & counters
    dev.opera.com/articles/view/automatic-numbering-with-css-counters/


•   Pure CSS3 boxes without images
    webdesignshock.com/css3-box-shadow/




                                                                         #webqcss
4Attribute Selectors
Attribute selectors allow you to target elements based
on their attributes.
• [attr]                   • [attr^=value]
• [attr=value]             • [attr$=value]
• [attr~=value]            • [attr*=value]
• [attr|=value]


                                                         #webqcss
4Attribute Selectorstax
                Syn
a[href$="zip"]{...;}
input[type="submit"][value="Search"]{...;}


 •   Attribute property and
     value are specified
     within brackets

 •   Can use multiple
     selectors for greater
     specificity
                                      #webqcss
4
•
    Attribute Selectors esources
                Tools &R
    Emily’s attribute selectors tutorial
    msdn.microsoft.com/en-us/scriptjunkie/gg619394


•   CSS3 selectors explained
    456bereastreet.com/archive/200601/css_3_selectors_explained/


•   CSS Tricks attribute selectors tutorial
    css-tricks.com/5591-attribute-selectors/


•   ARIA roles & attribute selectors
    germanforblack.com/articles/stepping-into-attribute-selectors


•   IE support for CSS3 selectors
    selectivizr.com
                                                                    #webqcss
5   Gradients
Gradients allow smooth transitions between two or
more colors. Can reduce need for background images.
•   Linear

•   Radial

•   Specified via background-image




                                                      #webqcss
5
Linear Gradientsntax
div {
              Sy
  background-image: linear-
gradient(-90deg, #fff 0%, #ccc 100%);
}

•   Angle determines the direction of the gradient.

•   Color stop defines the color and it’s position relative
    to the element. Can have multiple, comma-separated
    color stops.



                                                        #webqcss
5
Radial Gradientsntax
div {
             Sy
  background-image:radial-
gradient(center, ellipse cover, #ff0
0%, #0f0 100%);
}

•   Position indicates the origin (center) of the gradient.

•   Shape and size of the gradient

•   Color stops, comma-separated

                                                         #webqcss
5   Gradientsntax
           Sy
  Vendor prefixes are required.

-moz-linear-gradient              -moz-radial-gradient
-o-linear-gradient                -webkit-radial-gradient
-webkit-linear-gradient


  Dynamic cross-browser CSS3 generator (even includes
  older syntaxes and prefixes)
  css3please.com



                                                    #webqcss
5Gradientsntax
        Sy
Multiple gradients can be applied, creating complex
(and even repeating) patterns.




                                                      #webqcss
5
•
    Gradients Resou
        Too ls &
                    rces

    Incredible background patterns gallery
    leaverou.me/css3patterns/


•   Dynamic linear gradient generator
    display-inline.fr/projects/css-gradient/


•   Dynamic radial gradient generator
    westciv.com/tools/radialgradients/index.html


•   Dynamic gradient generator (Firefox)
    colorzilla.com/gradient-editor/


•   CSS decorations for IE
    css3pie.com
                                                   #webqcss
6Multiple Background Images
CSS3 allows you to specify more than one background
image for an element.




                                                      #webqcss
6Multiple Background Imagesx
article {
  background:
                       S ynta

    url(curtainTop.png) 0 0 no-repeat,
    url(curtainBottom.png) 0 100% no-repeat
    #000;
}
 •   Comma-separated list of shorthand values for URL, x-
     axis, y-axis and repeat. Can also use full declarations.

 •   Images are layered, with first declared image on top of
     the stack. If using a background color, declare with
     last image to be at bottom of stack.
                                                         #webqcss
6Multiple Background Imagesx
article {
  background:
                       S ynta

    url(curtainBottom.png) 0 100% no-repeat
    #000;
  background:
    url(curtainTop.png) 0 0 no-repeat,
    url(curtainBottom.png) 0 100% no-repeat
    #000;
}
 For IE and other browser that don’t support, declare
 background twice.
                                                        #webqcss
6
•
    Multiple Background Imagesces
                    To ols & Re sour
    Multiple backgrounds & gradients tutorial
    snook.ca/archives/html_and_css/multiple-bg-css-gradients


•   CSS3 demo site from SXSW panel
    sxswcss3.com


•   Background patterns gallery
    leaverou.me/css3patterns/


•   CSS decorations for IE
    css3pie.com




                                                               #webqcss
7Transitions
transition enables smooth animations of CSS
property changes over a specified timeframe.




                                               #webqcss
7
Transitions ntax
         Sy
    div {transition: all .5s linear .2s;}

•    Property name specifies the CSS property to be
     changed.

•    Duration specifies the number of (milli)seconds a
     transition animation should take to complete.

•    Timing function specifies the easing

•    Delay indicates the amount of time to wait to start
     the transition effect
                                                           #webqcss
7Transitions ntax
          Sy
Vendor prefixes are required. Should be specified
before standard property.


-moz-transition:            all   .5s   linear      .2s;
-o-transition:              all   .5s   linear      .2s;
-webkit-transition:         all   .5s   linear      .2s;
transition:                 all   .5s   linear      .2s;




                                                       #webqcss
7
•
    Transitions& Resou
           T ools
                       rces

    Think Vitamin transitions tutorial
    thinkvitamin.com/code/sexy-interactions-with-css-transitions/


•   cubic-bezier() easing with transitions
    cubic-bezier.com


•   CSS transitions gallery
    leaverou.github.com/animatable/


•   Dynamic transitions generator
    css3generator.com




                                                                    #webqcss
8   Transforms
transform enables modifications to coordinate-based
CSS properties:

•   Translate

•   Rotate

•   Skew

•   Scale



                                                      #webqcss
8
Transforms ntax
        Sy
h3 {transform: rotate(45deg);}
h3 {transform: translate(25px, 10px);}


•   Transform functions specify the modification action
    and corresponding values.




                                                     #webqcss
8Transforms ntax
         Sy
Vendor prefixes are required. Should be specified
before standard property.


-moz-transform:            rotate(45deg);
-o-transform:              rotate(45deg);
-webkit-transform:         rotate(45deg);
transform:                 rotate(45deg);




                                                    #webqcss
8
•
    Transforms Resou
          To ols &
                     rces

    Transforms tutorial
    css3files.com/transform/


•   Text rotation tutorial
    snook.ca/archives/html_and_css/css-text-rotation


•   Transforms for IE
    useragentman.com/IETransformsTranslator/


•   Dynamic transforms generator
    westciv.com/tools/transforms/


•   Dynamic transforms generator
    css3generator.com
                                                       #webqcss
9   Media Queries
Media queries deliver styles based on the user’s display:

•   Media type

•   Browser window

•   Device screen, orientation & resolution

•   Colors




                                                       #webqcss
9
Media Queriesntax
           Sy
@media screen and (max-width: 650px){

}
   body {background: #f90;}


•   Nest resolution-specific styles within the @media
    query

•   Media options include all, handheld, projection,
    screen, tv

•   Properties and values establish the conditions for
    rendering styles

                                                         #webqcss
9
•
    Media QueriesResou
           To ols &
                       rces

    A List Apart’s responsive web design
    alistapart.com/articles/responsive-web-design/


•   Emily’s media queries tutorial
    msdn.microsoft.com/en-us/scriptjunkie/gg619395


•   Comprehensive media queries
    zomigi.com/blog/essential-considerations-for-crafting-quality-media-queries/


•   Media queries polyfill
    github.com/scottjehl/Respond


•   Dynamic resolution testing
    quirktools.com/screenfly/
                                                                         #webqcss
10  Feature Detection
Feature detection tests for the existence of DOM
properties and methods in order to determine whether
a browser supports an operation.
•   Modernizr (best bet)
    modernizr.com


•   jQuery.support (if you really want to)
    api.jquery.com/jQuery.support/


•   Rolling your own (not suggested)
    sitepoint.com/detect-css3-property-browser-support/


•   Browser sniffing (outdated)
                                                          #webqcss
10
•
    Feature Detection esources
              T ools &R
    Do you even need a polyfill? A fallback?
    caniuse.com


•   Conditional polyfill loading
    yepnopejs.com


•   Practical feature detection
    css-tricks.com/13641-sideways-headers/




                                               #webqcss
Questions?
         ?
 @emilylewis   @jasonnakai




                             #webqcss
Thanks!
           !
What did you think? spkr8.com/t/8859




                                       #webqcss

More Related Content

What's hot

Introduction to Bootstrap: Design for Developers
Introduction to Bootstrap: Design for DevelopersIntroduction to Bootstrap: Design for Developers
Introduction to Bootstrap: Design for DevelopersMelvin John
 
Intro to HTML and CSS basics
Intro to HTML and CSS basicsIntro to HTML and CSS basics
Intro to HTML and CSS basicsEliran Eliassy
 
Dynamic CSS: Transforms, Transitions, and Animation Basics
Dynamic CSS: Transforms, Transitions, and Animation BasicsDynamic CSS: Transforms, Transitions, and Animation Basics
Dynamic CSS: Transforms, Transitions, and Animation BasicsBeth Soderberg
 
Bootstrap Part - 1
Bootstrap Part - 1Bootstrap Part - 1
Bootstrap Part - 1EPAM Systems
 
An Overview of HTML, CSS & Java Script
An Overview of HTML, CSS & Java ScriptAn Overview of HTML, CSS & Java Script
An Overview of HTML, CSS & Java ScriptFahim Abdullah
 
CSS Animations & Transitions
CSS Animations & TransitionsCSS Animations & Transitions
CSS Animations & TransitionsEdward Meehan
 
HTML Semantic Tags
HTML Semantic TagsHTML Semantic Tags
HTML Semantic TagsBruce Kyle
 
Frontend Crash Course: HTML and CSS
Frontend Crash Course: HTML and CSSFrontend Crash Course: HTML and CSS
Frontend Crash Course: HTML and CSSThinkful
 

What's hot (20)

Css floats
Css floatsCss floats
Css floats
 
Html5
Html5 Html5
Html5
 
Introduction to Bootstrap: Design for Developers
Introduction to Bootstrap: Design for DevelopersIntroduction to Bootstrap: Design for Developers
Introduction to Bootstrap: Design for Developers
 
Javascript essentials
Javascript essentialsJavascript essentials
Javascript essentials
 
CSS
CSSCSS
CSS
 
Intro to HTML and CSS basics
Intro to HTML and CSS basicsIntro to HTML and CSS basics
Intro to HTML and CSS basics
 
JavaScript and BOM events
JavaScript and BOM eventsJavaScript and BOM events
JavaScript and BOM events
 
Dynamic CSS: Transforms, Transitions, and Animation Basics
Dynamic CSS: Transforms, Transitions, and Animation BasicsDynamic CSS: Transforms, Transitions, and Animation Basics
Dynamic CSS: Transforms, Transitions, and Animation Basics
 
Html5 semantics
Html5 semanticsHtml5 semantics
Html5 semantics
 
Html tags
Html tagsHtml tags
Html tags
 
Flexbox
FlexboxFlexbox
Flexbox
 
Bootstrap Part - 1
Bootstrap Part - 1Bootstrap Part - 1
Bootstrap Part - 1
 
Http protocol
Http protocolHttp protocol
Http protocol
 
Button
ButtonButton
Button
 
An Overview of HTML, CSS & Java Script
An Overview of HTML, CSS & Java ScriptAn Overview of HTML, CSS & Java Script
An Overview of HTML, CSS & Java Script
 
CSS Animations & Transitions
CSS Animations & TransitionsCSS Animations & Transitions
CSS Animations & Transitions
 
HTML Semantic Tags
HTML Semantic TagsHTML Semantic Tags
HTML Semantic Tags
 
Flex box
Flex boxFlex box
Flex box
 
Frontend Crash Course: HTML and CSS
Frontend Crash Course: HTML and CSSFrontend Crash Course: HTML and CSS
Frontend Crash Course: HTML and CSS
 
Advance HTML
Advance HTMLAdvance HTML
Advance HTML
 

Viewers also liked

Viewers also liked (6)

Create Your Own Starter Files
Create Your Own Starter FilesCreate Your Own Starter Files
Create Your Own Starter Files
 
ABORTO: EVOLUCIÓN O RETROCESO METODOS ABORTIVOS UNA FORMA DE ACABAR CON LA V...
ABORTO: EVOLUCIÓN O RETROCESO METODOS ABORTIVOS UNA FORMA DE ACABAR CON LA V...ABORTO: EVOLUCIÓN O RETROCESO METODOS ABORTIVOS UNA FORMA DE ACABAR CON LA V...
ABORTO: EVOLUCIÓN O RETROCESO METODOS ABORTIVOS UNA FORMA DE ACABAR CON LA V...
 
Pure CSS
Pure CSSPure CSS
Pure CSS
 
Pure CSS By Yahoo
Pure CSS By YahooPure CSS By Yahoo
Pure CSS By Yahoo
 
Css position
Css positionCss position
Css position
 
CSS Positioning
CSS PositioningCSS Positioning
CSS Positioning
 

Similar to 10 Advanced CSS Techniques (You Wish You Knew More About)

Advanced sass/compass
Advanced sass/compassAdvanced sass/compass
Advanced sass/compassNick Cooley
 
[WebVisions 2010] CSS3 Workshop (Afternoon)
[WebVisions 2010] CSS3 Workshop (Afternoon)[WebVisions 2010] CSS3 Workshop (Afternoon)
[WebVisions 2010] CSS3 Workshop (Afternoon)Christopher Schmitt
 
Trendsetting: Web Design and Beyond
Trendsetting: Web Design and BeyondTrendsetting: Web Design and Beyond
Trendsetting: Web Design and BeyondAndy Stratton
 
CSS3: Are you experienced?
CSS3: Are you experienced?CSS3: Are you experienced?
CSS3: Are you experienced?Denise Jacobs
 
[Worskhop Summits] CSS3 Workshop
[Worskhop Summits] CSS3 Workshop[Worskhop Summits] CSS3 Workshop
[Worskhop Summits] CSS3 WorkshopChristopher Schmitt
 
Simply Responsive CSS3
Simply Responsive CSS3Simply Responsive CSS3
Simply Responsive CSS3Denise Jacobs
 
CSS3: Ripe and Ready to Respond
CSS3: Ripe and Ready to RespondCSS3: Ripe and Ready to Respond
CSS3: Ripe and Ready to RespondDenise Jacobs
 
Keep calm and let's play CSS3
Keep calm and let's play CSS3Keep calm and let's play CSS3
Keep calm and let's play CSS3A2 Comunicação
 
Rockstar Graphics with HTML5
Rockstar Graphics with HTML5Rockstar Graphics with HTML5
Rockstar Graphics with HTML5Dave Balmer
 
Next Steps in Responsive Design
Next Steps in Responsive DesignNext Steps in Responsive Design
Next Steps in Responsive DesignJustin Avery
 
CSS3: Ripe and Ready
CSS3: Ripe and ReadyCSS3: Ripe and Ready
CSS3: Ripe and ReadyDenise Jacobs
 
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
 
Advanced CSS Techniques
Advanced CSS TechniquesAdvanced CSS Techniques
Advanced CSS TechniquesKopepasah
 
Future-Proof Responsive Web Design #RWD
Future-Proof Responsive Web Design #RWDFuture-Proof Responsive Web Design #RWD
Future-Proof Responsive Web Design #RWDDigital Surgeons
 

Similar to 10 Advanced CSS Techniques (You Wish You Knew More About) (20)

Advanced sass/compass
Advanced sass/compassAdvanced sass/compass
Advanced sass/compass
 
[WebVisions 2010] CSS3 Workshop (Afternoon)
[WebVisions 2010] CSS3 Workshop (Afternoon)[WebVisions 2010] CSS3 Workshop (Afternoon)
[WebVisions 2010] CSS3 Workshop (Afternoon)
 
Trendsetting: Web Design and Beyond
Trendsetting: Web Design and BeyondTrendsetting: Web Design and Beyond
Trendsetting: Web Design and Beyond
 
CSS3: Are you experienced?
CSS3: Are you experienced?CSS3: Are you experienced?
CSS3: Are you experienced?
 
CSS3 3D Workshop
CSS3 3D WorkshopCSS3 3D Workshop
CSS3 3D Workshop
 
CSS and CSS3
CSS and CSS3CSS and CSS3
CSS and CSS3
 
[Worskhop Summits] CSS3 Workshop
[Worskhop Summits] CSS3 Workshop[Worskhop Summits] CSS3 Workshop
[Worskhop Summits] CSS3 Workshop
 
Simply Responsive CSS3
Simply Responsive CSS3Simply Responsive CSS3
Simply Responsive CSS3
 
Intro to CSS3
Intro to CSS3Intro to CSS3
Intro to CSS3
 
CSS3: Ripe and Ready to Respond
CSS3: Ripe and Ready to RespondCSS3: Ripe and Ready to Respond
CSS3: Ripe and Ready to Respond
 
Keep calm and let's play CSS3
Keep calm and let's play CSS3Keep calm and let's play CSS3
Keep calm and let's play CSS3
 
Rockstar Graphics with HTML5
Rockstar Graphics with HTML5Rockstar Graphics with HTML5
Rockstar Graphics with HTML5
 
Next Steps in Responsive Design
Next Steps in Responsive DesignNext Steps in Responsive Design
Next Steps in Responsive Design
 
CSS3: Ripe and Ready
CSS3: Ripe and ReadyCSS3: Ripe and Ready
CSS3: Ripe and Ready
 
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
 
Css3
Css3Css3
Css3
 
Advanced CSS Techniques
Advanced CSS TechniquesAdvanced CSS Techniques
Advanced CSS Techniques
 
Css3
Css3Css3
Css3
 
slides-students-C04.pdf
slides-students-C04.pdfslides-students-C04.pdf
slides-students-C04.pdf
 
Future-Proof Responsive Web Design #RWD
Future-Proof Responsive Web Design #RWDFuture-Proof Responsive Web Design #RWD
Future-Proof Responsive Web Design #RWD
 

More from Emily Lewis

The Hiring Process
The Hiring ProcessThe Hiring Process
The Hiring ProcessEmily Lewis
 
Take Your Markup to Eleven
Take Your Markup to ElevenTake Your Markup to Eleven
Take Your Markup to ElevenEmily Lewis
 
Designer-Friendly EE
Designer-Friendly EEDesigner-Friendly EE
Designer-Friendly EEEmily Lewis
 
Building the Webuquerque Community
Building the Webuquerque CommunityBuilding the Webuquerque Community
Building the Webuquerque CommunityEmily Lewis
 
Multiple Site Management with ExpressionEngine
Multiple Site Management with ExpressionEngineMultiple Site Management with ExpressionEngine
Multiple Site Management with ExpressionEngineEmily Lewis
 
Take Your Markup to 11
Take Your Markup to 11Take Your Markup to 11
Take Your Markup to 11Emily Lewis
 
WordPress & Other Content Management Systems
WordPress & Other Content Management SystemsWordPress & Other Content Management Systems
WordPress & Other Content Management SystemsEmily Lewis
 
Microformats or: How I Learned to Write POSH and Love the Semantic Web
Microformats or: How I Learned to Write POSH and Love the Semantic WebMicroformats or: How I Learned to Write POSH and Love the Semantic Web
Microformats or: How I Learned to Write POSH and Love the Semantic WebEmily Lewis
 
jQuery, A Designer's Perspective
jQuery, A Designer's PerspectivejQuery, A Designer's Perspective
jQuery, A Designer's PerspectiveEmily Lewis
 
Practical Microformats - Voices That Matter
Practical Microformats - Voices That MatterPractical Microformats - Voices That Matter
Practical Microformats - Voices That MatterEmily Lewis
 
[Workshop Summits] Microformats Workshop
[Workshop Summits] Microformats Workshop[Workshop Summits] Microformats Workshop
[Workshop Summits] Microformats WorkshopEmily Lewis
 
Microformats: Web Semantics & More
Microformats: Web Semantics & MoreMicroformats: Web Semantics & More
Microformats: Web Semantics & MoreEmily Lewis
 
Podcasting & Vodcasting 101
Podcasting & Vodcasting 101Podcasting & Vodcasting 101
Podcasting & Vodcasting 101Emily Lewis
 
Webuquerque: Social Media Means Business
Webuquerque: Social Media Means BusinessWebuquerque: Social Media Means Business
Webuquerque: Social Media Means BusinessEmily Lewis
 

More from Emily Lewis (14)

The Hiring Process
The Hiring ProcessThe Hiring Process
The Hiring Process
 
Take Your Markup to Eleven
Take Your Markup to ElevenTake Your Markup to Eleven
Take Your Markup to Eleven
 
Designer-Friendly EE
Designer-Friendly EEDesigner-Friendly EE
Designer-Friendly EE
 
Building the Webuquerque Community
Building the Webuquerque CommunityBuilding the Webuquerque Community
Building the Webuquerque Community
 
Multiple Site Management with ExpressionEngine
Multiple Site Management with ExpressionEngineMultiple Site Management with ExpressionEngine
Multiple Site Management with ExpressionEngine
 
Take Your Markup to 11
Take Your Markup to 11Take Your Markup to 11
Take Your Markup to 11
 
WordPress & Other Content Management Systems
WordPress & Other Content Management SystemsWordPress & Other Content Management Systems
WordPress & Other Content Management Systems
 
Microformats or: How I Learned to Write POSH and Love the Semantic Web
Microformats or: How I Learned to Write POSH and Love the Semantic WebMicroformats or: How I Learned to Write POSH and Love the Semantic Web
Microformats or: How I Learned to Write POSH and Love the Semantic Web
 
jQuery, A Designer's Perspective
jQuery, A Designer's PerspectivejQuery, A Designer's Perspective
jQuery, A Designer's Perspective
 
Practical Microformats - Voices That Matter
Practical Microformats - Voices That MatterPractical Microformats - Voices That Matter
Practical Microformats - Voices That Matter
 
[Workshop Summits] Microformats Workshop
[Workshop Summits] Microformats Workshop[Workshop Summits] Microformats Workshop
[Workshop Summits] Microformats Workshop
 
Microformats: Web Semantics & More
Microformats: Web Semantics & MoreMicroformats: Web Semantics & More
Microformats: Web Semantics & More
 
Podcasting & Vodcasting 101
Podcasting & Vodcasting 101Podcasting & Vodcasting 101
Podcasting & Vodcasting 101
 
Webuquerque: Social Media Means Business
Webuquerque: Social Media Means BusinessWebuquerque: Social Media Means Business
Webuquerque: Social Media Means Business
 

Recently uploaded

How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdfSandro Moreira
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...apidays
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Angeliki Cooney
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesrafiqahmad00786416
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobeapidays
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWERMadyBayot
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Zilliz
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAndrey Devyatkin
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsNanddeep Nachan
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusZilliz
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MIND CTI
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDropbox
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelDeepika Singh
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Jeffrey Haguewood
 

Recently uploaded (20)

How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 

10 Advanced CSS Techniques (You Wish You Knew More About)

  • 1. 10 Advanced CSS Techniques you always wanted to know more about #webqcss Some rights reserved Webuquerque November 2, 2011
  • 2. He llo! Jason Nakai Emily Lewis Designer Developer Web Designer Writer Instructor nakaimedia.com emilylewisdesign.com Software Engineer, Data Basis Co-host, EE Podcast data-basis.com ee-podcast.com Co-founder & Co-manager, Webuquerque Co-founder & Co-manager, Webuquerque webuquerque.com webuquerque.com Email: info@nakaimedia.com Author, Microformats Made Simple Twitter: @jasonnakai microformatsmadesimple.com Contributing author, HTML5 Cookbook oreilly.com/catalog/0636920016038 Email: emily@emilylewisdesign.com Blog: ablognotlimited.com Twitter: @emilylewis #webqcss
  • 3. esome 10 a nd Aw Advanced^Techniques 1. Text shadows 6. Multiple background images 2. Box shadows 7. Transitions 3. Generated content 8. Transforms 4. Attribute selectors 9. Media queries 5. Gradients 10.Feature detection #webqcss
  • 4. 1Text Shadows text-shadow casts shadow effects on text and text- decoration. #webqcss
  • 5. 1 Text Shadows tax Syn h3 {text-shadow: 1px 1px 2px #000;} • x (horizontal) offset casts shadow to the right of the text. Negative value casts to the left. • y (vertical) offset casts shadow below the text. Negative value casts above. • blur radius blurs the shadow, with higher values making the shadows wider and lighter. • color #webqcss
  • 6. 1Text Shadows tax Syn Multiple effects are comma-separated and are applied front to back, with the first shadow on the top of the stack. text-shadow: #fff -1px -1px, #fff -2px -2px, #fff -3px -3px, #fff -4px -4px, #fff -5px -5px, #fff -6px -6px, #fff -7px -7px, #fff -8px -8px; #webqcss
  • 7. 1 Text Shadows esou • T ools &R rces Typekit text shadow tutorial blog.typekit.com/2011/07/19/shading-with-css-text-shadows/ • Dynamic text shadow generator mothereffingtextshadow.com • Dynamic text shadow generator westciv.com/tools/shadows/ • IE Shadow filter msdn.microsoft.com/en-us/library/ms533086(v=VS.85).aspx • IE DropShadow filter msdn.microsoft.com/en-us/library/ms532985(v=VS.85).aspx #webqcss
  • 8. 2Box Shadows box-shadow casts shadow effects on block-level elements. #webqcss
  • 9. 2 Box Shadowsntax Sy div {box-shadow: inset 2px 2px 3px 1px #666;} • inset moves shadow inside frame of element. • x (horizontal) offset casts shadow to the right of the text. Negative value casts to the left. • y (vertical) offset casts shadow below the text. Negative value casts above. #webqcss
  • 10. 2 Box Shadowsntax Sy div {box-shadow: inset 2px 2px 3px 1px #666;} • blur radius blurs the shadow, with higher values making the shadows wider and lighter. • spread radius conrtrols the expansion of the shadow, with higher values making it bigger. • color #webqcss
  • 11. 2 Box Shadowsntax Sy Vendor prefixes are available for older versions, which should be listed before the standard property. -moz-box-shadow: 2px 2px 3px #666; -webkit-box-shadow: 2px 2px 3px #666; box-shadow: 2px 2px 3px #666; Automatic prefixing with JavaScript leaverou.github.com/prefixfree/ #webqcss
  • 12. 2Box Shadowsntax Sy Multiple effects are applied front to back, with the first shadow on top of the stack. box-shadow: 1px 1px #007d9a, 2px 2px #007d9a, 3px 3px #007d9a, 4px 4px #007d9a, 5px 5px #007d9a, 6px 6px #007d9a, 7px 7px #007d9a, 8px 8px #007d9a; #webqcss
  • 13. 2 Box ShadowsResou • To ols & rces CSS Tricks box shadow tutorial css-tricks.com/snippets/css/css-box-shadow/ • Drop shadows tutorial & example gallery nicolasgallagher.com/css-drop-shadows-without-images/ • Dynamic box shadow generator westciv.com/tools/box-properties/index.html • CSS3 decorations for IE css3pie.com • IE DropShadow filter msdn.microsoft.com/en-us/library/ms532985(v=VS.85).aspx #webqcss
  • 14. 3 Generated Content Using the :before and :after pseudo elements, can insert content before and after the specified element: • Strings of text • Images • Counters • Attribute values (i.e. title) #webqcss
  • 15. 3 Generated Contenttax Syn a:after {content:" 00a000bb";} • content property contains the content to appear before or after the element. • For text strings, contain the value in quotes. • If you want to use a special character, make sure it is properly encoded (digitalmediaminute.com/ reference/entity/). #webqcss
  • 16. 3 Generated Contenttax Syn li:hover:before { content:url(arrow.png); position:absolute; top:-17px; left:0;} • :before and :after can also be combined with pseudo-classes like :hover. • content property can only be used on :before and :after. #webqcss
  • 17. 3 • Generated Contentsources To ols & Re Generated content tutorial & speech bubble gallery http://nicolasgallagher.com/pure-css-speech-bubbles/ • Tooltips with generated content http://jsfiddle.net/chriscoyier/EMhRJ/92/ • Automatic numbering & counters dev.opera.com/articles/view/automatic-numbering-with-css-counters/ • Pure CSS3 boxes without images webdesignshock.com/css3-box-shadow/ #webqcss
  • 18. 4Attribute Selectors Attribute selectors allow you to target elements based on their attributes. • [attr] • [attr^=value] • [attr=value] • [attr$=value] • [attr~=value] • [attr*=value] • [attr|=value] #webqcss
  • 19. 4Attribute Selectorstax Syn a[href$="zip"]{...;} input[type="submit"][value="Search"]{...;} • Attribute property and value are specified within brackets • Can use multiple selectors for greater specificity #webqcss
  • 20. 4 • Attribute Selectors esources Tools &R Emily’s attribute selectors tutorial msdn.microsoft.com/en-us/scriptjunkie/gg619394 • CSS3 selectors explained 456bereastreet.com/archive/200601/css_3_selectors_explained/ • CSS Tricks attribute selectors tutorial css-tricks.com/5591-attribute-selectors/ • ARIA roles & attribute selectors germanforblack.com/articles/stepping-into-attribute-selectors • IE support for CSS3 selectors selectivizr.com #webqcss
  • 21. 5 Gradients Gradients allow smooth transitions between two or more colors. Can reduce need for background images. • Linear • Radial • Specified via background-image #webqcss
  • 22. 5 Linear Gradientsntax div { Sy background-image: linear- gradient(-90deg, #fff 0%, #ccc 100%); } • Angle determines the direction of the gradient. • Color stop defines the color and it’s position relative to the element. Can have multiple, comma-separated color stops. #webqcss
  • 23. 5 Radial Gradientsntax div { Sy background-image:radial- gradient(center, ellipse cover, #ff0 0%, #0f0 100%); } • Position indicates the origin (center) of the gradient. • Shape and size of the gradient • Color stops, comma-separated #webqcss
  • 24. 5 Gradientsntax Sy Vendor prefixes are required. -moz-linear-gradient -moz-radial-gradient -o-linear-gradient -webkit-radial-gradient -webkit-linear-gradient Dynamic cross-browser CSS3 generator (even includes older syntaxes and prefixes) css3please.com #webqcss
  • 25. 5Gradientsntax Sy Multiple gradients can be applied, creating complex (and even repeating) patterns. #webqcss
  • 26. 5 • Gradients Resou Too ls & rces Incredible background patterns gallery leaverou.me/css3patterns/ • Dynamic linear gradient generator display-inline.fr/projects/css-gradient/ • Dynamic radial gradient generator westciv.com/tools/radialgradients/index.html • Dynamic gradient generator (Firefox) colorzilla.com/gradient-editor/ • CSS decorations for IE css3pie.com #webqcss
  • 27. 6Multiple Background Images CSS3 allows you to specify more than one background image for an element. #webqcss
  • 28. 6Multiple Background Imagesx article { background: S ynta url(curtainTop.png) 0 0 no-repeat, url(curtainBottom.png) 0 100% no-repeat #000; } • Comma-separated list of shorthand values for URL, x- axis, y-axis and repeat. Can also use full declarations. • Images are layered, with first declared image on top of the stack. If using a background color, declare with last image to be at bottom of stack. #webqcss
  • 29. 6Multiple Background Imagesx article { background: S ynta url(curtainBottom.png) 0 100% no-repeat #000; background: url(curtainTop.png) 0 0 no-repeat, url(curtainBottom.png) 0 100% no-repeat #000; } For IE and other browser that don’t support, declare background twice. #webqcss
  • 30. 6 • Multiple Background Imagesces To ols & Re sour Multiple backgrounds & gradients tutorial snook.ca/archives/html_and_css/multiple-bg-css-gradients • CSS3 demo site from SXSW panel sxswcss3.com • Background patterns gallery leaverou.me/css3patterns/ • CSS decorations for IE css3pie.com #webqcss
  • 31. 7Transitions transition enables smooth animations of CSS property changes over a specified timeframe. #webqcss
  • 32. 7 Transitions ntax Sy div {transition: all .5s linear .2s;} • Property name specifies the CSS property to be changed. • Duration specifies the number of (milli)seconds a transition animation should take to complete. • Timing function specifies the easing • Delay indicates the amount of time to wait to start the transition effect #webqcss
  • 33. 7Transitions ntax Sy Vendor prefixes are required. Should be specified before standard property. -moz-transition: all .5s linear .2s; -o-transition: all .5s linear .2s; -webkit-transition: all .5s linear .2s; transition: all .5s linear .2s; #webqcss
  • 34. 7 • Transitions& Resou T ools rces Think Vitamin transitions tutorial thinkvitamin.com/code/sexy-interactions-with-css-transitions/ • cubic-bezier() easing with transitions cubic-bezier.com • CSS transitions gallery leaverou.github.com/animatable/ • Dynamic transitions generator css3generator.com #webqcss
  • 35. 8 Transforms transform enables modifications to coordinate-based CSS properties: • Translate • Rotate • Skew • Scale #webqcss
  • 36. 8 Transforms ntax Sy h3 {transform: rotate(45deg);} h3 {transform: translate(25px, 10px);} • Transform functions specify the modification action and corresponding values. #webqcss
  • 37. 8Transforms ntax Sy Vendor prefixes are required. Should be specified before standard property. -moz-transform: rotate(45deg); -o-transform: rotate(45deg); -webkit-transform: rotate(45deg); transform: rotate(45deg); #webqcss
  • 38. 8 • Transforms Resou To ols & rces Transforms tutorial css3files.com/transform/ • Text rotation tutorial snook.ca/archives/html_and_css/css-text-rotation • Transforms for IE useragentman.com/IETransformsTranslator/ • Dynamic transforms generator westciv.com/tools/transforms/ • Dynamic transforms generator css3generator.com #webqcss
  • 39. 9 Media Queries Media queries deliver styles based on the user’s display: • Media type • Browser window • Device screen, orientation & resolution • Colors #webqcss
  • 40. 9 Media Queriesntax Sy @media screen and (max-width: 650px){ } body {background: #f90;} • Nest resolution-specific styles within the @media query • Media options include all, handheld, projection, screen, tv • Properties and values establish the conditions for rendering styles #webqcss
  • 41. 9 • Media QueriesResou To ols & rces A List Apart’s responsive web design alistapart.com/articles/responsive-web-design/ • Emily’s media queries tutorial msdn.microsoft.com/en-us/scriptjunkie/gg619395 • Comprehensive media queries zomigi.com/blog/essential-considerations-for-crafting-quality-media-queries/ • Media queries polyfill github.com/scottjehl/Respond • Dynamic resolution testing quirktools.com/screenfly/ #webqcss
  • 42. 10 Feature Detection Feature detection tests for the existence of DOM properties and methods in order to determine whether a browser supports an operation. • Modernizr (best bet) modernizr.com • jQuery.support (if you really want to) api.jquery.com/jQuery.support/ • Rolling your own (not suggested) sitepoint.com/detect-css3-property-browser-support/ • Browser sniffing (outdated) #webqcss
  • 43. 10 • Feature Detection esources T ools &R Do you even need a polyfill? A fallback? caniuse.com • Conditional polyfill loading yepnopejs.com • Practical feature detection css-tricks.com/13641-sideways-headers/ #webqcss
  • 44. Questions? ? @emilylewis @jasonnakai #webqcss
  • 45. Thanks! ! What did you think? spkr8.com/t/8859 #webqcss