SlideShare uma empresa Scribd logo
1 de 33
o o se æss æss e ælsk!!!!
1 inn’troduksjon te o o se æss æss fra jængen i Finnj
Bilde fra: https://www.nordicchoicehotels.no/kampanjer-og-tilbud/hotell_trondheim/
Meg – Espen Dalløkken
•  Utviklet ting for web
siden ’98
•  Jobber i FINN.no
•  Organiserer Web
Rebels
Spilleliste
•  Object Oriented CSS
–  Prinsipper, historie
•  Fra tresløyd til Lego
–  Awesomeboard, Feedback, www, m, pipeline
•  Responsive Web Design og mobile enheter
Object Oriented CSS
•  Skrevet av Nicole Sulivan ca i 2009 mens hun
jobbet i Yahoo!
•  Freelance konsulent og arrangør av CSS Conf
US/EU
•  Formålet var å gjøre utvikling med CSS:
–  Stabilt
–  Modularisert
–  Forutsigbart
http://www.stubbornella.org/
http://www.slideshare.net/stubbornella/object-oriented-css
Problemer med CSS i 2009 (og i 2013)
•  Størrelsene på filene blir bare større jo lengre en
løsning lever
•  Gjenbruk finnes nesten ikke
•  CSS koden er altfor skjør og knekker altfor ofte
•  Best-practices hindrer oss faktisk i å lage
robuste løsninger med bra ytelse
Nøkkelprinsipper i OOCSS
•  Skille struktur og utseende/skins
–  Bakgrunner og borders i egne skins
–  Klassenavn for å navgi objekter fremfor HTML
semantikk
•  Skille container og innhold
–  Et objekt skal se likt ut uansett hvor du legger det inn
•  Alt skal være åpent utvidelse
Gridsystem er fundamentet for OOCSS
Fra tresløyd til Lego
Eller historien om hvordan et helt
selskap plutselig snakket om strap-on i
enhver sammenheng uten blygsel..
Hvorfor begynte FINN å se på OOCSS?
•  En CSS kodebase fullstendig ute av kontroll som
gjorde oss ute av stand til å gjøre endringer på
tvers
•  En kodebase på front-end uten særlig fokus på
ytelse
•  Ingen effekt av å ha et av Norges største miljø
for framsieutvikling
•  @magnars startet å bruke det på /oppdrag
CSS kodelukten var plagsom
•  Utviklere lager sine egne ”øyer” for å holde
kontroll
•  En utvikling mot stadig mer spesifikke regler
•  !important kriger
•  Løser samme feil gjentatte ganger pga
duplisering
Strap-on prosjektet
•  Vi laget en basis pakke basert på OOCSS
•  Deretter skrev vi om del for del alt av HTML på
hele FINN
•  Dette tok litt over 1 ½ år
•  I det vi var ferdig, redesignet 3 stk hele FINN på
ca 3 uker
Hjernene bak /strapon
En kjørende styleguide - /strapon
Hva måtte vi lage selv?
•  OOCSS er en basispakke hvor vi bruker noe,
men ikke alt
•  Forms oppsett rappet vi fra Bootstrap, men har
nå skrevet det helt om
•  Kommer ikke med noe ferdig widget bibliotek
–  tooltips, dialoger, tabs, etc måtte vi lage
•  Responsive Web Design er ikke en del av
basispakken
•  Bells’n whistles måtte vi lage selv
Take aways fra å utvide OOCSS
•  Å ta inn ting som ikke er OOCSS virker lurt når
du gjør det, men du vil slite med det senere
•  Basisen kan veldig enkelt utvides
•  Du kan enkelt bygge det som måtte mangle
Økt rendering hastighet
Tallenes klare tale
Før 1. iterasjon Mars 2013 Nå
# CSS files 130 38 56 57
# Lines of
Code
32 798 2 927 6 187 5 226
# Font-size
declarations
1 623 45 57 69
Strap-on i fri dressur
Hva skjedde med rammeverket etter vi var ferdig med v1.0?
Fortsetter å levere
•  Nye tjenester kommer raskt opp med riktig
utseende (finn.no/smajobber)
•  Interne verktøy bruker oftere vårt rammeverk
over Bootstrap (yay!)
•  Utviklere med ingen kunnskap om CSS kan
jobbe uten å ødelegge noe
•  Vi utvider rammeverket med forms-oppsett og
mer responsive tilpassninger
Strap-on – one stop shop for CSS
•  Ligger i bunnen på alle løsninger vi lager
•  Nye tjenester kan lages uten å skrive ny CSS
•  To utviklere har skrev og nå vedlikeholder og
videreutvikler kjernen
–  Resten jobber med nye ting eller spesialtilpassninger
som kun brukes ett sted og bidrar med innspill og
forbedringer
CSS rammeverk smack down
Bootstrap
•  Kan brukes out of the box
•  Utstrakt widget bibliotek
•  Lite performance fokus
•  Lite mobilvennlig
•  Støtte for LESS/SASS/etc
OOCSS
•  Rammeverk som vil kreve
egen tilpasning
•  Pure CSS, ikke noe
JavaScript
•  Skrevet for performance
•  Kompatibelt tilbake til IE5
(vistnok)
Responsive Web Design og OOCSS
•  RWD ”fantes ikke” da OOCSS ble unfanget
•  Prinsippene fra OOCSS passer ikke helt med
ideen om responsive web sites
•  Finnes ingen boilerplate på hvordan gjøre det
Vi har prøvd og feilet
•  Første versjon baserte seg på å tilpasse
rammeverksklasser (opt-out)
•  Andre versjon hadde noen egne responsive
klasser
•  Tredje versjon har egne objekter som gir
responsive oppførsel (opt-in)
•  The Neverending Grid
Icon-fonts
•  Tidligere hadde vi sprites for alt av små grafikk
elementer og ikoner
•  Bilde sprites blir mye arbeid å vedlikehold med
ulike oppløsninger, størrelser, enheter og
plattformer (web/native)
•  Icon-fonts er:
–  Skalerbare
–  Cachet
Icon-font gotchas
•  IE krever eget oppsett av content-types på
serveren
•  Levetiden til nettlesercache for fontene er difus
•  Blinde brukere ser kun bokstavene du bruker
•  Du må ha fallbacks for eldre IE nettlesere
Ok, en kort recap
•  OOCSS krever litt arbeid
•  Leverer varene på ytelse, robusthet, fleksibilitet
og gjenbrukbarhet
•  Gjør store kodebaser håndterlige og hindrer at
den kommer ut av kontroll
•  Krever disiplin og vedlikehold

Mais conteúdo relacionado

Destaque

Slutt å snakk, begynn å jobb - om FINNovasjonsdagen
Slutt å snakk, begynn å jobb - om FINNovasjonsdagenSlutt å snakk, begynn å jobb - om FINNovasjonsdagen
Slutt å snakk, begynn å jobb - om FINNovasjonsdagenFINN.no
 
How much do our social roles impact our decisions?
How much do our social roles impact our decisions?How much do our social roles impact our decisions?
How much do our social roles impact our decisions?cblockus
 
Is the ideal worth pursuing?
Is the ideal worth pursuing?Is the ideal worth pursuing?
Is the ideal worth pursuing?cblockus
 
1 examen et corrige maths 2012 1 am t1
1 examen et corrige maths 2012 1 am t11 examen et corrige maths 2012 1 am t1
1 examen et corrige maths 2012 1 am t1Ahmed Mesellem
 
ProvenMentor-Professional-Diploma-in-Digital-Marketing-Brochure
ProvenMentor-Professional-Diploma-in-Digital-Marketing-BrochureProvenMentor-Professional-Diploma-in-Digital-Marketing-Brochure
ProvenMentor-Professional-Diploma-in-Digital-Marketing-BrochureRob Firmin
 
5 examen et corrige anglais 2014 1 am t1
5 examen et corrige anglais 2014 1 am t15 examen et corrige anglais 2014 1 am t1
5 examen et corrige anglais 2014 1 am t1Ahmed Mesellem
 
2 examen et corrige anglais 2011 1 am t1
2 examen et corrige anglais 2011 1 am t12 examen et corrige anglais 2011 1 am t1
2 examen et corrige anglais 2011 1 am t1Ahmed Mesellem
 
LaunchPad Brand Module
LaunchPad Brand ModuleLaunchPad Brand Module
LaunchPad Brand Moduleacastle08
 
LaunchPad Preparation Module
LaunchPad Preparation ModuleLaunchPad Preparation Module
LaunchPad Preparation Moduleacastle08
 
Presentation
PresentationPresentation
Presentationjoelyp
 
Ip and-software-patents-august-2014
Ip and-software-patents-august-2014Ip and-software-patents-august-2014
Ip and-software-patents-august-2014nghia le trung
 
The Do-Gooder Industrial Complex?
The Do-Gooder Industrial Complex?The Do-Gooder Industrial Complex?
The Do-Gooder Industrial Complex?David Peter Simon
 
Men in Black 3D
Men in Black 3DMen in Black 3D
Men in Black 3Djoelyp
 

Destaque (20)

Slutt å snakk, begynn å jobb - om FINNovasjonsdagen
Slutt å snakk, begynn å jobb - om FINNovasjonsdagenSlutt å snakk, begynn å jobb - om FINNovasjonsdagen
Slutt å snakk, begynn å jobb - om FINNovasjonsdagen
 
How much do our social roles impact our decisions?
How much do our social roles impact our decisions?How much do our social roles impact our decisions?
How much do our social roles impact our decisions?
 
Is the ideal worth pursuing?
Is the ideal worth pursuing?Is the ideal worth pursuing?
Is the ideal worth pursuing?
 
1 examen et corrige maths 2012 1 am t1
1 examen et corrige maths 2012 1 am t11 examen et corrige maths 2012 1 am t1
1 examen et corrige maths 2012 1 am t1
 
ProvenMentor-Professional-Diploma-in-Digital-Marketing-Brochure
ProvenMentor-Professional-Diploma-in-Digital-Marketing-BrochureProvenMentor-Professional-Diploma-in-Digital-Marketing-Brochure
ProvenMentor-Professional-Diploma-in-Digital-Marketing-Brochure
 
Foss security-present
Foss security-presentFoss security-present
Foss security-present
 
5 examen et corrige anglais 2014 1 am t1
5 examen et corrige anglais 2014 1 am t15 examen et corrige anglais 2014 1 am t1
5 examen et corrige anglais 2014 1 am t1
 
2 examen et corrige anglais 2011 1 am t1
2 examen et corrige anglais 2011 1 am t12 examen et corrige anglais 2011 1 am t1
2 examen et corrige anglais 2011 1 am t1
 
LaunchPad Brand Module
LaunchPad Brand ModuleLaunchPad Brand Module
LaunchPad Brand Module
 
LaunchPad Preparation Module
LaunchPad Preparation ModuleLaunchPad Preparation Module
LaunchPad Preparation Module
 
Presentation
PresentationPresentation
Presentation
 
Ip and-software-patents-august-2014
Ip and-software-patents-august-2014Ip and-software-patents-august-2014
Ip and-software-patents-august-2014
 
Resume paket kab hal 63 66
Resume paket kab hal 63 66Resume paket kab hal 63 66
Resume paket kab hal 63 66
 
Session 7 - Poll
Session 7 - PollSession 7 - Poll
Session 7 - Poll
 
The Do-Gooder Industrial Complex?
The Do-Gooder Industrial Complex?The Do-Gooder Industrial Complex?
The Do-Gooder Industrial Complex?
 
Весна в японском стиле
Весна в японском стилеВесна в японском стиле
Весна в японском стиле
 
Preparando o inglês
Preparando o inglêsPreparando o inglês
Preparando o inglês
 
The results of Russian Wine Fair 2012
The results of Russian Wine Fair 2012The results of Russian Wine Fair 2012
The results of Russian Wine Fair 2012
 
Men in Black 3D
Men in Black 3DMen in Black 3D
Men in Black 3D
 
Teste Matemática Probabilidades
Teste Matemática ProbabilidadesTeste Matemática Probabilidades
Teste Matemática Probabilidades
 

Semelhante a OOCSS e ælsk

Responsiv design og Bootstrap 3
Responsiv design og Bootstrap 3Responsiv design og Bootstrap 3
Responsiv design og Bootstrap 3Morten Bergset
 
Hvordan dekke kompetansegap mellom designere og utviklere
Hvordan dekke kompetansegap mellom designere og utviklereHvordan dekke kompetansegap mellom designere og utviklere
Hvordan dekke kompetansegap mellom designere og utviklereJanne Flusund
 
Wordpress - Ikke bare en bloggplattform
Wordpress - Ikke bare en bloggplattformWordpress - Ikke bare en bloggplattform
Wordpress - Ikke bare en bloggplattformThomas Skavhellen
 
Developer vs. Designer
Developer vs. Designer Developer vs. Designer
Developer vs. Designer mortendk ...
 
HTML5 - en int teori
HTML5 - en int teoriHTML5 - en int teori
HTML5 - en int teoriDag Tjemsland
 
Meetup #7, Laravel intro, og design/GUI
Meetup #7, Laravel intro, og design/GUIMeetup #7, Laravel intro, og design/GUI
Meetup #7, Laravel intro, og design/GUIMorten Bergset
 
20090924 Foredrag J Magnussen
20090924 Foredrag J Magnussen20090924 Foredrag J Magnussen
20090924 Foredrag J MagnussenWebRed
 
GoOpen 2010: Jorgen Wahlberg
GoOpen 2010: Jorgen WahlbergGoOpen 2010: Jorgen Wahlberg
GoOpen 2010: Jorgen WahlbergFriprogsenteret
 
Den ultimate sjekklisten for lansering av WordPress
Den ultimate sjekklisten for lansering av WordPressDen ultimate sjekklisten for lansering av WordPress
Den ultimate sjekklisten for lansering av WordPressUnited Works
 
Core trek 2015
Core trek 2015Core trek 2015
Core trek 2015CoreTrek
 
Kan vi skape mye mere verdi i softwareporosjekter
Kan vi skape mye mere verdi i softwareporosjekterKan vi skape mye mere verdi i softwareporosjekter
Kan vi skape mye mere verdi i softwareporosjekterThor Henning Hetland
 
Css cascading style sheets
Css   cascading style sheetsCss   cascading style sheets
Css cascading style sheetsGerda Eikeland
 
Core trek 2014
Core trek 2014Core trek 2014
Core trek 2014CoreTrek
 
Viktige ting å tenke på når du skal lage nettside
Viktige ting å tenke på når du skal lage nettsideViktige ting å tenke på når du skal lage nettside
Viktige ting å tenke på når du skal lage nettsidekristineovland
 
The Road to the Cloud -for problemløsere
The Road to the Cloud   -for problemløsereThe Road to the Cloud   -for problemløsere
The Road to the Cloud -for problemløsereThorbjørn Værp
 
Kryssplatform mobilutvikling
Kryssplatform mobilutviklingKryssplatform mobilutvikling
Kryssplatform mobilutviklingRunegri
 
Rwd seminar 2013
Rwd seminar 2013Rwd seminar 2013
Rwd seminar 2013CoreTrek
 

Semelhante a OOCSS e ælsk (20)

Responsiv design og Bootstrap 3
Responsiv design og Bootstrap 3Responsiv design og Bootstrap 3
Responsiv design og Bootstrap 3
 
Hvordan dekke kompetansegap mellom designere og utviklere
Hvordan dekke kompetansegap mellom designere og utviklereHvordan dekke kompetansegap mellom designere og utviklere
Hvordan dekke kompetansegap mellom designere og utviklere
 
Wordpress - Ikke bare en bloggplattform
Wordpress - Ikke bare en bloggplattformWordpress - Ikke bare en bloggplattform
Wordpress - Ikke bare en bloggplattform
 
Meetup16
Meetup16Meetup16
Meetup16
 
Developer vs. Designer
Developer vs. Designer Developer vs. Designer
Developer vs. Designer
 
Cascading style sheets
Cascading style sheets  Cascading style sheets
Cascading style sheets
 
WordPress, mer enn blogg
WordPress, mer enn bloggWordPress, mer enn blogg
WordPress, mer enn blogg
 
HTML5 - en int teori
HTML5 - en int teoriHTML5 - en int teori
HTML5 - en int teori
 
Meetup #7, Laravel intro, og design/GUI
Meetup #7, Laravel intro, og design/GUIMeetup #7, Laravel intro, og design/GUI
Meetup #7, Laravel intro, og design/GUI
 
20090924 Foredrag J Magnussen
20090924 Foredrag J Magnussen20090924 Foredrag J Magnussen
20090924 Foredrag J Magnussen
 
GoOpen 2010: Jorgen Wahlberg
GoOpen 2010: Jorgen WahlbergGoOpen 2010: Jorgen Wahlberg
GoOpen 2010: Jorgen Wahlberg
 
Den ultimate sjekklisten for lansering av WordPress
Den ultimate sjekklisten for lansering av WordPressDen ultimate sjekklisten for lansering av WordPress
Den ultimate sjekklisten for lansering av WordPress
 
Core trek 2015
Core trek 2015Core trek 2015
Core trek 2015
 
Kan vi skape mye mere verdi i softwareporosjekter
Kan vi skape mye mere verdi i softwareporosjekterKan vi skape mye mere verdi i softwareporosjekter
Kan vi skape mye mere verdi i softwareporosjekter
 
Css cascading style sheets
Css   cascading style sheetsCss   cascading style sheets
Css cascading style sheets
 
Core trek 2014
Core trek 2014Core trek 2014
Core trek 2014
 
Viktige ting å tenke på når du skal lage nettside
Viktige ting å tenke på når du skal lage nettsideViktige ting å tenke på når du skal lage nettside
Viktige ting å tenke på når du skal lage nettside
 
The Road to the Cloud -for problemløsere
The Road to the Cloud   -for problemløsereThe Road to the Cloud   -for problemløsere
The Road to the Cloud -for problemløsere
 
Kryssplatform mobilutvikling
Kryssplatform mobilutviklingKryssplatform mobilutvikling
Kryssplatform mobilutvikling
 
Rwd seminar 2013
Rwd seminar 2013Rwd seminar 2013
Rwd seminar 2013
 

Mais de FINN.no

Hvordan fungerer en søkemotor
Hvordan fungerer en søkemotorHvordan fungerer en søkemotor
Hvordan fungerer en søkemotorFINN.no
 
Apache solr i finn.no
Apache solr i finn.noApache solr i finn.no
Apache solr i finn.noFINN.no
 
Slutte å snakke og begynn å jobbe
Slutte å snakke og begynn å jobbeSlutte å snakke og begynn å jobbe
Slutte å snakke og begynn å jobbeFINN.no
 
Mobile web-debug
Mobile web-debugMobile web-debug
Mobile web-debugFINN.no
 
Nå begynner moroa software2011
Nå begynner moroa software2011Nå begynner moroa software2011
Nå begynner moroa software2011FINN.no
 
20111011 Geek Girls - Innovation
20111011 Geek Girls - Innovation20111011 Geek Girls - Innovation
20111011 Geek Girls - InnovationFINN.no
 
Du vil vel ikke mamma noe vondt?
Du vil vel ikke mamma noe vondt?Du vil vel ikke mamma noe vondt?
Du vil vel ikke mamma noe vondt?FINN.no
 

Mais de FINN.no (7)

Hvordan fungerer en søkemotor
Hvordan fungerer en søkemotorHvordan fungerer en søkemotor
Hvordan fungerer en søkemotor
 
Apache solr i finn.no
Apache solr i finn.noApache solr i finn.no
Apache solr i finn.no
 
Slutte å snakke og begynn å jobbe
Slutte å snakke og begynn å jobbeSlutte å snakke og begynn å jobbe
Slutte å snakke og begynn å jobbe
 
Mobile web-debug
Mobile web-debugMobile web-debug
Mobile web-debug
 
Nå begynner moroa software2011
Nå begynner moroa software2011Nå begynner moroa software2011
Nå begynner moroa software2011
 
20111011 Geek Girls - Innovation
20111011 Geek Girls - Innovation20111011 Geek Girls - Innovation
20111011 Geek Girls - Innovation
 
Du vil vel ikke mamma noe vondt?
Du vil vel ikke mamma noe vondt?Du vil vel ikke mamma noe vondt?
Du vil vel ikke mamma noe vondt?
 

OOCSS e ælsk

  • 1. o o se æss æss e ælsk!!!! 1 inn’troduksjon te o o se æss æss fra jængen i Finnj Bilde fra: https://www.nordicchoicehotels.no/kampanjer-og-tilbud/hotell_trondheim/
  • 2. Meg – Espen Dalløkken •  Utviklet ting for web siden ’98 •  Jobber i FINN.no •  Organiserer Web Rebels
  • 3. Spilleliste •  Object Oriented CSS –  Prinsipper, historie •  Fra tresløyd til Lego –  Awesomeboard, Feedback, www, m, pipeline •  Responsive Web Design og mobile enheter
  • 4. Object Oriented CSS •  Skrevet av Nicole Sulivan ca i 2009 mens hun jobbet i Yahoo! •  Freelance konsulent og arrangør av CSS Conf US/EU •  Formålet var å gjøre utvikling med CSS: –  Stabilt –  Modularisert –  Forutsigbart http://www.stubbornella.org/
  • 6. Problemer med CSS i 2009 (og i 2013) •  Størrelsene på filene blir bare større jo lengre en løsning lever •  Gjenbruk finnes nesten ikke •  CSS koden er altfor skjør og knekker altfor ofte •  Best-practices hindrer oss faktisk i å lage robuste løsninger med bra ytelse
  • 7. Nøkkelprinsipper i OOCSS •  Skille struktur og utseende/skins –  Bakgrunner og borders i egne skins –  Klassenavn for å navgi objekter fremfor HTML semantikk •  Skille container og innhold –  Et objekt skal se likt ut uansett hvor du legger det inn •  Alt skal være åpent utvidelse
  • 8.
  • 10. Fra tresløyd til Lego Eller historien om hvordan et helt selskap plutselig snakket om strap-on i enhver sammenheng uten blygsel..
  • 11. Hvorfor begynte FINN å se på OOCSS? •  En CSS kodebase fullstendig ute av kontroll som gjorde oss ute av stand til å gjøre endringer på tvers •  En kodebase på front-end uten særlig fokus på ytelse •  Ingen effekt av å ha et av Norges største miljø for framsieutvikling •  @magnars startet å bruke det på /oppdrag
  • 12. CSS kodelukten var plagsom •  Utviklere lager sine egne ”øyer” for å holde kontroll •  En utvikling mot stadig mer spesifikke regler •  !important kriger •  Løser samme feil gjentatte ganger pga duplisering
  • 13. Strap-on prosjektet •  Vi laget en basis pakke basert på OOCSS •  Deretter skrev vi om del for del alt av HTML på hele FINN •  Dette tok litt over 1 ½ år •  I det vi var ferdig, redesignet 3 stk hele FINN på ca 3 uker
  • 14.
  • 17. Hva måtte vi lage selv? •  OOCSS er en basispakke hvor vi bruker noe, men ikke alt •  Forms oppsett rappet vi fra Bootstrap, men har nå skrevet det helt om •  Kommer ikke med noe ferdig widget bibliotek –  tooltips, dialoger, tabs, etc måtte vi lage •  Responsive Web Design er ikke en del av basispakken •  Bells’n whistles måtte vi lage selv
  • 18. Take aways fra å utvide OOCSS •  Å ta inn ting som ikke er OOCSS virker lurt når du gjør det, men du vil slite med det senere •  Basisen kan veldig enkelt utvides •  Du kan enkelt bygge det som måtte mangle
  • 20. Tallenes klare tale Før 1. iterasjon Mars 2013 Nå # CSS files 130 38 56 57 # Lines of Code 32 798 2 927 6 187 5 226 # Font-size declarations 1 623 45 57 69
  • 21. Strap-on i fri dressur Hva skjedde med rammeverket etter vi var ferdig med v1.0?
  • 22. Fortsetter å levere •  Nye tjenester kommer raskt opp med riktig utseende (finn.no/smajobber) •  Interne verktøy bruker oftere vårt rammeverk over Bootstrap (yay!) •  Utviklere med ingen kunnskap om CSS kan jobbe uten å ødelegge noe •  Vi utvider rammeverket med forms-oppsett og mer responsive tilpassninger
  • 23. Strap-on – one stop shop for CSS •  Ligger i bunnen på alle løsninger vi lager •  Nye tjenester kan lages uten å skrive ny CSS •  To utviklere har skrev og nå vedlikeholder og videreutvikler kjernen –  Resten jobber med nye ting eller spesialtilpassninger som kun brukes ett sted og bidrar med innspill og forbedringer
  • 24.
  • 25.
  • 26.
  • 27. CSS rammeverk smack down Bootstrap •  Kan brukes out of the box •  Utstrakt widget bibliotek •  Lite performance fokus •  Lite mobilvennlig •  Støtte for LESS/SASS/etc OOCSS •  Rammeverk som vil kreve egen tilpasning •  Pure CSS, ikke noe JavaScript •  Skrevet for performance •  Kompatibelt tilbake til IE5 (vistnok)
  • 28.
  • 29. Responsive Web Design og OOCSS •  RWD ”fantes ikke” da OOCSS ble unfanget •  Prinsippene fra OOCSS passer ikke helt med ideen om responsive web sites •  Finnes ingen boilerplate på hvordan gjøre det
  • 30. Vi har prøvd og feilet •  Første versjon baserte seg på å tilpasse rammeverksklasser (opt-out) •  Andre versjon hadde noen egne responsive klasser •  Tredje versjon har egne objekter som gir responsive oppførsel (opt-in) •  The Neverending Grid
  • 31. Icon-fonts •  Tidligere hadde vi sprites for alt av små grafikk elementer og ikoner •  Bilde sprites blir mye arbeid å vedlikehold med ulike oppløsninger, størrelser, enheter og plattformer (web/native) •  Icon-fonts er: –  Skalerbare –  Cachet
  • 32. Icon-font gotchas •  IE krever eget oppsett av content-types på serveren •  Levetiden til nettlesercache for fontene er difus •  Blinde brukere ser kun bokstavene du bruker •  Du må ha fallbacks for eldre IE nettlesere
  • 33. Ok, en kort recap •  OOCSS krever litt arbeid •  Leverer varene på ytelse, robusthet, fleksibilitet og gjenbrukbarhet •  Gjør store kodebaser håndterlige og hindrer at den kommer ut av kontroll •  Krever disiplin og vedlikehold