SlideShare uma empresa Scribd logo
1 de 56
Baixar para ler offline
Designing an Enterprise
CSS Framework is hard
​Stephanie Rewis
​Salesforce UX
​
Stephanie Rewis
@stefsull
Lead Developer, Design Systems, Salesforce UX
Safe Harbor
​Safe harbor statement under the Private Securities Litigation Reform Act of 1995:
​This presentation may contain forward-looking statements that involve risks, uncertainties, and assumptions. If any such uncertainties
materialize or if any of the assumptions proves incorrect, the results of salesforce.com, inc. could differ materially from the results expressed
or implied by the forward-looking statements we make. All statements other than statements of historical fact could be deemed forward-
looking, including any projections of product or service availability, subscriber growth, earnings, revenues, or other financial items and any
statements regarding strategies or plans of management for future operations, statements of belief, any statements concerning new,
planned, or upgraded services or technology developments and customer contracts or use of our services.
​The risks and uncertainties referred to above include – but are not limited to – risks associated with developing and delivering new
functionality for our service, new products and services, our new business model, our past operating losses, possible fluctuations in our
operating results and rate of growth, interruptions or delays in our Web hosting, breach of our security measures, the outcome of any
litigation, risks associated with completed and any possible mergers and acquisitions, the immature market in which we operate, our
relatively limited operating history, our ability to expand, retain, and motivate our employees and manage our growth, new releases of our
service and successful customer deployment, our limited history reselling non-salesforce.com products, and utilization and selling to larger
enterprise customers. Further information on potential factors that could affect the financial results of salesforce.com, inc. is included in our
annual report on Form 10-K for the most recent fiscal year and in our quarterly report on Form 10-Q for the most recent fiscal quarter. These
documents and others containing important disclosures are available on the SEC Filings section of the Investor Information section of our
Web site.
​Any unreleased services or features referenced in this or other presentations, press releases or public statements are not currently available
and may not be delivered on time or at all. Customers who purchase our services should make the purchase decisions based upon features
that are currently available. Salesforce.com, inc. assumes no obligation and does not intend to update these forward-looking statements.
Salesforce1
​How do I get my app
to look like this?
​Can I use the CSS in my app?
We'd like our prototypers to iterate
more rapidly.
We learned our style guide
was too static.
Lightning Design System
The next generation of living style guides
Lightning
Experience
Design System Components
CSS Framework + UI Library
Objects/Components
Lightweight
Modular
Reusable
Utilities
Non-semantic
Single Purpose
Dependencies
Tokens
Objects/Components
Lightweight
Modular
Reusable
Dependencies
Tokens
Mixins
Functions
clarity
Eliminate ambiguity. Enable people to see,
understand, and act with confidence.
Clarity and understandability
in class names
BEM Naming
Block
Element
Modifier
Let's build a house!
.house { block or component name }
.house__door { element or component part }
.house--red { modifier or component variation }
.house__door--white { variation of a component part }
We love documentation!
efficiency
Streamline and optimize workflows. Intelligently
anticipate needs to help people work better, smarter,
and faster.
Design audit and inventory of all
components in designer's comps
We broke the components down to
their smallest patterns and objects.
Enterprise applications
have some unique traits.
Enterprise applications demand
content and data-rich interfaces.
They lack vertical rhythm.
Heading levels may vary and our
components should be agnostic.
Lists are used for their semantics.
You can opt back in to the default
element style using utility classes
or a single wrapper.
<h2 class="slds-text-heading--medium slds-m-right--small">
Medium heading with a small margin on the right.
</h2>
Accessibility for all people and
devices is very important.
We baked accessibility in:
Semantics matter
ARIA roles
REM unit sizing
We’ve documented what needs to happen when JS is added
consistency
Create familiarity and strengthen intuition by
applying the same solution to the same problem.
Design Tokens
The basic atoms of the Design System
Types of Design Tokens
• Fonts
• Font Sizes
• Font Weights
• Line Heights
• Background Colors
• Text Colors
• Border Colors
• Shadows
• Spacing
• Sizing
• Animation Durations
• Media Queries
• Z-indexes
Using Sass and tokens (variables),
you can brand your app.
.slds-lookup__menu {
position: absolute;
width: 100%;
margin-top: $spacing-xx-small;
border: $border-width-thin solid $color-border;
border-radius: $border-radius-medium;
padding: $spacing-xx-small 0;
background: $color-background-alt;
z-index: $z-index-dropdown;
}
We play well with others.
.button
.slds-button
What is scoping anyway?
<div class="slds">
<!-- Your components here -->
</div>
How does scoping help?
<div class="slds">
<!-- Your components here -->
</div>
ul li { margin-left: 20px; }
.slds li { margin-left: 0; }
beauty
Demonstrate respect for people’s time and attention
through thoughtful and elegant craftsmanship.
SVG icons for beauty at every size
Components should render
beautifully at any width.
"I’ve been working on a mobile app that has a Salesforce1 look
and feel for the past several weeks. I've been struggling to get the
styling just right so I decided to scratch it and try out the
framework.
I started this at 11am this morning and by the end of the day, I
almost have a complete application that took me previously over
2 weeks to complete."
- Matt M.
Sr. Software Engineer
Resources
Get the Design System
https://www.lightningdesignsystem.com/resources/downloads
https://github.com/salesforce-ux/design-system/
Flexbox Resources
A Complete Guide to Flexbox — CSS Tricks
https://css-tricks.com/snippets/css/a-guide-to-flexbox
Known Bugs and Workarounds for Flexbox — Phil Walton
https://github.com/philipwalton/flexbugs
https://developer.salesforce.com/trailhead/module/lightning_design_system
Thank you

Mais conteúdo relacionado

Mais procurados

CSS3 For Advanced Design
CSS3 For Advanced DesignCSS3 For Advanced Design
CSS3 For Advanced Design
paultrani
 

Mais procurados (20)

Css responsive
Css responsiveCss responsive
Css responsive
 
Client responsive design
Client   responsive designClient   responsive design
Client responsive design
 
Responsive Web Design
Responsive Web DesignResponsive Web Design
Responsive Web Design
 
Future proof rwd
Future proof rwdFuture proof rwd
Future proof rwd
 
CSS Systems
CSS SystemsCSS Systems
CSS Systems
 
Intro to CSS3
Intro to CSS3Intro to CSS3
Intro to CSS3
 
CSS3 For Advanced Design
CSS3 For Advanced DesignCSS3 For Advanced Design
CSS3 For Advanced Design
 
새로운 웹 스타일링, 안 본 사람 없게 해주세요
새로운 웹 스타일링, 안 본 사람 없게 해주세요새로운 웹 스타일링, 안 본 사람 없게 해주세요
새로운 웹 스타일링, 안 본 사람 없게 해주세요
 
Serving Mobile Apps from Content Management Systems
Serving Mobile Apps from Content Management SystemsServing Mobile Apps from Content Management Systems
Serving Mobile Apps from Content Management Systems
 
CSS Reset
CSS ResetCSS Reset
CSS Reset
 
CSS
CSSCSS
CSS
 
Media queries and frameworks
Media queries and frameworksMedia queries and frameworks
Media queries and frameworks
 
Css best practices style guide and tips
Css best practices style guide and tipsCss best practices style guide and tips
Css best practices style guide and tips
 
Vector Graphics on the Web: SVG, Canvas, CSS3
Vector Graphics on the Web: SVG, Canvas, CSS3Vector Graphics on the Web: SVG, Canvas, CSS3
Vector Graphics on the Web: SVG, Canvas, CSS3
 
Team styles
Team stylesTeam styles
Team styles
 
Learn svg
Learn svgLearn svg
Learn svg
 
SVG For Web Designers (and Developers)
SVG For Web Designers (and Developers) SVG For Web Designers (and Developers)
SVG For Web Designers (and Developers)
 
Responsive Web Design & APEX Theme 25 (OGh APEX World 2014)
Responsive Web Design & APEX Theme 25 (OGh APEX World 2014)Responsive Web Design & APEX Theme 25 (OGh APEX World 2014)
Responsive Web Design & APEX Theme 25 (OGh APEX World 2014)
 
Responsive ui
Responsive uiResponsive ui
Responsive ui
 
Not just a pretty (type)face
Not just a pretty (type)faceNot just a pretty (type)face
Not just a pretty (type)face
 

Destaque

Presentation Hassle Free Anna
Presentation Hassle Free AnnaPresentation Hassle Free Anna
Presentation Hassle Free Anna
Matthew Pack
 

Destaque (20)

Lessons Learned From Building Your Own CSS Framework
Lessons Learned From Building Your Own CSS FrameworkLessons Learned From Building Your Own CSS Framework
Lessons Learned From Building Your Own CSS Framework
 
Seven Steps to Creating a Framework
Seven Steps to Creating a FrameworkSeven Steps to Creating a Framework
Seven Steps to Creating a Framework
 
Strategic Enterprise Design - 1st Enterprise Design Retreat by eda.c and EA F...
Strategic Enterprise Design - 1st Enterprise Design Retreat by eda.c and EA F...Strategic Enterprise Design - 1st Enterprise Design Retreat by eda.c and EA F...
Strategic Enterprise Design - 1st Enterprise Design Retreat by eda.c and EA F...
 
Enterprise Design and the Future of Enterprise Architecture - Dansk IT EA Con...
Enterprise Design and the Future of Enterprise Architecture - Dansk IT EA Con...Enterprise Design and the Future of Enterprise Architecture - Dansk IT EA Con...
Enterprise Design and the Future of Enterprise Architecture - Dansk IT EA Con...
 
Visual Regression Testing
Visual Regression TestingVisual Regression Testing
Visual Regression Testing
 
Designing and Driving UX Careers: A Framework for Empowering UX Teams (Ian Sw...
Designing and Driving UX Careers: A Framework for Empowering UX Teams (Ian Sw...Designing and Driving UX Careers: A Framework for Empowering UX Teams (Ian Sw...
Designing and Driving UX Careers: A Framework for Empowering UX Teams (Ian Sw...
 
Managing responsive websites with css preprocessors.
Managing responsive websites with css preprocessors. Managing responsive websites with css preprocessors.
Managing responsive websites with css preprocessors.
 
Introduction of the Agile Digital Enterprise Framework
Introduction of the Agile Digital Enterprise FrameworkIntroduction of the Agile Digital Enterprise Framework
Introduction of the Agile Digital Enterprise Framework
 
Inkscape for web and UI mockups
Inkscape for web and UI mockupsInkscape for web and UI mockups
Inkscape for web and UI mockups
 
You are a Healthcare Designer
You are a Healthcare DesignerYou are a Healthcare Designer
You are a Healthcare Designer
 
Surviving the Hype: An Experimental Framework for Scaling Enterprise Design T...
Surviving the Hype: An Experimental Framework for Scaling Enterprise Design T...Surviving the Hype: An Experimental Framework for Scaling Enterprise Design T...
Surviving the Hype: An Experimental Framework for Scaling Enterprise Design T...
 
Holiday Extras
Holiday ExtrasHoliday Extras
Holiday Extras
 
Apache Cordova, Hybrid Application Development
Apache Cordova, Hybrid Application DevelopmentApache Cordova, Hybrid Application Development
Apache Cordova, Hybrid Application Development
 
Presentation Hassle Free Anna
Presentation Hassle Free AnnaPresentation Hassle Free Anna
Presentation Hassle Free Anna
 
Exploring Open Date with BigQuery: Jenny Tong
Exploring Open Date with BigQuery: Jenny TongExploring Open Date with BigQuery: Jenny Tong
Exploring Open Date with BigQuery: Jenny Tong
 
Structuring Data from Unstructured Things. Sean Lorenz
Structuring Data from Unstructured Things. Sean LorenzStructuring Data from Unstructured Things. Sean Lorenz
Structuring Data from Unstructured Things. Sean Lorenz
 
Static Sites Can be the Solution (Simon Wood)
Static Sites Can be the Solution (Simon Wood)Static Sites Can be the Solution (Simon Wood)
Static Sites Can be the Solution (Simon Wood)
 
Scottish Communicators Network - 22 October 2014 - People Make Glasgow
Scottish Communicators Network - 22 October 2014 - People Make GlasgowScottish Communicators Network - 22 October 2014 - People Make Glasgow
Scottish Communicators Network - 22 October 2014 - People Make Glasgow
 
Access to iDevices
Access to iDevicesAccess to iDevices
Access to iDevices
 
Online Presence
Online PresenceOnline Presence
Online Presence
 

Semelhante a Designing an Enterprise CSS Framework is Hard, Stephanie Rewis

Semelhante a Designing an Enterprise CSS Framework is Hard, Stephanie Rewis (20)

Creating an Enterprise CSS Framework: A Salesforce UX Case Study
Creating an Enterprise CSS Framework: A Salesforce UX Case StudyCreating an Enterprise CSS Framework: A Salesforce UX Case Study
Creating an Enterprise CSS Framework: A Salesforce UX Case Study
 
Introducing the Salesforce Lightning Design System
Introducing the Salesforce Lightning Design SystemIntroducing the Salesforce Lightning Design System
Introducing the Salesforce Lightning Design System
 
Using Design System in Lightning Components
Using Design System in Lightning ComponentsUsing Design System in Lightning Components
Using Design System in Lightning Components
 
SLDS and Lightning Components
SLDS and Lightning ComponentsSLDS and Lightning Components
SLDS and Lightning Components
 
Understanding the Salesforce Architecture: How We Do the Magic We Do
Understanding the Salesforce Architecture: How We Do the Magic We DoUnderstanding the Salesforce Architecture: How We Do the Magic We Do
Understanding the Salesforce Architecture: How We Do the Magic We Do
 
Salesforce Design System for Native Apps
Salesforce Design System for Native AppsSalesforce Design System for Native Apps
Salesforce Design System for Native Apps
 
How We Built AppExchange and our Communities on the App Cloud (Platform)
How We Built AppExchange and our Communities on the App Cloud (Platform)How We Built AppExchange and our Communities on the App Cloud (Platform)
How We Built AppExchange and our Communities on the App Cloud (Platform)
 
New from Salesforce Labs
New from Salesforce LabsNew from Salesforce Labs
New from Salesforce Labs
 
Understanding Multitenancy and the Architecture of the Salesforce Platform
Understanding Multitenancy and the Architecture of the Salesforce PlatformUnderstanding Multitenancy and the Architecture of the Salesforce Platform
Understanding Multitenancy and the Architecture of the Salesforce Platform
 
Salesforce DX for admins - Sydney world tour
Salesforce DX for admins - Sydney world tourSalesforce DX for admins - Sydney world tour
Salesforce DX for admins - Sydney world tour
 
Salesforce Developer User Group Munich - October 2016
Salesforce Developer User Group Munich - October 2016Salesforce Developer User Group Munich - October 2016
Salesforce Developer User Group Munich - October 2016
 
Salesforce Lightning Design System
Salesforce Lightning Design SystemSalesforce Lightning Design System
Salesforce Lightning Design System
 
Lightning Developer Experience, Eclipse IDE Evolved
Lightning Developer Experience, Eclipse IDE EvolvedLightning Developer Experience, Eclipse IDE Evolved
Lightning Developer Experience, Eclipse IDE Evolved
 
Apply the Salesforce CLI To Everyday Problems
Apply the Salesforce CLI To Everyday ProblemsApply the Salesforce CLI To Everyday Problems
Apply the Salesforce CLI To Everyday Problems
 
Simplify Complex Data with Dynamic Image Formulas by Chandler Anderson
Simplify Complex Data with Dynamic Image Formulas by Chandler AndersonSimplify Complex Data with Dynamic Image Formulas by Chandler Anderson
Simplify Complex Data with Dynamic Image Formulas by Chandler Anderson
 
Modern Development with Salesforce DX
Modern Development with Salesforce DXModern Development with Salesforce DX
Modern Development with Salesforce DX
 
2016 SUTOL - Salesforce App Cloud and Domino - same same, but different
2016 SUTOL - Salesforce App Cloud and Domino - same same, but different2016 SUTOL - Salesforce App Cloud and Domino - same same, but different
2016 SUTOL - Salesforce App Cloud and Domino - same same, but different
 
2016 ISBG - Salesforce App Cloud and Domino - same same, but different
2016 ISBG - Salesforce App Cloud and Domino - same same, but different2016 ISBG - Salesforce App Cloud and Domino - same same, but different
2016 ISBG - Salesforce App Cloud and Domino - same same, but different
 
Force.com Friday: Intro to Force.com
Force.com Friday: Intro to Force.comForce.com Friday: Intro to Force.com
Force.com Friday: Intro to Force.com
 
Champion Productivity with Service Cloud
Champion Productivity with Service CloudChampion Productivity with Service Cloud
Champion Productivity with Service Cloud
 

Mais de Future Insights

Mais de Future Insights (20)

The Human Body in the IoT. Tim Cannon + Ryan O'Shea
The Human Body in the IoT. Tim Cannon + Ryan O'SheaThe Human Body in the IoT. Tim Cannon + Ryan O'Shea
The Human Body in the IoT. Tim Cannon + Ryan O'Shea
 
Pretty pictures - Brandon Satrom
Pretty pictures - Brandon SatromPretty pictures - Brandon Satrom
Pretty pictures - Brandon Satrom
 
Putting real time into practice - Saul Diez-Guerra
Putting real time into practice - Saul Diez-GuerraPutting real time into practice - Saul Diez-Guerra
Putting real time into practice - Saul Diez-Guerra
 
Surviving the enterprise storm - @RianVDM
Surviving the enterprise storm - @RianVDMSurviving the enterprise storm - @RianVDM
Surviving the enterprise storm - @RianVDM
 
A Universal Theory of Everything, Christopher Murphy
A Universal Theory of Everything, Christopher MurphyA Universal Theory of Everything, Christopher Murphy
A Universal Theory of Everything, Christopher Murphy
 
Horizon Interactive Awards, Mike Sauce & Jeff Jahn
Horizon Interactive Awards, Mike Sauce & Jeff JahnHorizon Interactive Awards, Mike Sauce & Jeff Jahn
Horizon Interactive Awards, Mike Sauce & Jeff Jahn
 
Reading Your Users’ Minds: Empiricism, Design, and Human Behavior, Shane F. B...
Reading Your Users’ Minds: Empiricism, Design, and Human Behavior, Shane F. B...Reading Your Users’ Minds: Empiricism, Design, and Human Behavior, Shane F. B...
Reading Your Users’ Minds: Empiricism, Design, and Human Behavior, Shane F. B...
 
Front End Development Transformation at Scale, Damon Deaner
Front End Development Transformation at Scale, Damon DeanerFront End Development Transformation at Scale, Damon Deaner
Front End Development Transformation at Scale, Damon Deaner
 
Cinematic UX, Brad Weaver
Cinematic UX, Brad WeaverCinematic UX, Brad Weaver
Cinematic UX, Brad Weaver
 
The Future is Modular, Jonathan Snook
The Future is Modular, Jonathan SnookThe Future is Modular, Jonathan Snook
The Future is Modular, Jonathan Snook
 
Accessibility Is More Than What Lies In The Code, Jennison Asuncion
Accessibility Is More Than What Lies In The Code, Jennison AsuncionAccessibility Is More Than What Lies In The Code, Jennison Asuncion
Accessibility Is More Than What Lies In The Code, Jennison Asuncion
 
Sunny with a Chance of Innovation: A How-To for Product Managers and Designer...
Sunny with a Chance of Innovation: A How-To for Product Managers and Designer...Sunny with a Chance of Innovation: A How-To for Product Managers and Designer...
Sunny with a Chance of Innovation: A How-To for Product Managers and Designer...
 
Designing for Dyslexia, Andrew Zusman
Designing for Dyslexia, Andrew ZusmanDesigning for Dyslexia, Andrew Zusman
Designing for Dyslexia, Andrew Zusman
 
Beyond Measure, Erika Hall
Beyond Measure, Erika HallBeyond Measure, Erika Hall
Beyond Measure, Erika Hall
 
Real Artists Ship, Haraldur Thorleifsson
Real Artists Ship, Haraldur ThorleifssonReal Artists Ship, Haraldur Thorleifsson
Real Artists Ship, Haraldur Thorleifsson
 
Ok Computer. Peter Gasston
Ok Computer. Peter GasstonOk Computer. Peter Gasston
Ok Computer. Peter Gasston
 
Digital Manuscripts Toolkit, using IIIF and JavaScript. Monica Messaggi Kaya
Digital Manuscripts Toolkit, using IIIF and JavaScript. Monica Messaggi KayaDigital Manuscripts Toolkit, using IIIF and JavaScript. Monica Messaggi Kaya
Digital Manuscripts Toolkit, using IIIF and JavaScript. Monica Messaggi Kaya
 
How to Build Your Future in the Internet of Things Economy. Jennifer Riggins
How to Build Your Future in the Internet of Things Economy. Jennifer RigginsHow to Build Your Future in the Internet of Things Economy. Jennifer Riggins
How to Build Your Future in the Internet of Things Economy. Jennifer Riggins
 
The Wordpress Game Changer. Jenny Wong
The Wordpress Game Changer. Jenny WongThe Wordpress Game Changer. Jenny Wong
The Wordpress Game Changer. Jenny Wong
 
A behind the-scenes look at cross-browser testing with web driver, Adrian Bat...
A behind the-scenes look at cross-browser testing with web driver, Adrian Bat...A behind the-scenes look at cross-browser testing with web driver, Adrian Bat...
A behind the-scenes look at cross-browser testing with web driver, Adrian Bat...
 

Último

Escorts Service Nagavara ☎ 7737669865☎ Book Your One night Stand (Bangalore)
Escorts Service Nagavara ☎ 7737669865☎ Book Your One night Stand (Bangalore)Escorts Service Nagavara ☎ 7737669865☎ Book Your One night Stand (Bangalore)
Escorts Service Nagavara ☎ 7737669865☎ Book Your One night Stand (Bangalore)
amitlee9823
 
➥🔝 7737669865 🔝▻ jhansi Call-girls in Women Seeking Men 🔝jhansi🔝 Escorts S...
➥🔝 7737669865 🔝▻ jhansi Call-girls in Women Seeking Men  🔝jhansi🔝   Escorts S...➥🔝 7737669865 🔝▻ jhansi Call-girls in Women Seeking Men  🔝jhansi🔝   Escorts S...
➥🔝 7737669865 🔝▻ jhansi Call-girls in Women Seeking Men 🔝jhansi🔝 Escorts S...
amitlee9823
 
Abortion Pills in Oman (+918133066128) Cytotec clinic buy Oman Muscat
Abortion Pills in Oman (+918133066128) Cytotec clinic buy Oman MuscatAbortion Pills in Oman (+918133066128) Cytotec clinic buy Oman Muscat
Abortion Pills in Oman (+918133066128) Cytotec clinic buy Oman Muscat
Abortion pills in Kuwait Cytotec pills in Kuwait
 
Brookefield Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...
Brookefield Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...Brookefield Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...
Brookefield Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...
amitlee9823
 
Abortion pill for sale in Muscat (+918761049707)) Get Cytotec Cash on deliver...
Abortion pill for sale in Muscat (+918761049707)) Get Cytotec Cash on deliver...Abortion pill for sale in Muscat (+918761049707)) Get Cytotec Cash on deliver...
Abortion pill for sale in Muscat (+918761049707)) Get Cytotec Cash on deliver...
instagramfab782445
 
Anamika Escorts Service Darbhanga ❣️ 7014168258 ❣️ High Cost Unlimited Hard ...
Anamika Escorts Service Darbhanga ❣️ 7014168258 ❣️ High Cost Unlimited Hard  ...Anamika Escorts Service Darbhanga ❣️ 7014168258 ❣️ High Cost Unlimited Hard  ...
Anamika Escorts Service Darbhanga ❣️ 7014168258 ❣️ High Cost Unlimited Hard ...
nirzagarg
 
Call Girls Basavanagudi Just Call 👗 7737669865 👗 Top Class Call Girl Service ...
Call Girls Basavanagudi Just Call 👗 7737669865 👗 Top Class Call Girl Service ...Call Girls Basavanagudi Just Call 👗 7737669865 👗 Top Class Call Girl Service ...
Call Girls Basavanagudi Just Call 👗 7737669865 👗 Top Class Call Girl Service ...
amitlee9823
 
Peaches App development presentation deck
Peaches App development presentation deckPeaches App development presentation deck
Peaches App development presentation deck
tbatkhuu1
 

Último (20)

Sector 105, Noida Call girls :8448380779 Model Escorts | 100% verified
Sector 105, Noida Call girls :8448380779 Model Escorts | 100% verifiedSector 105, Noida Call girls :8448380779 Model Escorts | 100% verified
Sector 105, Noida Call girls :8448380779 Model Escorts | 100% verified
 
call girls in Kaushambi (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝...
call girls in Kaushambi (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝...call girls in Kaushambi (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝...
call girls in Kaushambi (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝...
 
Escorts Service Nagavara ☎ 7737669865☎ Book Your One night Stand (Bangalore)
Escorts Service Nagavara ☎ 7737669865☎ Book Your One night Stand (Bangalore)Escorts Service Nagavara ☎ 7737669865☎ Book Your One night Stand (Bangalore)
Escorts Service Nagavara ☎ 7737669865☎ Book Your One night Stand (Bangalore)
 
call girls in Vasundhra (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝...
call girls in Vasundhra (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝...call girls in Vasundhra (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝...
call girls in Vasundhra (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝...
 
❤Personal Whatsapp Number 8617697112 Samba Call Girls 💦✅.
❤Personal Whatsapp Number 8617697112 Samba Call Girls 💦✅.❤Personal Whatsapp Number 8617697112 Samba Call Girls 💦✅.
❤Personal Whatsapp Number 8617697112 Samba Call Girls 💦✅.
 
Sector 104, Noida Call girls :8448380779 Model Escorts | 100% verified
Sector 104, Noida Call girls :8448380779 Model Escorts | 100% verifiedSector 104, Noida Call girls :8448380779 Model Escorts | 100% verified
Sector 104, Noida Call girls :8448380779 Model Escorts | 100% verified
 
Booking open Available Pune Call Girls Kirkatwadi 6297143586 Call Hot Indian...
Booking open Available Pune Call Girls Kirkatwadi  6297143586 Call Hot Indian...Booking open Available Pune Call Girls Kirkatwadi  6297143586 Call Hot Indian...
Booking open Available Pune Call Girls Kirkatwadi 6297143586 Call Hot Indian...
 
Pooja 9892124323, Call girls Services and Mumbai Escort Service Near Hotel Gi...
Pooja 9892124323, Call girls Services and Mumbai Escort Service Near Hotel Gi...Pooja 9892124323, Call girls Services and Mumbai Escort Service Near Hotel Gi...
Pooja 9892124323, Call girls Services and Mumbai Escort Service Near Hotel Gi...
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
➥🔝 7737669865 🔝▻ jhansi Call-girls in Women Seeking Men 🔝jhansi🔝 Escorts S...
➥🔝 7737669865 🔝▻ jhansi Call-girls in Women Seeking Men  🔝jhansi🔝   Escorts S...➥🔝 7737669865 🔝▻ jhansi Call-girls in Women Seeking Men  🔝jhansi🔝   Escorts S...
➥🔝 7737669865 🔝▻ jhansi Call-girls in Women Seeking Men 🔝jhansi🔝 Escorts 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...
Top Rated Pune Call Girls Koregaon Park ⟟ 6297143586 ⟟ Call Me For Genuine S...
 
Abortion Pills in Oman (+918133066128) Cytotec clinic buy Oman Muscat
Abortion Pills in Oman (+918133066128) Cytotec clinic buy Oman MuscatAbortion Pills in Oman (+918133066128) Cytotec clinic buy Oman Muscat
Abortion Pills in Oman (+918133066128) Cytotec clinic buy Oman Muscat
 
Real service provider college girl Mira Road 8976425520
Real service provider college girl Mira Road 8976425520Real service provider college girl Mira Road 8976425520
Real service provider college girl Mira Road 8976425520
 
Brookefield Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...
Brookefield Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...Brookefield Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...
Brookefield Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...
 
Abortion pill for sale in Muscat (+918761049707)) Get Cytotec Cash on deliver...
Abortion pill for sale in Muscat (+918761049707)) Get Cytotec Cash on deliver...Abortion pill for sale in Muscat (+918761049707)) Get Cytotec Cash on deliver...
Abortion pill for sale in Muscat (+918761049707)) Get Cytotec Cash on deliver...
 
VIP Model Call Girls Kalyani Nagar ( Pune ) Call ON 8005736733 Starting From ...
VIP Model Call Girls Kalyani Nagar ( Pune ) Call ON 8005736733 Starting From ...VIP Model Call Girls Kalyani Nagar ( Pune ) Call ON 8005736733 Starting From ...
VIP Model Call Girls Kalyani Nagar ( Pune ) Call ON 8005736733 Starting From ...
 
Anamika Escorts Service Darbhanga ❣️ 7014168258 ❣️ High Cost Unlimited Hard ...
Anamika Escorts Service Darbhanga ❣️ 7014168258 ❣️ High Cost Unlimited Hard  ...Anamika Escorts Service Darbhanga ❣️ 7014168258 ❣️ High Cost Unlimited Hard  ...
Anamika Escorts Service Darbhanga ❣️ 7014168258 ❣️ High Cost Unlimited Hard ...
 
Call Girls Basavanagudi Just Call 👗 7737669865 👗 Top Class Call Girl Service ...
Call Girls Basavanagudi Just Call 👗 7737669865 👗 Top Class Call Girl Service ...Call Girls Basavanagudi Just Call 👗 7737669865 👗 Top Class Call Girl Service ...
Call Girls Basavanagudi Just Call 👗 7737669865 👗 Top Class Call Girl Service ...
 
8377087607, Door Step Call Girls In Kalkaji (Locanto) 24/7 Available
8377087607, Door Step Call Girls In Kalkaji (Locanto) 24/7 Available8377087607, Door Step Call Girls In Kalkaji (Locanto) 24/7 Available
8377087607, Door Step Call Girls In Kalkaji (Locanto) 24/7 Available
 
Peaches App development presentation deck
Peaches App development presentation deckPeaches App development presentation deck
Peaches App development presentation deck
 

Designing an Enterprise CSS Framework is Hard, Stephanie Rewis

  • 1. Designing an Enterprise CSS Framework is hard ​Stephanie Rewis ​Salesforce UX ​
  • 2. Stephanie Rewis @stefsull Lead Developer, Design Systems, Salesforce UX
  • 3. Safe Harbor ​Safe harbor statement under the Private Securities Litigation Reform Act of 1995: ​This presentation may contain forward-looking statements that involve risks, uncertainties, and assumptions. If any such uncertainties materialize or if any of the assumptions proves incorrect, the results of salesforce.com, inc. could differ materially from the results expressed or implied by the forward-looking statements we make. All statements other than statements of historical fact could be deemed forward- looking, including any projections of product or service availability, subscriber growth, earnings, revenues, or other financial items and any statements regarding strategies or plans of management for future operations, statements of belief, any statements concerning new, planned, or upgraded services or technology developments and customer contracts or use of our services. ​The risks and uncertainties referred to above include – but are not limited to – risks associated with developing and delivering new functionality for our service, new products and services, our new business model, our past operating losses, possible fluctuations in our operating results and rate of growth, interruptions or delays in our Web hosting, breach of our security measures, the outcome of any litigation, risks associated with completed and any possible mergers and acquisitions, the immature market in which we operate, our relatively limited operating history, our ability to expand, retain, and motivate our employees and manage our growth, new releases of our service and successful customer deployment, our limited history reselling non-salesforce.com products, and utilization and selling to larger enterprise customers. Further information on potential factors that could affect the financial results of salesforce.com, inc. is included in our annual report on Form 10-K for the most recent fiscal year and in our quarterly report on Form 10-Q for the most recent fiscal quarter. These documents and others containing important disclosures are available on the SEC Filings section of the Investor Information section of our Web site. ​Any unreleased services or features referenced in this or other presentations, press releases or public statements are not currently available and may not be delivered on time or at all. Customers who purchase our services should make the purchase decisions based upon features that are currently available. Salesforce.com, inc. assumes no obligation and does not intend to update these forward-looking statements.
  • 5.
  • 6. ​How do I get my app to look like this?
  • 7. ​Can I use the CSS in my app?
  • 8.
  • 9. We'd like our prototypers to iterate more rapidly.
  • 10. We learned our style guide was too static.
  • 11. Lightning Design System The next generation of living style guides
  • 13. Design System Components CSS Framework + UI Library
  • 16. clarity Eliminate ambiguity. Enable people to see, understand, and act with confidence.
  • 19. Let's build a house! .house { block or component name } .house__door { element or component part } .house--red { modifier or component variation } .house__door--white { variation of a component part }
  • 21.
  • 22.
  • 23. efficiency Streamline and optimize workflows. Intelligently anticipate needs to help people work better, smarter, and faster.
  • 24. Design audit and inventory of all components in designer's comps
  • 25. We broke the components down to their smallest patterns and objects.
  • 26.
  • 27.
  • 29. Enterprise applications demand content and data-rich interfaces. They lack vertical rhythm.
  • 30. Heading levels may vary and our components should be agnostic.
  • 31. Lists are used for their semantics.
  • 32. You can opt back in to the default element style using utility classes or a single wrapper. <h2 class="slds-text-heading--medium slds-m-right--small"> Medium heading with a small margin on the right. </h2>
  • 33.
  • 34.
  • 35. Accessibility for all people and devices is very important.
  • 36. We baked accessibility in: Semantics matter ARIA roles REM unit sizing We’ve documented what needs to happen when JS is added
  • 37. consistency Create familiarity and strengthen intuition by applying the same solution to the same problem.
  • 38. Design Tokens The basic atoms of the Design System
  • 39. Types of Design Tokens • Fonts • Font Sizes • Font Weights • Line Heights • Background Colors • Text Colors • Border Colors • Shadows • Spacing • Sizing • Animation Durations • Media Queries • Z-indexes
  • 40.
  • 41. Using Sass and tokens (variables), you can brand your app. .slds-lookup__menu { position: absolute; width: 100%; margin-top: $spacing-xx-small; border: $border-width-thin solid $color-border; border-radius: $border-radius-medium; padding: $spacing-xx-small 0; background: $color-background-alt; z-index: $z-index-dropdown; }
  • 42.
  • 43. We play well with others. .button .slds-button
  • 44. What is scoping anyway? <div class="slds"> <!-- Your components here --> </div>
  • 45. How does scoping help? <div class="slds"> <!-- Your components here --> </div> ul li { margin-left: 20px; } .slds li { margin-left: 0; }
  • 46. beauty Demonstrate respect for people’s time and attention through thoughtful and elegant craftsmanship.
  • 47. SVG icons for beauty at every size
  • 49.
  • 50.
  • 51. "I’ve been working on a mobile app that has a Salesforce1 look and feel for the past several weeks. I've been struggling to get the styling just right so I decided to scratch it and try out the framework. I started this at 11am this morning and by the end of the day, I almost have a complete application that took me previously over 2 weeks to complete." - Matt M. Sr. Software Engineer
  • 53. Get the Design System https://www.lightningdesignsystem.com/resources/downloads https://github.com/salesforce-ux/design-system/
  • 54. Flexbox Resources A Complete Guide to Flexbox — CSS Tricks https://css-tricks.com/snippets/css/a-guide-to-flexbox Known Bugs and Workarounds for Flexbox — Phil Walton https://github.com/philipwalton/flexbugs