SlideShare a Scribd company logo
1 of 23
Goal is predictability
                           across browsers




                              All content is
                               standards
                               compliant
Pre-standards



                Present
Session Objective(s):
  Discuss the new layout engine and its
  capabilities
  Explain the strategy for improved standards
  compliance in IE8 layout
  Introduce version targeting and how it may be
  used to maintain site compatibility
Key Takeaway – Understand how Internet
Explorer 8 is delivering improved standards
compliance and what this means for your
web site now and in the future
• Great typographic
                  foundation
    New
                • Designed with CSS 2.1
Layout Engine
                  spec in hand
                • Deprecation of hasLayout
  MSHTML
Tenet #1 – Better support for web standards


                     MODES
                                    IE 8
                                    • CSS 2.1 layout +
                                      Javascript / OM
                                      improvements


                                        IE8 Layout
Goal = CSS 2.1 compliance
Great progress to date: ACID2 displays correctly




Additional Resources
        Video
        Blog post
9.3.1 Choosing a positioning scheme: 'position' property
Path to CSS 2.1 compliancethe normal flow (this is
                                                 not crystal
The box's position is calculated according to
clear position in normal flow). Then the box is offset relative to its
called the
normal position. When a box B is relatively positioned, the position of
the followingof test suite though B were not offset. The effect
     Lack box is calculated as
of 'position:relative' on table-row-group, table-header-group, table-
          Contributing tests to the W3C
footer-group, table-row, table-column-group, table-column, table-cell,
and Areas of elements is undefined.
     table-caption ambiguity in spec


Driving principle = Interoperability
    Follow the spec to the letter
    For areas of ambiguity, seek clarification from
    the working group
       Compare browsers and propose common ground
       Propose solution that is in line with the intent of the
       spec
Enable new
                  Enable new
            experiences
                  experiences



Existing sites
  just work Existing sites
               just work
Tenet #2 – Allow developers to choose IE7
compatibility mode if they want / need it
                                         MODES
IE <= 6                            IE 7
• Quirks mode                      • Standards mode




                      IE7 Layout*

*Security fixes made to IE7 layout code path may cause changes in behavior from IE7 to IE8
Multiple layout modes provide support for Quirks,
Standards, and IE8 Standards modes
                             MODES
IE <= 6               IE 7                    IE 8
• Quirks mode         • Standards mode        • CSS 2.1 rendering
                                                + Javascript / OM
                          Mode must be          improvements
                         enabled via opt-in

                IE7 Layout                       IE8 Layout

                                                 Default = best
                                                standards mode
Common Name         Compatibility Mode
                                         Declared <META>
                    Value
                                         overrides
Quirks              IE=5
                                         <!DOCTYPE>
IE7 Standards       IE=7
                                         Compatibility mode
                                         switch can “lock-in”
IE8 Standards       IE=8
                                         Quirks and IE7
Always Use Latest   IE=edge
                                         Standards modes as
Mode
                                         well
  <script type=quot;text/javascriptquot;>
  // What mode is my document in?
  document.write(quot;My document is in IEquot; +
  document.documentMode + quot; compatibility modequot;);
  </script>
Opt-in via <META> tag or HTTP header
<!DOCTYPE html PUBLIC quot;-//W3C//DTD XHTML 1.0 Strict//ENquot;
quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtdquot;>

<html xmlns:web xmlns=quot;http://www.w3.org/1999/xhtmlquot; lang=quot;enquot;
xml:lang=quot;enquot; class=quot;liveApp la_en lo_us IE IE_8quot;>
<head>
        <title>Test Page</title>
        <meta http-equiv=“X-UA-Compatible” content=“IE=8” />
        <meta http-equiv=quot;Content-Typequot; content=quot;text/html;
        charset=utf-8quot; />
        <meta name=quot;descriptionquot; content=quot;Find exactly what you are
        looking for – FAST!quot; />
        <meta name=quot;ROBOTSquot; content=quot;NOODPquot; />
         <link rel=quot;stylesheetquot; type=quot;text/cssquot;
        ref=quot;stylesheets/standards.cssquot; />
</head>
Call to action: update User-Agent string sniffing

User-Agent Sniffing
Incorrect:
if ( ver > -1 )
  {
    if ( ver == 7.0 )
      msg = quot;You're using a recent copy of Internet Explorer.quot;
    else
      msg = quot;You should upgrade your copy of Internet Explorer.quot;;
  }

Correct:
if ( ver > -1 )
  {
    if ( ver >= 7.0 )
      msg = quot;You're using a recent copy of Internet Explorer.quot;
    else
      msg = quot;You should upgrade your copy of Internet Explorer.quot;;
  }
Call to action: update conditional comment blocks

Conditional Comments
If document is IE8 Standards:
<head>
<title>Test Page</title>
/* pass down-level browsers style fix-ups */
<!--[if lte IE 7]>
<link rel=quot;stylesheetquot; type=quot;text/cssquot; href=“stylesheets/ie.cssquot; />
<![endif]-->
</head>

If document is Quirks / IE7 Standards:
<head>
<title>Test Page</title>
/* non-standard content: pass all versions of Internet Explorer fix-ups */
<!--[if gte IE 7]>
<link rel=quot;stylesheetquot; type=quot;text/cssquot; href=“stylesheets/ie.cssquot; />
<![endif]-->
</head>
Interoperability

Compatibility

New scenarios
© 2008 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.
The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market
     conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation.
                                 MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
Advanced Cross-Browser Layout with Internet Explorer 8

More Related Content

Similar to Advanced Cross-Browser Layout with Internet Explorer 8

Welcome to IE8 - Integrating Your Site With Internet Explorer 8
Welcome to IE8 - Integrating Your Site With Internet Explorer 8Welcome to IE8 - Integrating Your Site With Internet Explorer 8
Welcome to IE8 - Integrating Your Site With Internet Explorer 8Lachlan Hardy
 
ME vs WEB - AngularJS Fundamentals
ME vs WEB - AngularJS FundamentalsME vs WEB - AngularJS Fundamentals
ME vs WEB - AngularJS FundamentalsAviran Cohen
 
Application Architecture Trends
Application Architecture TrendsApplication Architecture Trends
Application Architecture TrendsSrini Penchikala
 
Untying the Knots of Web Dev with Internet Explorer
Untying the Knots of Web Dev with Internet Explorer Untying the Knots of Web Dev with Internet Explorer
Untying the Knots of Web Dev with Internet Explorer Sarah Dutkiewicz
 
IE 8 et les standards du Web - Chris Wilson - Paris Web 2008
IE 8 et les standards du Web - Chris Wilson - Paris Web 2008IE 8 et les standards du Web - Chris Wilson - Paris Web 2008
IE 8 et les standards du Web - Chris Wilson - Paris Web 2008Association Paris-Web
 
Java ide comparision
Java ide comparisionJava ide comparision
Java ide comparisionRaj
 
Struts 2-overview2
Struts 2-overview2Struts 2-overview2
Struts 2-overview2divzi1913
 
Struts2-Spring=Hibernate
Struts2-Spring=HibernateStruts2-Spring=Hibernate
Struts2-Spring=HibernateJay Shah
 
Developing Your Ultimate Package
Developing Your Ultimate PackageDeveloping Your Ultimate Package
Developing Your Ultimate PackageSimon Collison
 
07 response-headers
07 response-headers07 response-headers
07 response-headershanichandra
 
深入淺出RoR
深入淺出RoR深入淺出RoR
深入淺出RoREric Lee
 
Strut2-Spring-Hibernate
Strut2-Spring-HibernateStrut2-Spring-Hibernate
Strut2-Spring-HibernateJay Shah
 
CTU June 2011 - Things that Every ASP.NET Developer Should Know
CTU June 2011 - Things that Every ASP.NET Developer Should KnowCTU June 2011 - Things that Every ASP.NET Developer Should Know
CTU June 2011 - Things that Every ASP.NET Developer Should KnowSpiffy
 
New Features of Java7 SE
New Features of Java7 SENew Features of Java7 SE
New Features of Java7 SEdogangoko
 
Nuxeo Roadmap 2008/06
Nuxeo Roadmap 2008/06Nuxeo Roadmap 2008/06
Nuxeo Roadmap 2008/06Eric Barroca
 
Java EE 6 workshop at Dallas Tech Fest 2011
Java EE 6 workshop at Dallas Tech Fest 2011Java EE 6 workshop at Dallas Tech Fest 2011
Java EE 6 workshop at Dallas Tech Fest 2011Arun Gupta
 

Similar to Advanced Cross-Browser Layout with Internet Explorer 8 (20)

Welcome to IE8 - Integrating Your Site With Internet Explorer 8
Welcome to IE8 - Integrating Your Site With Internet Explorer 8Welcome to IE8 - Integrating Your Site With Internet Explorer 8
Welcome to IE8 - Integrating Your Site With Internet Explorer 8
 
ME vs WEB - AngularJS Fundamentals
ME vs WEB - AngularJS FundamentalsME vs WEB - AngularJS Fundamentals
ME vs WEB - AngularJS Fundamentals
 
Application Architecture Trends
Application Architecture TrendsApplication Architecture Trends
Application Architecture Trends
 
Untying the Knots of Web Dev with Internet Explorer
Untying the Knots of Web Dev with Internet Explorer Untying the Knots of Web Dev with Internet Explorer
Untying the Knots of Web Dev with Internet Explorer
 
IE 8 et les standards du Web - Chris Wilson - Paris Web 2008
IE 8 et les standards du Web - Chris Wilson - Paris Web 2008IE 8 et les standards du Web - Chris Wilson - Paris Web 2008
IE 8 et les standards du Web - Chris Wilson - Paris Web 2008
 
Java ide comparision
Java ide comparisionJava ide comparision
Java ide comparision
 
Struts 2-overview2
Struts 2-overview2Struts 2-overview2
Struts 2-overview2
 
Struts2-Spring=Hibernate
Struts2-Spring=HibernateStruts2-Spring=Hibernate
Struts2-Spring=Hibernate
 
Developing Your Ultimate Package
Developing Your Ultimate PackageDeveloping Your Ultimate Package
Developing Your Ultimate Package
 
07 response-headers
07 response-headers07 response-headers
07 response-headers
 
深入淺出RoR
深入淺出RoR深入淺出RoR
深入淺出RoR
 
Strut2-Spring-Hibernate
Strut2-Spring-HibernateStrut2-Spring-Hibernate
Strut2-Spring-Hibernate
 
Coding the UI
Coding the UICoding the UI
Coding the UI
 
Coding Ui
Coding UiCoding Ui
Coding Ui
 
Glass Fish Portfolio Web Server Cvr
Glass Fish Portfolio Web Server CvrGlass Fish Portfolio Web Server Cvr
Glass Fish Portfolio Web Server Cvr
 
JavaServer Pages
JavaServer PagesJavaServer Pages
JavaServer Pages
 
CTU June 2011 - Things that Every ASP.NET Developer Should Know
CTU June 2011 - Things that Every ASP.NET Developer Should KnowCTU June 2011 - Things that Every ASP.NET Developer Should Know
CTU June 2011 - Things that Every ASP.NET Developer Should Know
 
New Features of Java7 SE
New Features of Java7 SENew Features of Java7 SE
New Features of Java7 SE
 
Nuxeo Roadmap 2008/06
Nuxeo Roadmap 2008/06Nuxeo Roadmap 2008/06
Nuxeo Roadmap 2008/06
 
Java EE 6 workshop at Dallas Tech Fest 2011
Java EE 6 workshop at Dallas Tech Fest 2011Java EE 6 workshop at Dallas Tech Fest 2011
Java EE 6 workshop at Dallas Tech Fest 2011
 

More from goodfriday

Narine Presentations 20051021 134052
Narine Presentations 20051021 134052Narine Presentations 20051021 134052
Narine Presentations 20051021 134052goodfriday
 
09 03 22 easter
09 03 22 easter09 03 22 easter
09 03 22 eastergoodfriday
 
Holy Week Easter 2009
Holy Week Easter 2009Holy Week Easter 2009
Holy Week Easter 2009goodfriday
 
Holt Park Easter 09 Swim
Holt Park Easter 09 SwimHolt Park Easter 09 Swim
Holt Park Easter 09 Swimgoodfriday
 
Swarthmore Lentbrochure20092
Swarthmore Lentbrochure20092Swarthmore Lentbrochure20092
Swarthmore Lentbrochure20092goodfriday
 
Eastercard2009
Eastercard2009Eastercard2009
Eastercard2009goodfriday
 
Easterservices2009
Easterservices2009Easterservices2009
Easterservices2009goodfriday
 
Bulletin Current
Bulletin CurrentBulletin Current
Bulletin Currentgoodfriday
 
March 2009 Newsletter
March 2009 NewsletterMarch 2009 Newsletter
March 2009 Newslettergoodfriday
 
Lent Easter 2009
Lent Easter 2009Lent Easter 2009
Lent Easter 2009goodfriday
 
Easterpowersports09
Easterpowersports09Easterpowersports09
Easterpowersports09goodfriday
 
Easter Trading 09
Easter Trading 09Easter Trading 09
Easter Trading 09goodfriday
 
Easter Brochure 2009
Easter Brochure 2009Easter Brochure 2009
Easter Brochure 2009goodfriday
 
March April 2009 Calendar
March April 2009 CalendarMarch April 2009 Calendar
March April 2009 Calendargoodfriday
 

More from goodfriday (20)

Narine Presentations 20051021 134052
Narine Presentations 20051021 134052Narine Presentations 20051021 134052
Narine Presentations 20051021 134052
 
Triunemar05
Triunemar05Triunemar05
Triunemar05
 
09 03 22 easter
09 03 22 easter09 03 22 easter
09 03 22 easter
 
Holy Week Easter 2009
Holy Week Easter 2009Holy Week Easter 2009
Holy Week Easter 2009
 
Holt Park Easter 09 Swim
Holt Park Easter 09 SwimHolt Park Easter 09 Swim
Holt Park Easter 09 Swim
 
Easter Letter
Easter LetterEaster Letter
Easter Letter
 
April2009
April2009April2009
April2009
 
Swarthmore Lentbrochure20092
Swarthmore Lentbrochure20092Swarthmore Lentbrochure20092
Swarthmore Lentbrochure20092
 
Eastercard2009
Eastercard2009Eastercard2009
Eastercard2009
 
Easterservices2009
Easterservices2009Easterservices2009
Easterservices2009
 
Bulletin Current
Bulletin CurrentBulletin Current
Bulletin Current
 
Easter2009
Easter2009Easter2009
Easter2009
 
Bulletin
BulletinBulletin
Bulletin
 
March 2009 Newsletter
March 2009 NewsletterMarch 2009 Newsletter
March 2009 Newsletter
 
Mar 29 2009
Mar 29 2009Mar 29 2009
Mar 29 2009
 
Lent Easter 2009
Lent Easter 2009Lent Easter 2009
Lent Easter 2009
 
Easterpowersports09
Easterpowersports09Easterpowersports09
Easterpowersports09
 
Easter Trading 09
Easter Trading 09Easter Trading 09
Easter Trading 09
 
Easter Brochure 2009
Easter Brochure 2009Easter Brochure 2009
Easter Brochure 2009
 
March April 2009 Calendar
March April 2009 CalendarMarch April 2009 Calendar
March April 2009 Calendar
 

Recently uploaded

Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfRankYa
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
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
 
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
 
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
 
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
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
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
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024The Digital Insurer
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
"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
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Wonjun Hwang
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 
"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
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
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
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 

Recently uploaded (20)

Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdf
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
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
 
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
 
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
 
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
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
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
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
"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...
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 
"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
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
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
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 

Advanced Cross-Browser Layout with Internet Explorer 8

  • 1.
  • 2. Goal is predictability across browsers All content is standards compliant Pre-standards Present
  • 3.
  • 4. Session Objective(s): Discuss the new layout engine and its capabilities Explain the strategy for improved standards compliance in IE8 layout Introduce version targeting and how it may be used to maintain site compatibility Key Takeaway – Understand how Internet Explorer 8 is delivering improved standards compliance and what this means for your web site now and in the future
  • 5. • Great typographic foundation New • Designed with CSS 2.1 Layout Engine spec in hand • Deprecation of hasLayout MSHTML
  • 6. Tenet #1 – Better support for web standards MODES IE 8 • CSS 2.1 layout + Javascript / OM improvements IE8 Layout
  • 7. Goal = CSS 2.1 compliance Great progress to date: ACID2 displays correctly Additional Resources Video Blog post
  • 8.
  • 9. 9.3.1 Choosing a positioning scheme: 'position' property Path to CSS 2.1 compliancethe normal flow (this is not crystal The box's position is calculated according to clear position in normal flow). Then the box is offset relative to its called the normal position. When a box B is relatively positioned, the position of the followingof test suite though B were not offset. The effect Lack box is calculated as of 'position:relative' on table-row-group, table-header-group, table- Contributing tests to the W3C footer-group, table-row, table-column-group, table-column, table-cell, and Areas of elements is undefined. table-caption ambiguity in spec Driving principle = Interoperability Follow the spec to the letter For areas of ambiguity, seek clarification from the working group Compare browsers and propose common ground Propose solution that is in line with the intent of the spec
  • 10.
  • 11. Enable new Enable new experiences experiences Existing sites just work Existing sites just work
  • 12. Tenet #2 – Allow developers to choose IE7 compatibility mode if they want / need it MODES IE <= 6 IE 7 • Quirks mode • Standards mode IE7 Layout* *Security fixes made to IE7 layout code path may cause changes in behavior from IE7 to IE8
  • 13.
  • 14. Multiple layout modes provide support for Quirks, Standards, and IE8 Standards modes MODES IE <= 6 IE 7 IE 8 • Quirks mode • Standards mode • CSS 2.1 rendering + Javascript / OM Mode must be improvements enabled via opt-in IE7 Layout IE8 Layout Default = best standards mode
  • 15. Common Name Compatibility Mode Declared <META> Value overrides Quirks IE=5 <!DOCTYPE> IE7 Standards IE=7 Compatibility mode switch can “lock-in” IE8 Standards IE=8 Quirks and IE7 Always Use Latest IE=edge Standards modes as Mode well <script type=quot;text/javascriptquot;> // What mode is my document in? document.write(quot;My document is in IEquot; + document.documentMode + quot; compatibility modequot;); </script>
  • 16. Opt-in via <META> tag or HTTP header <!DOCTYPE html PUBLIC quot;-//W3C//DTD XHTML 1.0 Strict//ENquot; quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtdquot;> <html xmlns:web xmlns=quot;http://www.w3.org/1999/xhtmlquot; lang=quot;enquot; xml:lang=quot;enquot; class=quot;liveApp la_en lo_us IE IE_8quot;> <head> <title>Test Page</title> <meta http-equiv=“X-UA-Compatible” content=“IE=8” /> <meta http-equiv=quot;Content-Typequot; content=quot;text/html; charset=utf-8quot; /> <meta name=quot;descriptionquot; content=quot;Find exactly what you are looking for – FAST!quot; /> <meta name=quot;ROBOTSquot; content=quot;NOODPquot; /> <link rel=quot;stylesheetquot; type=quot;text/cssquot; ref=quot;stylesheets/standards.cssquot; /> </head>
  • 17.
  • 18. Call to action: update User-Agent string sniffing User-Agent Sniffing Incorrect: if ( ver > -1 ) { if ( ver == 7.0 ) msg = quot;You're using a recent copy of Internet Explorer.quot; else msg = quot;You should upgrade your copy of Internet Explorer.quot;; } Correct: if ( ver > -1 ) { if ( ver >= 7.0 ) msg = quot;You're using a recent copy of Internet Explorer.quot; else msg = quot;You should upgrade your copy of Internet Explorer.quot;; }
  • 19. Call to action: update conditional comment blocks Conditional Comments If document is IE8 Standards: <head> <title>Test Page</title> /* pass down-level browsers style fix-ups */ <!--[if lte IE 7]> <link rel=quot;stylesheetquot; type=quot;text/cssquot; href=“stylesheets/ie.cssquot; /> <![endif]--> </head> If document is Quirks / IE7 Standards: <head> <title>Test Page</title> /* non-standard content: pass all versions of Internet Explorer fix-ups */ <!--[if gte IE 7]> <link rel=quot;stylesheetquot; type=quot;text/cssquot; href=“stylesheets/ie.cssquot; /> <![endif]--> </head>
  • 20.
  • 22. © 2008 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.