SlideShare uma empresa Scribd logo
1 de 25
Baixar para ler offline
LEARNING TO LOVE IE6




                                              Bruno Abrantes
                                     bruno@brunoabrantes.com
Monday, March 30, 2009
View the whole table at: http://www.w3schools.com/browsers/browsers_stats.asp




    OK, “LEARNING TO LIVE WITH IE6”

Monday, March 30, 2009
TARGET AUDIENCE


           can assume we’re dealing with an average of 20% of IE6
    • We
       users.

    • This  figure can go up or down, depending on your specific
       target audience.

                         you start developing, get to know your audience!
    • So, before




Monday, March 30, 2009
Imagem retirada de http://alistapart.com




            PROGRESSIVE ENHANCEMENT

Monday, March 30, 2009
PROGRESSIVE
                           ENHANCEMENT

    • Originates         from the principle of Graceful Degradation;

                          goes the opposite direction;
    • However, it

           should provide a regular experience for users with dated
    • You
       browsers.



Monday, March 30, 2009
PROGRESSIVE
                         ENHANCEMENT


    • However, for users with current browsers, you should provide
       an enhanced experience by adding small visual and functional
       niceties.




Monday, March 30, 2009
PROGRESSIVE
                                          ENHANCEMENT

    • Understanding                            Progressive Enhancement
       http://www.alistapart.com/articles/understandingprogressiveenhancement




    • Progressive                     Enhancement with CSS
       http://www.alistapart.com/articles/progressiveenhancementwithcss




    • Progressive                     Enhancement with JavaScript
       http://www.alistapart.com/articles/progressiveenhancementwithjavascript




Monday, March 30, 2009
STRICT DOCTYPES

    • To  minimize the impact of IE6’s rendering problems, you
       should always use Strict Doctypes:
            <!DOCTYPE HTML PUBLIC quot;-//W3C//DTD HTML 4.01//ENquot; quot;http://www.w3.org/TR/html4/
        •
            strict.dtdquot;>


            <!DOCTYPE html PUBLIC quot;-//W3C//DTD XHTML 1.0 Strict//ENquot; quot;http://www.w3.org/TR/
        •
            xhtml1/DTD/xhtml1-strict.dtdquot;>



          ensures pages are rendered in Standards-Compliant
    • This
       Mode, instead of the buggy Quirks Mode.


Monday, March 30, 2009
More information at: http://msdn.microsoft.com/en-us/library/ms537512(VS.85).aspx




         CONDITIONAL COMMENTS

Monday, March 30, 2009
CONDITIONAL COMMENTS


    • These comments only work in the various versions of IE/
       Windows, and all other browsers safely ignore them.

    • They   can be leveraged to provide alternate stylesheets or
       scripts that fix IE-specific bugs.




Monday, March 30, 2009
TEST EARLY, TEST OFTEN!


    • Never              leave browser testing to the final stages of your project.

                      should be iterative and complemented by a
    • Development
       testing stage at the end of each iteration.




Monday, March 30, 2009
IE BUGS
                         Which drive us absolutely bonkers!

Monday, March 30, 2009
BOX MODEL


    • One           of the most common bugs present in IE6 and below;

              will calculate the width of the box as being 100px;
    • IE

                other browsers will calculate a width of 124px;
    • All




Monday, March 30, 2009
BOX MODEL


    • The  best solution to this problem is to ensure rendering is
       done in Standards-Compliant Mode;

    • You   can, however, avoid using padding in layout boxes and
       instead use it directly on the elements inside the layout box
       which need padding.



Monday, March 30, 2009
DOUBLE-MARGIN BUG



             an element is floated in a direction, IE doubles the
    • When
       margin value in that direction.

              this example, the rendered margin would actually be 40px.
    • In




Monday, March 30, 2009
DOUBLE-MARGIN BUG

          common solution is to add display: inline to the element, but
    •A
       this is impractical (for instance, you can’t define a width or
       height on an inline-level element)

           can also try adding padding to the parent element to
    • You
       achieve the desired effect.

                  of using margin-right, use padding-right. Padding is
    • Or, instead
       not affected by this bug and may solve your problem.


Monday, March 30, 2009
MIN-WIDTH / MIN-HEIGHT



                 bluntly, IE6 does not support min-height and min-width (!)
    • Put

    • However, if an element has a fixed height value and it’s
       content grows out of bounds, IE6 stretches the container (!!)




Monday, March 30, 2009
MIN-WIDTH / MIN-HEIGHT


    • This  hack leverages the fact that IE6 does not understand
       neither min-height nor !important;

         establishes a minimum and auto height for the remaining
    • It
       browsers, while leaving IE6 with a static height.




Monday, March 30, 2009
STEPDOWN


                 happens when several elements are floated in the
    • Stepdown
       same direction.

          adds a line-break effect after each block-level element,
    • IE6
       wrecking vertical alignment.




Monday, March 30, 2009
STEPDOWN


    • One    possible solution is to make sure the floated elements
       are inline-level (display: inline forces this);

                solution is to set the line-height property of the
    • Another
       parent element to 0.




Monday, March 30, 2009
HOVER STATES


           only supports the pseudo-class :hover on anchor elements
    • IE6
       (<a>) and, even still, only if they have a value for the href
       attribute;

    • There   is a proprietary solution, but the best course of action is
       to stick to anchor elements when applying hover effects.



Monday, March 30, 2009
TRANSPARENT PNG SUPPORT



           does not support 24-bit PNGs, that is, PNGs with a
    • IE6
       transparent background.




Monday, March 30, 2009
SUPORTE PARA PNG
                            TRANSPARENTES

    • There              are two good solutions:

                         a .htc file (Twin Helix: IE PNG Fix)
    • Using

         by using Javascript (24 Ways: Superslight e PNGHack on
    • Or
       Google Code)



Monday, March 30, 2009
HASLAYOUT

    • hasLayout is an IE6 internal rule, which determines how
       elements are positioned in relation to others;

    • Activating         hasLayout usually solves some common positioning
       problems;

    • Two   of the most common solutions involve either setting the
       height to 1% (which only works if the parent element has no
       specified height) or by setting it position to relative.


Monday, March 30, 2009
THE END!

Monday, March 30, 2009

Mais conteúdo relacionado

Destaque

Formação Web Standards - Dia 1
Formação Web Standards - Dia 1Formação Web Standards - Dia 1
Formação Web Standards - Dia 1Bruno Abrantes
 
No widget is an island
No widget is an islandNo widget is an island
No widget is an islandBruno Abrantes
 
The New Frontend Toolchain
The New Frontend ToolchainThe New Frontend Toolchain
The New Frontend ToolchainBruno Abrantes
 
yalancıbahar
yalancıbaharyalancıbahar
yalancıbaharsarpkan
 

Destaque (6)

Formação Web Standards - Dia 1
Formação Web Standards - Dia 1Formação Web Standards - Dia 1
Formação Web Standards - Dia 1
 
VACO Raleigh Team
VACO Raleigh TeamVACO Raleigh Team
VACO Raleigh Team
 
No widget is an island
No widget is an islandNo widget is an island
No widget is an island
 
The New Frontend Toolchain
The New Frontend ToolchainThe New Frontend Toolchain
The New Frontend Toolchain
 
Workshop js
Workshop jsWorkshop js
Workshop js
 
yalancıbahar
yalancıbaharyalancıbahar
yalancıbahar
 

Semelhante a Learning To Love IE6

Accessible Javascript using Frameworks - Barcamp London 5
Accessible Javascript using Frameworks - Barcamp London 5Accessible Javascript using Frameworks - Barcamp London 5
Accessible Javascript using Frameworks - Barcamp London 5Dirk Ginader
 
Improving Drupal's Page Loading Performance
Improving Drupal's Page Loading PerformanceImproving Drupal's Page Loading Performance
Improving Drupal's Page Loading PerformanceWim Leers
 
Pixel Perfect Precision (how to do your design clean and neat)
Pixel Perfect Precision (how to do your design clean and neat)Pixel Perfect Precision (how to do your design clean and neat)
Pixel Perfect Precision (how to do your design clean and neat)Mitya Voskresensky
 
How to be Pixel Perfect (Replaces Making Accessibility Accessible) - Matt Gy...
How to be Pixel Perfect  (Replaces Making Accessibility Accessible) - Matt Gy...How to be Pixel Perfect  (Replaces Making Accessibility Accessible) - Matt Gy...
How to be Pixel Perfect (Replaces Making Accessibility Accessible) - Matt Gy...City University London
 
Avoiding common Accessibility mistakes
Avoiding common Accessibility mistakesAvoiding common Accessibility mistakes
Avoiding common Accessibility mistakesDirk Ginader
 
Jonathon Rochelle @ FOWA Feb 07
Jonathon Rochelle @ FOWA Feb 07Jonathon Rochelle @ FOWA Feb 07
Jonathon Rochelle @ FOWA Feb 07carsonsystems
 
Optimizing jpgs with MS Office Picture Manager
Optimizing jpgs with MS Office Picture ManagerOptimizing jpgs with MS Office Picture Manager
Optimizing jpgs with MS Office Picture Managernewgraham
 
Is the Open Web the Platform for Tomorrow
Is the Open Web the Platform for TomorrowIs the Open Web the Platform for Tomorrow
Is the Open Web the Platform for TomorrowJoe Walker
 
iPhone Development Overview
iPhone Development OverviewiPhone Development Overview
iPhone Development OverviewTom Adams
 
Google Analytics and Sungard HE Luminis
Google Analytics and Sungard HE LuminisGoogle Analytics and Sungard HE Luminis
Google Analytics and Sungard HE LuminisDavid Simpson
 
Making logos for i movie 09
Making logos for i movie 09Making logos for i movie 09
Making logos for i movie 09juliancoultas
 
How to create an educational wiki using pbworks
How to create an educational wiki using pbworksHow to create an educational wiki using pbworks
How to create an educational wiki using pbworksLeah Jensen
 
Inleiding tot CHI
Inleiding tot CHIInleiding tot CHI
Inleiding tot CHIErik Duval
 
Windows phone 8 Design
Windows phone 8 DesignWindows phone 8 Design
Windows phone 8 DesignMaria Nasioti
 
Performance as UX with Justin Howlett
Performance as UX with Justin HowlettPerformance as UX with Justin Howlett
Performance as UX with Justin HowlettFITC
 
Fullstack 2018 - Fast but not furious: debugging user interaction performanc...
Fullstack 2018 -  Fast but not furious: debugging user interaction performanc...Fullstack 2018 -  Fast but not furious: debugging user interaction performanc...
Fullstack 2018 - Fast but not furious: debugging user interaction performanc...Anna Migas
 

Semelhante a Learning To Love IE6 (20)

Image processing tips
Image processing tipsImage processing tips
Image processing tips
 
Accessible Javascript using Frameworks - Barcamp London 5
Accessible Javascript using Frameworks - Barcamp London 5Accessible Javascript using Frameworks - Barcamp London 5
Accessible Javascript using Frameworks - Barcamp London 5
 
Improving Drupal's Page Loading Performance
Improving Drupal's Page Loading PerformanceImproving Drupal's Page Loading Performance
Improving Drupal's Page Loading Performance
 
Pixel Perfect Precision (how to do your design clean and neat)
Pixel Perfect Precision (how to do your design clean and neat)Pixel Perfect Precision (how to do your design clean and neat)
Pixel Perfect Precision (how to do your design clean and neat)
 
How to be Pixel Perfect (Replaces Making Accessibility Accessible) - Matt Gy...
How to be Pixel Perfect  (Replaces Making Accessibility Accessible) - Matt Gy...How to be Pixel Perfect  (Replaces Making Accessibility Accessible) - Matt Gy...
How to be Pixel Perfect (Replaces Making Accessibility Accessible) - Matt Gy...
 
Ppp™
Ppp™Ppp™
Ppp™
 
Avoiding common Accessibility mistakes
Avoiding common Accessibility mistakesAvoiding common Accessibility mistakes
Avoiding common Accessibility mistakes
 
Jonathon Rochelle @ FOWA Feb 07
Jonathon Rochelle @ FOWA Feb 07Jonathon Rochelle @ FOWA Feb 07
Jonathon Rochelle @ FOWA Feb 07
 
Optimizing jpgs with MS Office Picture Manager
Optimizing jpgs with MS Office Picture ManagerOptimizing jpgs with MS Office Picture Manager
Optimizing jpgs with MS Office Picture Manager
 
Is the Open Web the Platform for Tomorrow
Is the Open Web the Platform for TomorrowIs the Open Web the Platform for Tomorrow
Is the Open Web the Platform for Tomorrow
 
iPhone Development Overview
iPhone Development OverviewiPhone Development Overview
iPhone Development Overview
 
Google Analytics and Sungard HE Luminis
Google Analytics and Sungard HE LuminisGoogle Analytics and Sungard HE Luminis
Google Analytics and Sungard HE Luminis
 
Making logos for i movie 09
Making logos for i movie 09Making logos for i movie 09
Making logos for i movie 09
 
How to create an educational wiki using pbworks
How to create an educational wiki using pbworksHow to create an educational wiki using pbworks
How to create an educational wiki using pbworks
 
A Period of Transition
A Period of TransitionA Period of Transition
A Period of Transition
 
Inleiding tot CHI
Inleiding tot CHIInleiding tot CHI
Inleiding tot CHI
 
Windows phone 8 Design
Windows phone 8 DesignWindows phone 8 Design
Windows phone 8 Design
 
Performance as UX with Justin Howlett
Performance as UX with Justin HowlettPerformance as UX with Justin Howlett
Performance as UX with Justin Howlett
 
Synergis University 2014 - Inventor Performance Optimization
Synergis University 2014 - Inventor Performance OptimizationSynergis University 2014 - Inventor Performance Optimization
Synergis University 2014 - Inventor Performance Optimization
 
Fullstack 2018 - Fast but not furious: debugging user interaction performanc...
Fullstack 2018 -  Fast but not furious: debugging user interaction performanc...Fullstack 2018 -  Fast but not furious: debugging user interaction performanc...
Fullstack 2018 - Fast but not furious: debugging user interaction performanc...
 

Mais de Bruno Abrantes

Plano de Investigação
Plano de InvestigaçãoPlano de Investigação
Plano de InvestigaçãoBruno Abrantes
 
Índice Enquadramento Teórico
Índice Enquadramento TeóricoÍndice Enquadramento Teórico
Índice Enquadramento TeóricoBruno Abrantes
 
SAPO Campus - P3 Presentation
SAPO Campus - P3 PresentationSAPO Campus - P3 Presentation
SAPO Campus - P3 PresentationBruno Abrantes
 
Sapo Campus - Investigação e Mundo Empresarial
Sapo Campus - Investigação e Mundo EmpresarialSapo Campus - Investigação e Mundo Empresarial
Sapo Campus - Investigação e Mundo EmpresarialBruno Abrantes
 

Mais de Bruno Abrantes (6)

Plano de Investigação
Plano de InvestigaçãoPlano de Investigação
Plano de Investigação
 
Índice Enquadramento Teórico
Índice Enquadramento TeóricoÍndice Enquadramento Teórico
Índice Enquadramento Teórico
 
SAPO Campus - Aula 5P
SAPO Campus - Aula 5PSAPO Campus - Aula 5P
SAPO Campus - Aula 5P
 
SAPO Campus - P3 Presentation
SAPO Campus - P3 PresentationSAPO Campus - P3 Presentation
SAPO Campus - P3 Presentation
 
SAPO Campus - P3
SAPO Campus - P3SAPO Campus - P3
SAPO Campus - P3
 
Sapo Campus - Investigação e Mundo Empresarial
Sapo Campus - Investigação e Mundo EmpresarialSapo Campus - Investigação e Mundo Empresarial
Sapo Campus - Investigação e Mundo Empresarial
 

Último

Kala jadu for love marriage | Real amil baba | Famous amil baba | kala jadu n...
Kala jadu for love marriage | Real amil baba | Famous amil baba | kala jadu n...Kala jadu for love marriage | Real amil baba | Famous amil baba | kala jadu n...
Kala jadu for love marriage | Real amil baba | Famous amil baba | kala jadu n...babafaisel
 
Captivating Charm: Exploring Marseille's Hillside Villas with Our 3D Architec...
Captivating Charm: Exploring Marseille's Hillside Villas with Our 3D Architec...Captivating Charm: Exploring Marseille's Hillside Villas with Our 3D Architec...
Captivating Charm: Exploring Marseille's Hillside Villas with Our 3D Architec...Yantram Animation Studio Corporation
 
Nepali Escort Girl Gomti Nagar \ 9548273370 Indian Call Girls Service Lucknow...
Nepali Escort Girl Gomti Nagar \ 9548273370 Indian Call Girls Service Lucknow...Nepali Escort Girl Gomti Nagar \ 9548273370 Indian Call Girls Service Lucknow...
Nepali Escort Girl Gomti Nagar \ 9548273370 Indian Call Girls Service Lucknow...nagunakhan
 
SCRIP Lua HTTP PROGRACMACION PLC WECON CA
SCRIP Lua HTTP PROGRACMACION PLC  WECON CASCRIP Lua HTTP PROGRACMACION PLC  WECON CA
SCRIP Lua HTTP PROGRACMACION PLC WECON CANestorGamez6
 
Top Rated Pune Call Girls Koregaon Park ⟟ 6297143586 ⟟ Call Me For Genuine S...
Top Rated  Pune Call Girls Koregaon Park ⟟ 6297143586 ⟟ Call Me For Genuine S...Top Rated  Pune Call Girls Koregaon Park ⟟ 6297143586 ⟟ Call Me For Genuine S...
Top Rated Pune Call Girls Koregaon Park ⟟ 6297143586 ⟟ Call Me For Genuine S...Call Girls in Nagpur High Profile
 
Booking open Available Pune Call Girls Nanded City 6297143586 Call Hot India...
Booking open Available Pune Call Girls Nanded City  6297143586 Call Hot India...Booking open Available Pune Call Girls Nanded City  6297143586 Call Hot India...
Booking open Available Pune Call Girls Nanded City 6297143586 Call Hot India...Call Girls in Nagpur High Profile
 
CBD Belapur Individual Call Girls In 08976425520 Panvel Only Genuine Call Girls
CBD Belapur Individual Call Girls In 08976425520 Panvel Only Genuine Call GirlsCBD Belapur Individual Call Girls In 08976425520 Panvel Only Genuine Call Girls
CBD Belapur Individual Call Girls In 08976425520 Panvel Only Genuine Call Girlsmodelanjalisharma4
 
The history of music videos a level presentation
The history of music videos a level presentationThe history of music videos a level presentation
The history of music videos a level presentationamedia6
 
Peaches App development presentation deck
Peaches App development presentation deckPeaches App development presentation deck
Peaches App development presentation decktbatkhuu1
 
(AISHA) Ambegaon Khurd Call Girls Just Call 7001035870 [ Cash on Delivery ] P...
(AISHA) Ambegaon Khurd Call Girls Just Call 7001035870 [ Cash on Delivery ] P...(AISHA) Ambegaon Khurd Call Girls Just Call 7001035870 [ Cash on Delivery ] P...
(AISHA) Ambegaon Khurd Call Girls Just Call 7001035870 [ Cash on Delivery ] P...ranjana rawat
 
WAEC Carpentry and Joinery Past Questions
WAEC Carpentry and Joinery Past QuestionsWAEC Carpentry and Joinery Past Questions
WAEC Carpentry and Joinery Past QuestionsCharles Obaleagbon
 
VIP Call Girls Service Mehdipatnam Hyderabad Call +91-8250192130
VIP Call Girls Service Mehdipatnam Hyderabad Call +91-8250192130VIP Call Girls Service Mehdipatnam Hyderabad Call +91-8250192130
VIP Call Girls Service Mehdipatnam Hyderabad Call +91-8250192130Suhani Kapoor
 
CALL ON ➥8923113531 🔝Call Girls Aminabad Lucknow best Night Fun service
CALL ON ➥8923113531 🔝Call Girls Aminabad Lucknow best Night Fun serviceCALL ON ➥8923113531 🔝Call Girls Aminabad Lucknow best Night Fun service
CALL ON ➥8923113531 🔝Call Girls Aminabad Lucknow best Night Fun serviceanilsa9823
 
AMBER GRAIN EMBROIDERY | Growing folklore elements | Root-based materials, w...
AMBER GRAIN EMBROIDERY | Growing folklore elements |  Root-based materials, w...AMBER GRAIN EMBROIDERY | Growing folklore elements |  Root-based materials, w...
AMBER GRAIN EMBROIDERY | Growing folklore elements | Root-based materials, w...BarusRa
 
Dubai Call Girls Pro Domain O525547819 Call Girls Dubai Doux
Dubai Call Girls Pro Domain O525547819 Call Girls Dubai DouxDubai Call Girls Pro Domain O525547819 Call Girls Dubai Doux
Dubai Call Girls Pro Domain O525547819 Call Girls Dubai Douxkojalkojal131
 
VIP Call Girls Bhiwandi Ananya 8250192130 Independent Escort Service Bhiwandi
VIP Call Girls Bhiwandi Ananya 8250192130 Independent Escort Service BhiwandiVIP Call Girls Bhiwandi Ananya 8250192130 Independent Escort Service Bhiwandi
VIP Call Girls Bhiwandi Ananya 8250192130 Independent Escort Service BhiwandiSuhani Kapoor
 
Kurla Call Girls Pooja Nehwal📞 9892124323 ✅ Vashi Call Service Available Nea...
Kurla Call Girls Pooja Nehwal📞 9892124323 ✅  Vashi Call Service Available Nea...Kurla Call Girls Pooja Nehwal📞 9892124323 ✅  Vashi Call Service Available Nea...
Kurla Call Girls Pooja Nehwal📞 9892124323 ✅ Vashi Call Service Available Nea...Pooja Nehwal
 

Último (20)

Kala jadu for love marriage | Real amil baba | Famous amil baba | kala jadu n...
Kala jadu for love marriage | Real amil baba | Famous amil baba | kala jadu n...Kala jadu for love marriage | Real amil baba | Famous amil baba | kala jadu n...
Kala jadu for love marriage | Real amil baba | Famous amil baba | kala jadu n...
 
Captivating Charm: Exploring Marseille's Hillside Villas with Our 3D Architec...
Captivating Charm: Exploring Marseille's Hillside Villas with Our 3D Architec...Captivating Charm: Exploring Marseille's Hillside Villas with Our 3D Architec...
Captivating Charm: Exploring Marseille's Hillside Villas with Our 3D Architec...
 
B. Smith. (Architectural Portfolio.).pdf
B. Smith. (Architectural Portfolio.).pdfB. Smith. (Architectural Portfolio.).pdf
B. Smith. (Architectural Portfolio.).pdf
 
Nepali Escort Girl Gomti Nagar \ 9548273370 Indian Call Girls Service Lucknow...
Nepali Escort Girl Gomti Nagar \ 9548273370 Indian Call Girls Service Lucknow...Nepali Escort Girl Gomti Nagar \ 9548273370 Indian Call Girls Service Lucknow...
Nepali Escort Girl Gomti Nagar \ 9548273370 Indian Call Girls Service Lucknow...
 
SCRIP Lua HTTP PROGRACMACION PLC WECON CA
SCRIP Lua HTTP PROGRACMACION PLC  WECON CASCRIP Lua HTTP PROGRACMACION PLC  WECON CA
SCRIP Lua HTTP PROGRACMACION PLC WECON CA
 
Top Rated Pune Call Girls Koregaon Park ⟟ 6297143586 ⟟ Call Me For Genuine S...
Top Rated  Pune Call Girls Koregaon Park ⟟ 6297143586 ⟟ Call Me For Genuine S...Top Rated  Pune Call Girls Koregaon Park ⟟ 6297143586 ⟟ Call Me For Genuine S...
Top Rated Pune Call Girls Koregaon Park ⟟ 6297143586 ⟟ Call Me For Genuine S...
 
young call girls in Vivek Vihar🔝 9953056974 🔝 Delhi escort Service
young call girls in Vivek Vihar🔝 9953056974 🔝 Delhi escort Serviceyoung call girls in Vivek Vihar🔝 9953056974 🔝 Delhi escort Service
young call girls in Vivek Vihar🔝 9953056974 🔝 Delhi escort Service
 
Booking open Available Pune Call Girls Nanded City 6297143586 Call Hot India...
Booking open Available Pune Call Girls Nanded City  6297143586 Call Hot India...Booking open Available Pune Call Girls Nanded City  6297143586 Call Hot India...
Booking open Available Pune Call Girls Nanded City 6297143586 Call Hot India...
 
CBD Belapur Individual Call Girls In 08976425520 Panvel Only Genuine Call Girls
CBD Belapur Individual Call Girls In 08976425520 Panvel Only Genuine Call GirlsCBD Belapur Individual Call Girls In 08976425520 Panvel Only Genuine Call Girls
CBD Belapur Individual Call Girls In 08976425520 Panvel Only Genuine Call Girls
 
The history of music videos a level presentation
The history of music videos a level presentationThe history of music videos a level presentation
The history of music videos a level presentation
 
escort service sasti (*~Call Girls in Prasad Nagar Metro❤️9953056974
escort service sasti (*~Call Girls in Prasad Nagar Metro❤️9953056974escort service sasti (*~Call Girls in Prasad Nagar Metro❤️9953056974
escort service sasti (*~Call Girls in Prasad Nagar Metro❤️9953056974
 
Peaches App development presentation deck
Peaches App development presentation deckPeaches App development presentation deck
Peaches App development presentation deck
 
(AISHA) Ambegaon Khurd Call Girls Just Call 7001035870 [ Cash on Delivery ] P...
(AISHA) Ambegaon Khurd Call Girls Just Call 7001035870 [ Cash on Delivery ] P...(AISHA) Ambegaon Khurd Call Girls Just Call 7001035870 [ Cash on Delivery ] P...
(AISHA) Ambegaon Khurd Call Girls Just Call 7001035870 [ Cash on Delivery ] P...
 
WAEC Carpentry and Joinery Past Questions
WAEC Carpentry and Joinery Past QuestionsWAEC Carpentry and Joinery Past Questions
WAEC Carpentry and Joinery Past Questions
 
VIP Call Girls Service Mehdipatnam Hyderabad Call +91-8250192130
VIP Call Girls Service Mehdipatnam Hyderabad Call +91-8250192130VIP Call Girls Service Mehdipatnam Hyderabad Call +91-8250192130
VIP Call Girls Service Mehdipatnam Hyderabad Call +91-8250192130
 
CALL ON ➥8923113531 🔝Call Girls Aminabad Lucknow best Night Fun service
CALL ON ➥8923113531 🔝Call Girls Aminabad Lucknow best Night Fun serviceCALL ON ➥8923113531 🔝Call Girls Aminabad Lucknow best Night Fun service
CALL ON ➥8923113531 🔝Call Girls Aminabad Lucknow best Night Fun service
 
AMBER GRAIN EMBROIDERY | Growing folklore elements | Root-based materials, w...
AMBER GRAIN EMBROIDERY | Growing folklore elements |  Root-based materials, w...AMBER GRAIN EMBROIDERY | Growing folklore elements |  Root-based materials, w...
AMBER GRAIN EMBROIDERY | Growing folklore elements | Root-based materials, w...
 
Dubai Call Girls Pro Domain O525547819 Call Girls Dubai Doux
Dubai Call Girls Pro Domain O525547819 Call Girls Dubai DouxDubai Call Girls Pro Domain O525547819 Call Girls Dubai Doux
Dubai Call Girls Pro Domain O525547819 Call Girls Dubai Doux
 
VIP Call Girls Bhiwandi Ananya 8250192130 Independent Escort Service Bhiwandi
VIP Call Girls Bhiwandi Ananya 8250192130 Independent Escort Service BhiwandiVIP Call Girls Bhiwandi Ananya 8250192130 Independent Escort Service Bhiwandi
VIP Call Girls Bhiwandi Ananya 8250192130 Independent Escort Service Bhiwandi
 
Kurla Call Girls Pooja Nehwal📞 9892124323 ✅ Vashi Call Service Available Nea...
Kurla Call Girls Pooja Nehwal📞 9892124323 ✅  Vashi Call Service Available Nea...Kurla Call Girls Pooja Nehwal📞 9892124323 ✅  Vashi Call Service Available Nea...
Kurla Call Girls Pooja Nehwal📞 9892124323 ✅ Vashi Call Service Available Nea...
 

Learning To Love IE6

  • 1. LEARNING TO LOVE IE6 Bruno Abrantes bruno@brunoabrantes.com Monday, March 30, 2009
  • 2. View the whole table at: http://www.w3schools.com/browsers/browsers_stats.asp OK, “LEARNING TO LIVE WITH IE6” Monday, March 30, 2009
  • 3. TARGET AUDIENCE can assume we’re dealing with an average of 20% of IE6 • We users. • This figure can go up or down, depending on your specific target audience. you start developing, get to know your audience! • So, before Monday, March 30, 2009
  • 4. Imagem retirada de http://alistapart.com PROGRESSIVE ENHANCEMENT Monday, March 30, 2009
  • 5. PROGRESSIVE ENHANCEMENT • Originates from the principle of Graceful Degradation; goes the opposite direction; • However, it should provide a regular experience for users with dated • You browsers. Monday, March 30, 2009
  • 6. PROGRESSIVE ENHANCEMENT • However, for users with current browsers, you should provide an enhanced experience by adding small visual and functional niceties. Monday, March 30, 2009
  • 7. PROGRESSIVE ENHANCEMENT • Understanding Progressive Enhancement http://www.alistapart.com/articles/understandingprogressiveenhancement • Progressive Enhancement with CSS http://www.alistapart.com/articles/progressiveenhancementwithcss • Progressive Enhancement with JavaScript http://www.alistapart.com/articles/progressiveenhancementwithjavascript Monday, March 30, 2009
  • 8. STRICT DOCTYPES • To minimize the impact of IE6’s rendering problems, you should always use Strict Doctypes: <!DOCTYPE HTML PUBLIC quot;-//W3C//DTD HTML 4.01//ENquot; quot;http://www.w3.org/TR/html4/ • strict.dtdquot;> <!DOCTYPE html PUBLIC quot;-//W3C//DTD XHTML 1.0 Strict//ENquot; quot;http://www.w3.org/TR/ • xhtml1/DTD/xhtml1-strict.dtdquot;> ensures pages are rendered in Standards-Compliant • This Mode, instead of the buggy Quirks Mode. Monday, March 30, 2009
  • 9. More information at: http://msdn.microsoft.com/en-us/library/ms537512(VS.85).aspx CONDITIONAL COMMENTS Monday, March 30, 2009
  • 10. CONDITIONAL COMMENTS • These comments only work in the various versions of IE/ Windows, and all other browsers safely ignore them. • They can be leveraged to provide alternate stylesheets or scripts that fix IE-specific bugs. Monday, March 30, 2009
  • 11. TEST EARLY, TEST OFTEN! • Never leave browser testing to the final stages of your project. should be iterative and complemented by a • Development testing stage at the end of each iteration. Monday, March 30, 2009
  • 12. IE BUGS Which drive us absolutely bonkers! Monday, March 30, 2009
  • 13. BOX MODEL • One of the most common bugs present in IE6 and below; will calculate the width of the box as being 100px; • IE other browsers will calculate a width of 124px; • All Monday, March 30, 2009
  • 14. BOX MODEL • The best solution to this problem is to ensure rendering is done in Standards-Compliant Mode; • You can, however, avoid using padding in layout boxes and instead use it directly on the elements inside the layout box which need padding. Monday, March 30, 2009
  • 15. DOUBLE-MARGIN BUG an element is floated in a direction, IE doubles the • When margin value in that direction. this example, the rendered margin would actually be 40px. • In Monday, March 30, 2009
  • 16. DOUBLE-MARGIN BUG common solution is to add display: inline to the element, but •A this is impractical (for instance, you can’t define a width or height on an inline-level element) can also try adding padding to the parent element to • You achieve the desired effect. of using margin-right, use padding-right. Padding is • Or, instead not affected by this bug and may solve your problem. Monday, March 30, 2009
  • 17. MIN-WIDTH / MIN-HEIGHT bluntly, IE6 does not support min-height and min-width (!) • Put • However, if an element has a fixed height value and it’s content grows out of bounds, IE6 stretches the container (!!) Monday, March 30, 2009
  • 18. MIN-WIDTH / MIN-HEIGHT • This hack leverages the fact that IE6 does not understand neither min-height nor !important; establishes a minimum and auto height for the remaining • It browsers, while leaving IE6 with a static height. Monday, March 30, 2009
  • 19. STEPDOWN happens when several elements are floated in the • Stepdown same direction. adds a line-break effect after each block-level element, • IE6 wrecking vertical alignment. Monday, March 30, 2009
  • 20. STEPDOWN • One possible solution is to make sure the floated elements are inline-level (display: inline forces this); solution is to set the line-height property of the • Another parent element to 0. Monday, March 30, 2009
  • 21. HOVER STATES only supports the pseudo-class :hover on anchor elements • IE6 (<a>) and, even still, only if they have a value for the href attribute; • There is a proprietary solution, but the best course of action is to stick to anchor elements when applying hover effects. Monday, March 30, 2009
  • 22. TRANSPARENT PNG SUPPORT does not support 24-bit PNGs, that is, PNGs with a • IE6 transparent background. Monday, March 30, 2009
  • 23. SUPORTE PARA PNG TRANSPARENTES • There are two good solutions: a .htc file (Twin Helix: IE PNG Fix) • Using by using Javascript (24 Ways: Superslight e PNGHack on • Or Google Code) Monday, March 30, 2009
  • 24. HASLAYOUT • hasLayout is an IE6 internal rule, which determines how elements are positioned in relation to others; • Activating hasLayout usually solves some common positioning problems; • Two of the most common solutions involve either setting the height to 1% (which only works if the parent element has no specified height) or by setting it position to relative. Monday, March 30, 2009