SlideShare a Scribd company logo
1 of 9
Download to read offline
UI Design From Scratch - Part IV
Now that we have a general picture of our final destination lets figure out how to get there…
TopBar {
margin: 0px;
padding: 0px;
}
DishViewDescription {
font-family: "native:ItalicLight";
font-size: 2.5mm;
padding: 2mm;
margin: 0px;
text-align: left;
color: white;
background: linear-gradient(to top,
rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0.1));
}
TintToolbar {
cn1-derive: Container;
background: linear-gradient(to bottom, rgba(0, 0, 0, 0.5),
rgba(0, 0, 0, 0));
}
MapAddress {
padding: 1mm;
margin: 0px;
background: linear-gradient(to top, rgba(0, 0, 0, 0.7),
rgba(0, 0, 0, 0.1));
}
CSS
The transparent gradient at the bottom of the dish view is almost entirely CSS which is pretty cool. This CSS generates an image which is then overlaid with
transparency.

I also chose an italic font for this case which might be more appropriate for the dish description
TopBar {
margin: 0px;
padding: 0px;
}
DishViewDescription {
font-family: "native:ItalicLight";
font-size: 2.5mm;
padding: 2mm;
margin: 0px;
text-align: left;
color: white;
background: linear-gradient(to top,
rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0.1));
}
TintToolbar {
cn1-derive: Container;
background: linear-gradient(to bottom, rgba(0, 0, 0, 0.5),
rgba(0, 0, 0, 0));
}
MapAddress {
padding: 1mm;
margin: 0px;
background: linear-gradient(to top, rgba(0, 0, 0, 0.7),
rgba(0, 0, 0, 0.1));
}
CSS
The toolbar also uses the gradient tint, it derives from Container to get the 0 padding & margin
TopBar {
margin: 0px;
padding: 0px;
}
DishViewDescription {
font-family: "native:ItalicLight";
font-size: 2.5mm;
padding: 2mm;
margin: 0px;
text-align: left;
color: white;
background: linear-gradient(to top,
rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0.1));
}
TintToolbar {
cn1-derive: Container;
background: linear-gradient(to bottom, rgba(0, 0, 0, 0.5),
rgba(0, 0, 0, 0));
}
MapAddress {
padding: 1mm;
margin: 0px;
background: linear-gradient(to top, rgba(0, 0, 0, 0.7),
rgba(0, 0, 0, 0.1));
}
CSS
The map address is similar to the dish overview description with a bit of padding
MapAddressText {
font-family: "native:ItalicLight";
font-size: 2.5mm;
padding: 1mm 2mm 1mm 1mm;
margin: 0px;
text-align: left;
color: white;
background-color: transparent;
}
SideNavigationPanel {
background-color: white;
}
SideCommand {
border-bottom: #016cb8 solid thin;
background-color: #31aaff;
text-decoration: none;
color: white;
padding: 3mm;
margin: 0px 0px 1px 0px;
font-family: "native:MainLight";
font-size: 4mm;
}
StatusBarSideMenu {
background-color: transparent;
padding: 0px;
}
CSS
The text of the map address is a separate component unlike the dish overview which means these UIID’s are effectively different.
MapAddressText {
font-family: "native:ItalicLight";
font-size: 2.5mm;
padding: 1mm 2mm 1mm 1mm;
margin: 0px;
text-align: left;
color: white;
background-color: transparent;
}
SideNavigationPanel {
background-color: white;
}
SideCommand {
border-bottom: #016cb8 solid thin;
background-color: #31aaff;
text-decoration: none;
color: white;
padding: 3mm;
margin: 0px 0px 1px 0px;
font-family: "native:MainLight";
font-size: 4mm;
}
StatusBarSideMenu {
background-color: transparent;
padding: 0px;
}
CSS
I set the background of the side menu bar to be white, besides fitting with the general design and separating it from the form color this has another important use
MapAddressText {
font-family: "native:ItalicLight";
font-size: 2.5mm;
padding: 1mm 2mm 1mm 1mm;
margin: 0px;
text-align: left;
color: white;
background-color: transparent;
}
SideNavigationPanel {
background-color: white;
}
SideCommand {
border-bottom: #016cb8 solid thin;
background-color: #31aaff;
text-decoration: none;
color: white;
padding: 3mm;
margin: 0px 0px 1px 0px;
font-family: "native:MainLight";
font-size: 4mm;
}
StatusBarSideMenu {
background-color: transparent;
padding: 0px;
}
CSS
One of the important things to notice about the side command is that margin is 0 except for the bottom where we have a 1 pixel margin. If you will look at the entries you
will see a 1 pixel white line between the command entries. That’s the white color of the side navigation panel coming thru between the entries, it’s not a separation line it’s
literally the background.

Side commands are styled very differently in the native themes so we need to override a lot of behaviors such as text decoration which is set to 3d text in iOS. 3d text
draws a subtle shadow under every letter
MapAddressText {
font-family: "native:ItalicLight";
font-size: 2.5mm;
padding: 1mm 2mm 1mm 1mm;
margin: 0px;
text-align: left;
color: white;
background-color: transparent;
}
SideNavigationPanel {
background-color: white;
}
SideCommand {
border-bottom: #016cb8 solid thin;
background-color: #31aaff;
text-decoration: none;
color: white;
padding: 3mm;
margin: 0px 0px 1px 0px;
font-family: "native:MainLight";
font-size: 4mm;
}
StatusBarSideMenu {
background-color: transparent;
padding: 0px;
}
CSS
Normally there is a status bar component on top of the side menu in iOS so the clock or battery indicators don’t draw on top of the side menu. Since we have an image
here this isn’t a problem and we can set its size to 0.
QuantityPicker {
border: cn1-round-border;
background-color: #31aaff;
color: white;
padding: 2mm 2mm 2mm 2mm;
margin: 0px;
}
CSS
I thought about using the exact same UIID as I used for the shopping cart button but that button has a bit of margin to push it away from the side of the form. I probably
should have used inheritance here but I didn’t

More Related Content

Similar to UI Design From Scratch - Part IV CSS

常用的CSS样式备份精华
常用的CSS样式备份精华常用的CSS样式备份精华
常用的CSS样式备份精华wensheng wei
 
BloggingWithStyle_2008
BloggingWithStyle_2008BloggingWithStyle_2008
BloggingWithStyle_2008tutorialsruby
 
BloggingWithStyle_2008
BloggingWithStyle_2008BloggingWithStyle_2008
BloggingWithStyle_2008tutorialsruby
 
Week ThreeExpress Holidayscssstyle.csshtml{ height 100.docx
Week ThreeExpress Holidayscssstyle.csshtml{ height 100.docxWeek ThreeExpress Holidayscssstyle.csshtml{ height 100.docx
Week ThreeExpress Holidayscssstyle.csshtml{ height 100.docxphilipnelson29183
 
Finding a Better Way to CSS: Navigating Sass with Compass
Finding a Better Way to CSS: Navigating Sass with CompassFinding a Better Way to CSS: Navigating Sass with Compass
Finding a Better Way to CSS: Navigating Sass with CompassClaudina Sarahe
 
EPUB Boot Camp: Tips and Tweaks
EPUB Boot Camp: Tips and TweaksEPUB Boot Camp: Tips and Tweaks
EPUB Boot Camp: Tips and TweaksBookNet Canada
 
LessCSS Presentation @ April 2015 GTALUG Meeting
LessCSS Presentation @ April 2015 GTALUG MeetingLessCSS Presentation @ April 2015 GTALUG Meeting
LessCSS Presentation @ April 2015 GTALUG MeetingMyles Braithwaite
 
cssstyle.cssbody { font-family Montserrat, Arial, sa
cssstyle.cssbody {    font-family Montserrat, Arial, sacssstyle.cssbody {    font-family Montserrat, Arial, sa
cssstyle.cssbody { font-family Montserrat, Arial, saMargenePurnell14
 
Corilennyg gmail-com-rsp2
Corilennyg gmail-com-rsp2Corilennyg gmail-com-rsp2
Corilennyg gmail-com-rsp2cori0506
 
Theme futura suicida não use como base e nem copie
Theme futura suicida não use como base e nem copieTheme futura suicida não use como base e nem copie
Theme futura suicida não use como base e nem copieRafaela Souza
 
Theme futura suicida não use como base e nem copie
Theme futura suicida não use como base e nem copieTheme futura suicida não use como base e nem copie
Theme futura suicida não use como base e nem copieRafaela Souza
 
Great typography == Great Design - Part 2
Great typography == Great Design - Part 2Great typography == Great Design - Part 2
Great typography == Great Design - Part 2Aashish Solanki
 
Bloggdesign #2 - hawaa.blogg.no
Bloggdesign #2 - hawaa.blogg.noBloggdesign #2 - hawaa.blogg.no
Bloggdesign #2 - hawaa.blogg.noHannee92
 
Learn to Love CSS3 [English]
Learn to Love CSS3 [English]Learn to Love CSS3 [English]
Learn to Love CSS3 [English]ThemePartner
 

Similar to UI Design From Scratch - Part IV CSS (20)

常用的CSS样式备份精华
常用的CSS样式备份精华常用的CSS样式备份精华
常用的CSS样式备份精华
 
This is a test
This is a testThis is a test
This is a test
 
BloggingWithStyle_2008
BloggingWithStyle_2008BloggingWithStyle_2008
BloggingWithStyle_2008
 
BloggingWithStyle_2008
BloggingWithStyle_2008BloggingWithStyle_2008
BloggingWithStyle_2008
 
Week ThreeExpress Holidayscssstyle.csshtml{ height 100.docx
Week ThreeExpress Holidayscssstyle.csshtml{ height 100.docxWeek ThreeExpress Holidayscssstyle.csshtml{ height 100.docx
Week ThreeExpress Holidayscssstyle.csshtml{ height 100.docx
 
Cloudstack UI Customization
Cloudstack UI CustomizationCloudstack UI Customization
Cloudstack UI Customization
 
Finding a Better Way to CSS: Navigating Sass with Compass
Finding a Better Way to CSS: Navigating Sass with CompassFinding a Better Way to CSS: Navigating Sass with Compass
Finding a Better Way to CSS: Navigating Sass with Compass
 
Css
CssCss
Css
 
FCIP SASS Talk
FCIP SASS TalkFCIP SASS Talk
FCIP SASS Talk
 
EPUB Boot Camp: Tips and Tweaks
EPUB Boot Camp: Tips and TweaksEPUB Boot Camp: Tips and Tweaks
EPUB Boot Camp: Tips and Tweaks
 
LessCSS Presentation @ April 2015 GTALUG Meeting
LessCSS Presentation @ April 2015 GTALUG MeetingLessCSS Presentation @ April 2015 GTALUG Meeting
LessCSS Presentation @ April 2015 GTALUG Meeting
 
cssstyle.cssbody { font-family Montserrat, Arial, sa
cssstyle.cssbody {    font-family Montserrat, Arial, sacssstyle.cssbody {    font-family Montserrat, Arial, sa
cssstyle.cssbody { font-family Montserrat, Arial, sa
 
Corilennyg gmail-com-rsp2
Corilennyg gmail-com-rsp2Corilennyg gmail-com-rsp2
Corilennyg gmail-com-rsp2
 
Theme futura suicida não use como base e nem copie
Theme futura suicida não use como base e nem copieTheme futura suicida não use como base e nem copie
Theme futura suicida não use como base e nem copie
 
Theme futura suicida não use como base e nem copie
Theme futura suicida não use como base e nem copieTheme futura suicida não use como base e nem copie
Theme futura suicida não use como base e nem copie
 
Great typography == Great Design - Part 2
Great typography == Great Design - Part 2Great typography == Great Design - Part 2
Great typography == Great Design - Part 2
 
Bloggdesign #2 - hawaa.blogg.no
Bloggdesign #2 - hawaa.blogg.noBloggdesign #2 - hawaa.blogg.no
Bloggdesign #2 - hawaa.blogg.no
 
Learn to Love CSS3 [English]
Learn to Love CSS3 [English]Learn to Love CSS3 [English]
Learn to Love CSS3 [English]
 
Tmx9
Tmx9Tmx9
Tmx9
 
Css (1)
Css (1)Css (1)
Css (1)
 

More from ShaiAlmog1

The Duck Teaches Learn to debug from the masters. Local to production- kill ...
The Duck Teaches  Learn to debug from the masters. Local to production- kill ...The Duck Teaches  Learn to debug from the masters. Local to production- kill ...
The Duck Teaches Learn to debug from the masters. Local to production- kill ...ShaiAlmog1
 
create-netflix-clone-06-client-ui.pdf
create-netflix-clone-06-client-ui.pdfcreate-netflix-clone-06-client-ui.pdf
create-netflix-clone-06-client-ui.pdfShaiAlmog1
 
create-netflix-clone-01-introduction_transcript.pdf
create-netflix-clone-01-introduction_transcript.pdfcreate-netflix-clone-01-introduction_transcript.pdf
create-netflix-clone-01-introduction_transcript.pdfShaiAlmog1
 
create-netflix-clone-02-server_transcript.pdf
create-netflix-clone-02-server_transcript.pdfcreate-netflix-clone-02-server_transcript.pdf
create-netflix-clone-02-server_transcript.pdfShaiAlmog1
 
create-netflix-clone-04-server-continued_transcript.pdf
create-netflix-clone-04-server-continued_transcript.pdfcreate-netflix-clone-04-server-continued_transcript.pdf
create-netflix-clone-04-server-continued_transcript.pdfShaiAlmog1
 
create-netflix-clone-01-introduction.pdf
create-netflix-clone-01-introduction.pdfcreate-netflix-clone-01-introduction.pdf
create-netflix-clone-01-introduction.pdfShaiAlmog1
 
create-netflix-clone-06-client-ui_transcript.pdf
create-netflix-clone-06-client-ui_transcript.pdfcreate-netflix-clone-06-client-ui_transcript.pdf
create-netflix-clone-06-client-ui_transcript.pdfShaiAlmog1
 
create-netflix-clone-03-server.pdf
create-netflix-clone-03-server.pdfcreate-netflix-clone-03-server.pdf
create-netflix-clone-03-server.pdfShaiAlmog1
 
create-netflix-clone-04-server-continued.pdf
create-netflix-clone-04-server-continued.pdfcreate-netflix-clone-04-server-continued.pdf
create-netflix-clone-04-server-continued.pdfShaiAlmog1
 
create-netflix-clone-05-client-model_transcript.pdf
create-netflix-clone-05-client-model_transcript.pdfcreate-netflix-clone-05-client-model_transcript.pdf
create-netflix-clone-05-client-model_transcript.pdfShaiAlmog1
 
create-netflix-clone-03-server_transcript.pdf
create-netflix-clone-03-server_transcript.pdfcreate-netflix-clone-03-server_transcript.pdf
create-netflix-clone-03-server_transcript.pdfShaiAlmog1
 
create-netflix-clone-02-server.pdf
create-netflix-clone-02-server.pdfcreate-netflix-clone-02-server.pdf
create-netflix-clone-02-server.pdfShaiAlmog1
 
create-netflix-clone-05-client-model.pdf
create-netflix-clone-05-client-model.pdfcreate-netflix-clone-05-client-model.pdf
create-netflix-clone-05-client-model.pdfShaiAlmog1
 
Creating a Whatsapp Clone - Part II.pdf
Creating a Whatsapp Clone - Part II.pdfCreating a Whatsapp Clone - Part II.pdf
Creating a Whatsapp Clone - Part II.pdfShaiAlmog1
 
Creating a Whatsapp Clone - Part IX - Transcript.pdf
Creating a Whatsapp Clone - Part IX - Transcript.pdfCreating a Whatsapp Clone - Part IX - Transcript.pdf
Creating a Whatsapp Clone - Part IX - Transcript.pdfShaiAlmog1
 
Creating a Whatsapp Clone - Part II - Transcript.pdf
Creating a Whatsapp Clone - Part II - Transcript.pdfCreating a Whatsapp Clone - Part II - Transcript.pdf
Creating a Whatsapp Clone - Part II - Transcript.pdfShaiAlmog1
 
Creating a Whatsapp Clone - Part V - Transcript.pdf
Creating a Whatsapp Clone - Part V - Transcript.pdfCreating a Whatsapp Clone - Part V - Transcript.pdf
Creating a Whatsapp Clone - Part V - Transcript.pdfShaiAlmog1
 
Creating a Whatsapp Clone - Part IV - Transcript.pdf
Creating a Whatsapp Clone - Part IV - Transcript.pdfCreating a Whatsapp Clone - Part IV - Transcript.pdf
Creating a Whatsapp Clone - Part IV - Transcript.pdfShaiAlmog1
 
Creating a Whatsapp Clone - Part IV.pdf
Creating a Whatsapp Clone - Part IV.pdfCreating a Whatsapp Clone - Part IV.pdf
Creating a Whatsapp Clone - Part IV.pdfShaiAlmog1
 
Creating a Whatsapp Clone - Part I - Transcript.pdf
Creating a Whatsapp Clone - Part I - Transcript.pdfCreating a Whatsapp Clone - Part I - Transcript.pdf
Creating a Whatsapp Clone - Part I - Transcript.pdfShaiAlmog1
 

More from ShaiAlmog1 (20)

The Duck Teaches Learn to debug from the masters. Local to production- kill ...
The Duck Teaches  Learn to debug from the masters. Local to production- kill ...The Duck Teaches  Learn to debug from the masters. Local to production- kill ...
The Duck Teaches Learn to debug from the masters. Local to production- kill ...
 
create-netflix-clone-06-client-ui.pdf
create-netflix-clone-06-client-ui.pdfcreate-netflix-clone-06-client-ui.pdf
create-netflix-clone-06-client-ui.pdf
 
create-netflix-clone-01-introduction_transcript.pdf
create-netflix-clone-01-introduction_transcript.pdfcreate-netflix-clone-01-introduction_transcript.pdf
create-netflix-clone-01-introduction_transcript.pdf
 
create-netflix-clone-02-server_transcript.pdf
create-netflix-clone-02-server_transcript.pdfcreate-netflix-clone-02-server_transcript.pdf
create-netflix-clone-02-server_transcript.pdf
 
create-netflix-clone-04-server-continued_transcript.pdf
create-netflix-clone-04-server-continued_transcript.pdfcreate-netflix-clone-04-server-continued_transcript.pdf
create-netflix-clone-04-server-continued_transcript.pdf
 
create-netflix-clone-01-introduction.pdf
create-netflix-clone-01-introduction.pdfcreate-netflix-clone-01-introduction.pdf
create-netflix-clone-01-introduction.pdf
 
create-netflix-clone-06-client-ui_transcript.pdf
create-netflix-clone-06-client-ui_transcript.pdfcreate-netflix-clone-06-client-ui_transcript.pdf
create-netflix-clone-06-client-ui_transcript.pdf
 
create-netflix-clone-03-server.pdf
create-netflix-clone-03-server.pdfcreate-netflix-clone-03-server.pdf
create-netflix-clone-03-server.pdf
 
create-netflix-clone-04-server-continued.pdf
create-netflix-clone-04-server-continued.pdfcreate-netflix-clone-04-server-continued.pdf
create-netflix-clone-04-server-continued.pdf
 
create-netflix-clone-05-client-model_transcript.pdf
create-netflix-clone-05-client-model_transcript.pdfcreate-netflix-clone-05-client-model_transcript.pdf
create-netflix-clone-05-client-model_transcript.pdf
 
create-netflix-clone-03-server_transcript.pdf
create-netflix-clone-03-server_transcript.pdfcreate-netflix-clone-03-server_transcript.pdf
create-netflix-clone-03-server_transcript.pdf
 
create-netflix-clone-02-server.pdf
create-netflix-clone-02-server.pdfcreate-netflix-clone-02-server.pdf
create-netflix-clone-02-server.pdf
 
create-netflix-clone-05-client-model.pdf
create-netflix-clone-05-client-model.pdfcreate-netflix-clone-05-client-model.pdf
create-netflix-clone-05-client-model.pdf
 
Creating a Whatsapp Clone - Part II.pdf
Creating a Whatsapp Clone - Part II.pdfCreating a Whatsapp Clone - Part II.pdf
Creating a Whatsapp Clone - Part II.pdf
 
Creating a Whatsapp Clone - Part IX - Transcript.pdf
Creating a Whatsapp Clone - Part IX - Transcript.pdfCreating a Whatsapp Clone - Part IX - Transcript.pdf
Creating a Whatsapp Clone - Part IX - Transcript.pdf
 
Creating a Whatsapp Clone - Part II - Transcript.pdf
Creating a Whatsapp Clone - Part II - Transcript.pdfCreating a Whatsapp Clone - Part II - Transcript.pdf
Creating a Whatsapp Clone - Part II - Transcript.pdf
 
Creating a Whatsapp Clone - Part V - Transcript.pdf
Creating a Whatsapp Clone - Part V - Transcript.pdfCreating a Whatsapp Clone - Part V - Transcript.pdf
Creating a Whatsapp Clone - Part V - Transcript.pdf
 
Creating a Whatsapp Clone - Part IV - Transcript.pdf
Creating a Whatsapp Clone - Part IV - Transcript.pdfCreating a Whatsapp Clone - Part IV - Transcript.pdf
Creating a Whatsapp Clone - Part IV - Transcript.pdf
 
Creating a Whatsapp Clone - Part IV.pdf
Creating a Whatsapp Clone - Part IV.pdfCreating a Whatsapp Clone - Part IV.pdf
Creating a Whatsapp Clone - Part IV.pdf
 
Creating a Whatsapp Clone - Part I - Transcript.pdf
Creating a Whatsapp Clone - Part I - Transcript.pdfCreating a Whatsapp Clone - Part I - Transcript.pdf
Creating a Whatsapp Clone - Part I - Transcript.pdf
 

Recently uploaded

Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?Antenna Manufacturer Coco
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 

Recently uploaded (20)

Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 

UI Design From Scratch - Part IV CSS

  • 1. UI Design From Scratch - Part IV Now that we have a general picture of our final destination lets figure out how to get there…
  • 2. TopBar { margin: 0px; padding: 0px; } DishViewDescription { font-family: "native:ItalicLight"; font-size: 2.5mm; padding: 2mm; margin: 0px; text-align: left; color: white; background: linear-gradient(to top, rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0.1)); } TintToolbar { cn1-derive: Container; background: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); } MapAddress { padding: 1mm; margin: 0px; background: linear-gradient(to top, rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0.1)); } CSS The transparent gradient at the bottom of the dish view is almost entirely CSS which is pretty cool. This CSS generates an image which is then overlaid with transparency.
 I also chose an italic font for this case which might be more appropriate for the dish description
  • 3. TopBar { margin: 0px; padding: 0px; } DishViewDescription { font-family: "native:ItalicLight"; font-size: 2.5mm; padding: 2mm; margin: 0px; text-align: left; color: white; background: linear-gradient(to top, rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0.1)); } TintToolbar { cn1-derive: Container; background: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); } MapAddress { padding: 1mm; margin: 0px; background: linear-gradient(to top, rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0.1)); } CSS The toolbar also uses the gradient tint, it derives from Container to get the 0 padding & margin
  • 4. TopBar { margin: 0px; padding: 0px; } DishViewDescription { font-family: "native:ItalicLight"; font-size: 2.5mm; padding: 2mm; margin: 0px; text-align: left; color: white; background: linear-gradient(to top, rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0.1)); } TintToolbar { cn1-derive: Container; background: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); } MapAddress { padding: 1mm; margin: 0px; background: linear-gradient(to top, rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0.1)); } CSS The map address is similar to the dish overview description with a bit of padding
  • 5. MapAddressText { font-family: "native:ItalicLight"; font-size: 2.5mm; padding: 1mm 2mm 1mm 1mm; margin: 0px; text-align: left; color: white; background-color: transparent; } SideNavigationPanel { background-color: white; } SideCommand { border-bottom: #016cb8 solid thin; background-color: #31aaff; text-decoration: none; color: white; padding: 3mm; margin: 0px 0px 1px 0px; font-family: "native:MainLight"; font-size: 4mm; } StatusBarSideMenu { background-color: transparent; padding: 0px; } CSS The text of the map address is a separate component unlike the dish overview which means these UIID’s are effectively different.
  • 6. MapAddressText { font-family: "native:ItalicLight"; font-size: 2.5mm; padding: 1mm 2mm 1mm 1mm; margin: 0px; text-align: left; color: white; background-color: transparent; } SideNavigationPanel { background-color: white; } SideCommand { border-bottom: #016cb8 solid thin; background-color: #31aaff; text-decoration: none; color: white; padding: 3mm; margin: 0px 0px 1px 0px; font-family: "native:MainLight"; font-size: 4mm; } StatusBarSideMenu { background-color: transparent; padding: 0px; } CSS I set the background of the side menu bar to be white, besides fitting with the general design and separating it from the form color this has another important use
  • 7. MapAddressText { font-family: "native:ItalicLight"; font-size: 2.5mm; padding: 1mm 2mm 1mm 1mm; margin: 0px; text-align: left; color: white; background-color: transparent; } SideNavigationPanel { background-color: white; } SideCommand { border-bottom: #016cb8 solid thin; background-color: #31aaff; text-decoration: none; color: white; padding: 3mm; margin: 0px 0px 1px 0px; font-family: "native:MainLight"; font-size: 4mm; } StatusBarSideMenu { background-color: transparent; padding: 0px; } CSS One of the important things to notice about the side command is that margin is 0 except for the bottom where we have a 1 pixel margin. If you will look at the entries you will see a 1 pixel white line between the command entries. That’s the white color of the side navigation panel coming thru between the entries, it’s not a separation line it’s literally the background. Side commands are styled very differently in the native themes so we need to override a lot of behaviors such as text decoration which is set to 3d text in iOS. 3d text draws a subtle shadow under every letter
  • 8. MapAddressText { font-family: "native:ItalicLight"; font-size: 2.5mm; padding: 1mm 2mm 1mm 1mm; margin: 0px; text-align: left; color: white; background-color: transparent; } SideNavigationPanel { background-color: white; } SideCommand { border-bottom: #016cb8 solid thin; background-color: #31aaff; text-decoration: none; color: white; padding: 3mm; margin: 0px 0px 1px 0px; font-family: "native:MainLight"; font-size: 4mm; } StatusBarSideMenu { background-color: transparent; padding: 0px; } CSS Normally there is a status bar component on top of the side menu in iOS so the clock or battery indicators don’t draw on top of the side menu. Since we have an image here this isn’t a problem and we can set its size to 0.
  • 9. QuantityPicker { border: cn1-round-border; background-color: #31aaff; color: white; padding: 2mm 2mm 2mm 2mm; margin: 0px; } CSS I thought about using the exact same UIID as I used for the shopping cart button but that button has a bit of margin to push it away from the side of the form. I probably should have used inheritance here but I didn’t