While we’re getting ready to start, please
              download the three exercises from:
              http://yuiblog.com/devday06/yui-css/



             YUI’s Foundational CSS
                     CSS Reset, CSS Fonts, CSS Grids




                                                                                               Nate Koechley
Nate Koechley – natek@yahoo-inc.com – Yahoo! Hack Day, September 29/30th, 2006   Platform Engineering, Yahoo!
                                                                                                           1
YUI’s Foundational CSS
                     CSS Reset, CSS Fonts, CSS Grids




                                                                                               Nate Koechley
Nate Koechley – natek@yahoo-inc.com – Yahoo! Hack Day, September 29/30th, 2006   Platform Engineering, Yahoo!
                                                                                                           2
About me…
                      natek@yahoo-inc.com

      • YUI team:
            – Engineer and Design Liaison
            – Technical Evangelist
      • Graded Browser Support…
            …and browser vendor coordination
      • http://yuiblog.com
      • http://nate.koechley.com/blog

Nate Koechley – natek@yahoo-inc.com – Yahoo! Hack Day, September 29/30th, 2006   3
What we’ll cover…

      • Background and YUI CSS Goals
      • Hands-on with CSS Reset
      • Hands-on with CSS Fonts
      • Hands-on with CSS Grids
            – What It Does (x3)
            – Using It (x3)



Nate Koechley – natek@yahoo-inc.com – Yahoo! Hack Day, September 29/30th, 2006   4
CSS is Accretive…

      • An element’s presentation accumulates
        substance from every rule that touches it
            – via direct declaration, cascade, inheritance


      • Put another way:
            – CSS rules build on one another




Nate Koechley – natek@yahoo-inc.com – Yahoo! Hack Day, September 29/30th, 2006   5
CSS’s Two Mechanisms

      • Cascade
            – many rules  single element
      • Inheritance
            – single rule  many elements



      (And don’t forget about cascading inheritance, of course.)


Nate Koechley – natek@yahoo-inc.com – Yahoo! Hack Day, September 29/30th, 2006   6
CSS is Accretive… (cont’d)

      • The accretive aspects of CSS –
        cascade and inheritance – are the
        source of CSS’s power…




Nate Koechley – natek@yahoo-inc.com – Yahoo! Hack Day, September 29/30th, 2006   7
CSS is Accretive… (cont’d)

      … but also a source of vulnerability:

      A worrying equation:
            Slight disagreement on foundational rules
         + Slight disagreement on application of rules
      ----------------------------------------------------------------
         = Dramatic compounded difference!


Nate Koechley – natek@yahoo-inc.com – Yahoo! Hack Day, September 29/30th, 2006   8
YUI CSS Goals

      1. Normalize and stabilize
            •      Sound foundation enables sane
                   development
      2. Maximize Availability and Accessibility
      3. Centralize wheel invention
      4. Centralize kludges
      5. A-Grade Browser Support
      6. Support Yahoo! Specifications
Nate Koechley – natek@yahoo-inc.com – Yahoo! Hack Day, September 29/30th, 2006   9
The Three Tools

      1. CSS Reset
      2. CSS Fonts
      3. CSS Grids




Nate Koechley – natek@yahoo-inc.com – Yahoo! Hack Day, September 29/30th, 2006   10
YUI Reset – What it Does
                      http://developer.yahoo.com/yui/reset

      • Cross-browser normalization of the
        default rendering of HTML elements
            – Overcome browser.css
            – Level the playing field




Nate Koechley – natek@yahoo-inc.com – Yahoo! Hack Day, September 29/30th, 2006   11
Removes common “default”
                      presentation

      • Helps ensure all style is declared
        intentionally
            – You choose how you want to <em>phasize
              something
      • Allows us to choose elements based on
        their semantic meaning instead of their
        “default” presentation
            – You choose how you want to render <li>sts
      • A-Grade Browser Support
Nate Koechley – natek@yahoo-inc.com – Yahoo! Hack Day, September 29/30th, 2006   12
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,
fieldset,input,p,blockquote,th,td
      {margin:0;padding:0;}
table
  {border-collapse:collapse;border-spacing:0;}
fieldset,img
  {border:0;}
address,caption,cite,code,dfn,em,strong,th,var
  {font-style:normal;font-weight:normal;}
ol,ul
  {list-style:none;}
caption,th
  {text-align:left;}
h1,h2,h3,h4,h5,h6
  {font-size:100%;}
q:before,q:after
  {content:'';}
Using YUI Reset http://
                      developer.yahoo.com/yui/reset

   • Step 1: Say what you mean.
   • (there is no Step 2)
                       strong {font-weight:bold;}
                       h1 {margin-bottom:1em;}


                       li {
                       background:transparent
                       url(dot.gif)
                       no-repeat left 6px;
                       padding:0 0 0 .55em;
                       }

Nate Koechley – natek@yahoo-inc.com – Yahoo! Hack Day, September 29/30th, 2006   14
YUI Fonts – What it Does…
                      http://developer.yahoo.com/yui/fonts

      • Consistent font sizing and line-height
      • Appropriate cross-OS font-family
        degradation paths
            – e.g., arial, helvetica, sans-serif
      • Not fixed, so users can adjust the font
        size within their browser
            – Even when adjusted, better cross-browser
              consistency


Nate Koechley – natek@yahoo-inc.com – Yahoo! Hack Day, September 29/30th, 2006   15
YUI Fonts – What it Does (cont’d)
                      http://developer.yahoo.com/yui/fonts

      • Works in both Quirks Mode and
        Standards Mode
            – A centralized “kludge” (was “hack”, but…)
            – We develop with HTML 4.01 Strict which
              puts us in Standards Mode
      • Normalizes “em” size (almost)
            – Allows font-size-responsive positioning
      • A-Grade Browser Support

Nate Koechley – natek@yahoo-inc.com – Yahoo! Hack Day, September 29/30th, 2006   16
YUI Fonts – What it Does (cont’d)
                      http://developer.yahoo.com/yui/fonts

      • For free:
            – Font-family: Arial (except per OS)
            – Font-size = 13px (not pixels)
            – Line-height = 16px (not pixels)
      • Consistent em dimension.




Nate Koechley – natek@yahoo-inc.com – Yahoo! Hack Day, September 29/30th, 2006   17
Using YUI Fonts: Setting Size

      To get pixel size         Use this percentage                      http://developer.yahoo.com/yui/
      10px                      77%
      11px                      85%
      12px                      92%
      13px                      100%
      14px                      107%               h1 {font-size:136%;}
      15px                      114%               #node {font-size:77%;}
      16px                      122%
      17px                      129%
      18px                      136%
      19px                      144%
      20px                      152%

Nate Koechley – natek@yahoo-inc.com – Yahoo! Hack Day, September 29/30th, 2006                     18
Using YUI Fonts: Setting Font

 We use:
       – Arial (default)
       – Verdana
                                        h1 {font-family:georgia;}
       – Georgia
                                        #node {font-family:verdana;}
       – Tahoma                         .error {
       – Monospace                           font-size:77%;
                                             font-family:verdana;
                                             color:red;
                                        }


Nate Koechley – natek@yahoo-inc.com – Yahoo! Hack Day, September 29/30th, 2006   19
Hands-on Exercise #1

  • Open hackday-exercise1.html
  • Match these specs:

                                                                          16 pixels

                                                                          Verdana 11 pixels and grey
                                                                          (#666)



                                                                          italic
                                                                          1em margin at the bottom of
                                                                          each paragraph and after
                                                                          source/timestamp


Nate Koechley – natek@yahoo-inc.com – Yahoo! Hack Day, September 29/30th, 2006                          20
YUI Grids – What it Does
                      http://developer.yahoo.com/yui/grids


      “The safe and easy way to create complex
        page and template layouts that are
        bulletproof and flexible.”


      • 130+ layouts from single efficient CSS file
            – (under 1.9kb)
      • Recursive, extensible system

Nate Koechley – natek@yahoo-inc.com – Yahoo! Hack Day, September 29/30th, 2006   21
YUI Grids – What it Does (cont’d)
                      http://developer.yahoo.com/yui/grids

      • Scale with font-size adjustment
      • Source-order independent
      • Self-clearing footer
      • Fits all IAB Advertising Units
      • Forward-compatible (coming soon!)
      • A-Grade Browser Support


Nate Koechley – natek@yahoo-inc.com – Yahoo! Hack Day, September 29/30th, 2006   22
How It Works…

      Two Components:
            1. Templates
            2. Subdivide with Grids and Units




Nate Koechley – natek@yahoo-inc.com – Yahoo! Hack Day, September 29/30th, 2006   23
How It Works… (cont’d)

      • Choose a template (yui-t1…yui-t7)




Nate Koechley – natek@yahoo-inc.com – Yahoo! Hack Day, September 29/30th, 2006   24
<body>
<div id="doc” class=“yui-t1”>
 <div id="hd"></div>
 <div id="bd">
    <div id=“yui-main”>
        <div class=“yui-b”></div>
    </div>
    <div class=“yui-b”></div>
 </div>
 <div id="ft"></div>
</div>
Hands-on Exercise #2

  • Open hackday-exercise2.html
  • Switch top-level template (yui-t1)
  • Experiment with source-order control




Nate Koechley – natek@yahoo-inc.com – Yahoo! Hack Day, September 29/30th, 2006   26
How It Works… (cont’d)

                                        • “Recursively subdivide”
                                        • Based on “grids”
                                          holding “units”


                                        • Custom “grids” for non-
                                          even unit distribution

Nate Koechley – natek@yahoo-inc.com – Yahoo! Hack Day, September 29/30th, 2006   27
The Base Case:



.yui-g
    .yui-u first
    .yui-u
The Base Case:



.yui-g (tells children to take 50%)
    .yui-u first (obey parent)
    .yui-u (obey parent)
The Base Case:



<div class=“yui-g”>
  <div class=“yui-u first”></div>
  <div class=“yui-u”></div>
</div>
1. You Can Nest Grids.
2. Units and Grids can both be within Grids.

<div class=“yui-g”>
  <div class=“yui-u first”></div>
  <div class=“yui-g”>
    <div class=“yui-u first”></div>
    <div class=“yui-u”></div>
  </div>
</div>
What % does each take up?



<div class=“yui-g”>
 <div class=“yui-u first”></div>
 <div class=“yui-g”>
    <div class=“yui-u first”></div>
    <div class=“yui-u”></div>
 </div>
</div>
Special Grids (yui-g[a...f])



<div class=“yui-gb”>
 <div class=“yui-u first”>33%</div>
 <div class=“yui-u”>33%</div>
 <div class=“yui-u”>33%</div>
</div>
. . .
<div id=“bd”>
  <div class=“yui-b”></div>
  <div id=“yui-main”>
    <div class=“yui-b”>
       <div class=“yui-g”>
         <div class=“yui-u first”></div>
         <div class=“yui-u”></div>
       </div>
    </div>
  </div>
</div>
. . .
<div class=“yui-b”>
  <div class=“yui-g”>
    <div class=“yui-g first”>
         <div class=“yui-u first”></div>
         <div class=“yui-u”></div>
    </div>
    <div class=“yui-g”>
         <div class=“yui-u first”></div>
         <div class=“yui-u”></div>
    </div>
  </div>
</div>
.yui-g
  .yui-g first
     .yui-u first
     .yui-u
  .yui-g
     .yui-u first
     .yui-u
.yui-g (tells children to take 50%)
  .yui-g first (half of parent & children take half)
     .yui-u first (half of parent)
     .yui-u (half of parent)
  .yui-g (half of parent & children take half)
     .yui-u first (half of parent)
     .yui-u (half of parent)
Hands-on Exercise #3

                                      •      Open hackday-exercise3.html
                                      •      Experiment stacking grids
                                      •      Experiment nesting grids
                                      •      Experiment with custom grids




Nate Koechley – natek@yahoo-inc.com – Yahoo! Hack Day, September 29/30th, 2006   38
Thanks!

      • Available for questions all day and night
            – In Clasroom 1 and Classroom 6
            – Wandering around
      • Hack on, hackers




Nate Koechley – natek@yahoo-inc.com – Yahoo! Hack Day, September 29/30th, 2006   39

More Related Content

PDF
Yuicss R7
PDF
Music Hackday Boston - The Last.fm API
PPTX
Yovita kristin (090210302079)
PPTX
Presentatie1 voor slideshare
PDF
Making API documentation work
DOCX
Budgeting
DOCX
Industry
PDF
Yuicss R7
Music Hackday Boston - The Last.fm API
Yovita kristin (090210302079)
Presentatie1 voor slideshare
Making API documentation work
Budgeting
Industry

Viewers also liked (11)

PPTX
Essential YUI
PPTX
Ciparay
PPTX
Media evaluation
PPT
Regresiones, de Vicente Muñoz Ávarez
PPTX
세바기(세상을 바꾸는 기술)_변화를 위한 무한도전
PPTX
Designing a "nutrition facts" label for disclosing prepaid card fees
DOCX
Industry
PDF
Analsisis pisa
DOC
S ilabus tik smp berkarakter kelas 7 sd 9
PPTX
e-Manufacturing; before and after
PPTX
mes와 fems을 활용한 생산공장 에너지효율화
Essential YUI
Ciparay
Media evaluation
Regresiones, de Vicente Muñoz Ávarez
세바기(세상을 바꾸는 기술)_변화를 위한 무한도전
Designing a "nutrition facts" label for disclosing prepaid card fees
Industry
Analsisis pisa
S ilabus tik smp berkarakter kelas 7 sd 9
e-Manufacturing; before and after
mes와 fems을 활용한 생산공장 에너지효율화
Ad

Similar to Yui css (7)

PDF
Vienna Feb 2015: Cassandra: How it works and what it's good for!
PDF
Jan 2015 - Cassandra101 Manchester Meetup
PDF
Drupal 7 ninja theming
PDF
Responsive Web Design tips and tricks.
PDF
Rwd slidedeck
KEY
Trendsetting: Web Design and Beyond
PDF
SASS: The Next Wave in Styling and Theming
Vienna Feb 2015: Cassandra: How it works and what it's good for!
Jan 2015 - Cassandra101 Manchester Meetup
Drupal 7 ninja theming
Responsive Web Design tips and tricks.
Rwd slidedeck
Trendsetting: Web Design and Beyond
SASS: The Next Wave in Styling and Theming
Ad

Recently uploaded (20)

PDF
Improvisation in detection of pomegranate leaf disease using transfer learni...
PPTX
Build Your First AI Agent with UiPath.pptx
PDF
Statistics on Ai - sourced from AIPRM.pdf
PPTX
Custom Battery Pack Design Considerations for Performance and Safety
PPT
Galois Field Theory of Risk: A Perspective, Protocol, and Mathematical Backgr...
PDF
“A New Era of 3D Sensing: Transforming Industries and Creating Opportunities,...
PPTX
AI-driven Assurance Across Your End-to-end Network With ThousandEyes
PDF
CXOs-Are-you-still-doing-manual-DevOps-in-the-age-of-AI.pdf
PDF
Rapid Prototyping: A lecture on prototyping techniques for interface design
PDF
5-Ways-AI-is-Revolutionizing-Telecom-Quality-Engineering.pdf
PPTX
Module 1 Introduction to Web Programming .pptx
PPTX
MuleSoft-Compete-Deck for midddleware integrations
PPTX
AI IN MARKETING- PRESENTED BY ANWAR KABIR 1st June 2025.pptx
PDF
Taming the Chaos: How to Turn Unstructured Data into Decisions
PDF
Co-training pseudo-labeling for text classification with support vector machi...
PDF
AI.gov: A Trojan Horse in the Age of Artificial Intelligence
PDF
4 layer Arch & Reference Arch of IoT.pdf
PDF
Comparative analysis of machine learning models for fake news detection in so...
PPTX
Internet of Everything -Basic concepts details
PDF
The-2025-Engineering-Revolution-AI-Quality-and-DevOps-Convergence.pdf
Improvisation in detection of pomegranate leaf disease using transfer learni...
Build Your First AI Agent with UiPath.pptx
Statistics on Ai - sourced from AIPRM.pdf
Custom Battery Pack Design Considerations for Performance and Safety
Galois Field Theory of Risk: A Perspective, Protocol, and Mathematical Backgr...
“A New Era of 3D Sensing: Transforming Industries and Creating Opportunities,...
AI-driven Assurance Across Your End-to-end Network With ThousandEyes
CXOs-Are-you-still-doing-manual-DevOps-in-the-age-of-AI.pdf
Rapid Prototyping: A lecture on prototyping techniques for interface design
5-Ways-AI-is-Revolutionizing-Telecom-Quality-Engineering.pdf
Module 1 Introduction to Web Programming .pptx
MuleSoft-Compete-Deck for midddleware integrations
AI IN MARKETING- PRESENTED BY ANWAR KABIR 1st June 2025.pptx
Taming the Chaos: How to Turn Unstructured Data into Decisions
Co-training pseudo-labeling for text classification with support vector machi...
AI.gov: A Trojan Horse in the Age of Artificial Intelligence
4 layer Arch & Reference Arch of IoT.pdf
Comparative analysis of machine learning models for fake news detection in so...
Internet of Everything -Basic concepts details
The-2025-Engineering-Revolution-AI-Quality-and-DevOps-Convergence.pdf

Yui css

  • 1. While we’re getting ready to start, please download the three exercises from: http://yuiblog.com/devday06/yui-css/ YUI’s Foundational CSS CSS Reset, CSS Fonts, CSS Grids Nate Koechley Nate Koechley – [email protected] – Yahoo! Hack Day, September 29/30th, 2006 Platform Engineering, Yahoo! 1
  • 2. YUI’s Foundational CSS CSS Reset, CSS Fonts, CSS Grids Nate Koechley Nate Koechley – [email protected] – Yahoo! Hack Day, September 29/30th, 2006 Platform Engineering, Yahoo! 2
  • 3. About me… [email protected] • YUI team: – Engineer and Design Liaison – Technical Evangelist • Graded Browser Support… …and browser vendor coordination • http://yuiblog.com • http://nate.koechley.com/blog Nate Koechley – [email protected] – Yahoo! Hack Day, September 29/30th, 2006 3
  • 4. What we’ll cover… • Background and YUI CSS Goals • Hands-on with CSS Reset • Hands-on with CSS Fonts • Hands-on with CSS Grids – What It Does (x3) – Using It (x3) Nate Koechley – [email protected] – Yahoo! Hack Day, September 29/30th, 2006 4
  • 5. CSS is Accretive… • An element’s presentation accumulates substance from every rule that touches it – via direct declaration, cascade, inheritance • Put another way: – CSS rules build on one another Nate Koechley – [email protected] – Yahoo! Hack Day, September 29/30th, 2006 5
  • 6. CSS’s Two Mechanisms • Cascade – many rules  single element • Inheritance – single rule  many elements (And don’t forget about cascading inheritance, of course.) Nate Koechley – [email protected] – Yahoo! Hack Day, September 29/30th, 2006 6
  • 7. CSS is Accretive… (cont’d) • The accretive aspects of CSS – cascade and inheritance – are the source of CSS’s power… Nate Koechley – [email protected] – Yahoo! Hack Day, September 29/30th, 2006 7
  • 8. CSS is Accretive… (cont’d) … but also a source of vulnerability: A worrying equation: Slight disagreement on foundational rules + Slight disagreement on application of rules ---------------------------------------------------------------- = Dramatic compounded difference! Nate Koechley – [email protected] – Yahoo! Hack Day, September 29/30th, 2006 8
  • 9. YUI CSS Goals 1. Normalize and stabilize • Sound foundation enables sane development 2. Maximize Availability and Accessibility 3. Centralize wheel invention 4. Centralize kludges 5. A-Grade Browser Support 6. Support Yahoo! Specifications Nate Koechley – [email protected] – Yahoo! Hack Day, September 29/30th, 2006 9
  • 10. The Three Tools 1. CSS Reset 2. CSS Fonts 3. CSS Grids Nate Koechley – [email protected] – Yahoo! Hack Day, September 29/30th, 2006 10
  • 11. YUI Reset – What it Does http://developer.yahoo.com/yui/reset • Cross-browser normalization of the default rendering of HTML elements – Overcome browser.css – Level the playing field Nate Koechley – [email protected] – Yahoo! Hack Day, September 29/30th, 2006 11
  • 12. Removes common “default” presentation • Helps ensure all style is declared intentionally – You choose how you want to <em>phasize something • Allows us to choose elements based on their semantic meaning instead of their “default” presentation – You choose how you want to render <li>sts • A-Grade Browser Support Nate Koechley – [email protected] – Yahoo! Hack Day, September 29/30th, 2006 12
  • 13. body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form, fieldset,input,p,blockquote,th,td {margin:0;padding:0;} table {border-collapse:collapse;border-spacing:0;} fieldset,img {border:0;} address,caption,cite,code,dfn,em,strong,th,var {font-style:normal;font-weight:normal;} ol,ul {list-style:none;} caption,th {text-align:left;} h1,h2,h3,h4,h5,h6 {font-size:100%;} q:before,q:after {content:'';}
  • 14. Using YUI Reset http:// developer.yahoo.com/yui/reset • Step 1: Say what you mean. • (there is no Step 2) strong {font-weight:bold;} h1 {margin-bottom:1em;} li { background:transparent url(dot.gif) no-repeat left 6px; padding:0 0 0 .55em; } Nate Koechley – [email protected] – Yahoo! Hack Day, September 29/30th, 2006 14
  • 15. YUI Fonts – What it Does… http://developer.yahoo.com/yui/fonts • Consistent font sizing and line-height • Appropriate cross-OS font-family degradation paths – e.g., arial, helvetica, sans-serif • Not fixed, so users can adjust the font size within their browser – Even when adjusted, better cross-browser consistency Nate Koechley – [email protected] – Yahoo! Hack Day, September 29/30th, 2006 15
  • 16. YUI Fonts – What it Does (cont’d) http://developer.yahoo.com/yui/fonts • Works in both Quirks Mode and Standards Mode – A centralized “kludge” (was “hack”, but…) – We develop with HTML 4.01 Strict which puts us in Standards Mode • Normalizes “em” size (almost) – Allows font-size-responsive positioning • A-Grade Browser Support Nate Koechley – [email protected] – Yahoo! Hack Day, September 29/30th, 2006 16
  • 17. YUI Fonts – What it Does (cont’d) http://developer.yahoo.com/yui/fonts • For free: – Font-family: Arial (except per OS) – Font-size = 13px (not pixels) – Line-height = 16px (not pixels) • Consistent em dimension. Nate Koechley – [email protected] – Yahoo! Hack Day, September 29/30th, 2006 17
  • 18. Using YUI Fonts: Setting Size To get pixel size Use this percentage http://developer.yahoo.com/yui/ 10px 77% 11px 85% 12px 92% 13px 100% 14px 107% h1 {font-size:136%;} 15px 114% #node {font-size:77%;} 16px 122% 17px 129% 18px 136% 19px 144% 20px 152% Nate Koechley – [email protected] – Yahoo! Hack Day, September 29/30th, 2006 18
  • 19. Using YUI Fonts: Setting Font We use: – Arial (default) – Verdana h1 {font-family:georgia;} – Georgia #node {font-family:verdana;} – Tahoma .error { – Monospace font-size:77%; font-family:verdana; color:red; } Nate Koechley – [email protected] – Yahoo! Hack Day, September 29/30th, 2006 19
  • 20. Hands-on Exercise #1 • Open hackday-exercise1.html • Match these specs: 16 pixels Verdana 11 pixels and grey (#666) italic 1em margin at the bottom of each paragraph and after source/timestamp Nate Koechley – [email protected] – Yahoo! Hack Day, September 29/30th, 2006 20
  • 21. YUI Grids – What it Does http://developer.yahoo.com/yui/grids “The safe and easy way to create complex page and template layouts that are bulletproof and flexible.” • 130+ layouts from single efficient CSS file – (under 1.9kb) • Recursive, extensible system Nate Koechley – [email protected] – Yahoo! Hack Day, September 29/30th, 2006 21
  • 22. YUI Grids – What it Does (cont’d) http://developer.yahoo.com/yui/grids • Scale with font-size adjustment • Source-order independent • Self-clearing footer • Fits all IAB Advertising Units • Forward-compatible (coming soon!) • A-Grade Browser Support Nate Koechley – [email protected] – Yahoo! Hack Day, September 29/30th, 2006 22
  • 23. How It Works… Two Components: 1. Templates 2. Subdivide with Grids and Units Nate Koechley – [email protected] – Yahoo! Hack Day, September 29/30th, 2006 23
  • 24. How It Works… (cont’d) • Choose a template (yui-t1…yui-t7) Nate Koechley – [email protected] – Yahoo! Hack Day, September 29/30th, 2006 24
  • 25. <body> <div id="doc” class=“yui-t1”> <div id="hd"></div> <div id="bd"> <div id=“yui-main”> <div class=“yui-b”></div> </div> <div class=“yui-b”></div> </div> <div id="ft"></div> </div>
  • 26. Hands-on Exercise #2 • Open hackday-exercise2.html • Switch top-level template (yui-t1) • Experiment with source-order control Nate Koechley – [email protected] – Yahoo! Hack Day, September 29/30th, 2006 26
  • 27. How It Works… (cont’d) • “Recursively subdivide” • Based on “grids” holding “units” • Custom “grids” for non- even unit distribution Nate Koechley – [email protected] – Yahoo! Hack Day, September 29/30th, 2006 27
  • 28. The Base Case: .yui-g .yui-u first .yui-u
  • 29. The Base Case: .yui-g (tells children to take 50%) .yui-u first (obey parent) .yui-u (obey parent)
  • 30. The Base Case: <div class=“yui-g”> <div class=“yui-u first”></div> <div class=“yui-u”></div> </div>
  • 31. 1. You Can Nest Grids. 2. Units and Grids can both be within Grids. <div class=“yui-g”> <div class=“yui-u first”></div> <div class=“yui-g”> <div class=“yui-u first”></div> <div class=“yui-u”></div> </div> </div>
  • 32. What % does each take up? <div class=“yui-g”> <div class=“yui-u first”></div> <div class=“yui-g”> <div class=“yui-u first”></div> <div class=“yui-u”></div> </div> </div>
  • 33. Special Grids (yui-g[a...f]) <div class=“yui-gb”> <div class=“yui-u first”>33%</div> <div class=“yui-u”>33%</div> <div class=“yui-u”>33%</div> </div>
  • 34. . . . <div id=“bd”> <div class=“yui-b”></div> <div id=“yui-main”> <div class=“yui-b”> <div class=“yui-g”> <div class=“yui-u first”></div> <div class=“yui-u”></div> </div> </div> </div> </div>
  • 35. . . . <div class=“yui-b”> <div class=“yui-g”> <div class=“yui-g first”> <div class=“yui-u first”></div> <div class=“yui-u”></div> </div> <div class=“yui-g”> <div class=“yui-u first”></div> <div class=“yui-u”></div> </div> </div> </div>
  • 36. .yui-g .yui-g first .yui-u first .yui-u .yui-g .yui-u first .yui-u
  • 37. .yui-g (tells children to take 50%) .yui-g first (half of parent & children take half) .yui-u first (half of parent) .yui-u (half of parent) .yui-g (half of parent & children take half) .yui-u first (half of parent) .yui-u (half of parent)
  • 38. Hands-on Exercise #3 • Open hackday-exercise3.html • Experiment stacking grids • Experiment nesting grids • Experiment with custom grids Nate Koechley – [email protected] – Yahoo! Hack Day, September 29/30th, 2006 38
  • 39. Thanks! • Available for questions all day and night – In Clasroom 1 and Classroom 6 – Wandering around • Hack on, hackers Nate Koechley – [email protected] – Yahoo! Hack Day, September 29/30th, 2006 39