SlideShare a Scribd company logo
1 of 56
Download to read 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

More Related Content

What's hot

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

What's hot (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
 

Viewers also liked

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

Viewers also liked (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
 

Similar to Designing an Enterprise CSS Framework is Hard, Stephanie Rewis

Similar to 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
 

More from Future Insights

More from 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...
 

Recently uploaded

一比一原版(WLU毕业证)罗瑞尔大学毕业证成绩单留信学历认证原版一模一样
一比一原版(WLU毕业证)罗瑞尔大学毕业证成绩单留信学历认证原版一模一样一比一原版(WLU毕业证)罗瑞尔大学毕业证成绩单留信学历认证原版一模一样
一比一原版(WLU毕业证)罗瑞尔大学毕业证成绩单留信学历认证原版一模一样
awasv46j
 
Call Girls In Ratnagiri Escorts ☎️8617370543 🔝 💃 Enjoy 24/7 Escort Service En...
Call Girls In Ratnagiri Escorts ☎️8617370543 🔝 💃 Enjoy 24/7 Escort Service En...Call Girls In Ratnagiri Escorts ☎️8617370543 🔝 💃 Enjoy 24/7 Escort Service En...
Call Girls In Ratnagiri Escorts ☎️8617370543 🔝 💃 Enjoy 24/7 Escort Service En...
Nitya salvi
 
一比一定(购)滑铁卢大学毕业证(UW毕业证)成绩单学位证
一比一定(购)滑铁卢大学毕业证(UW毕业证)成绩单学位证一比一定(购)滑铁卢大学毕业证(UW毕业证)成绩单学位证
一比一定(购)滑铁卢大学毕业证(UW毕业证)成绩单学位证
wpkuukw
 
poliovirus-190801072449. pptx
poliovirus-190801072449.            pptxpoliovirus-190801072449.            pptx
poliovirus-190801072449. pptx
ssuser0ad194
 
一比一定(购)卡尔顿大学毕业证(CU毕业证)成绩单学位证
一比一定(购)卡尔顿大学毕业证(CU毕业证)成绩单学位证一比一定(购)卡尔顿大学毕业证(CU毕业证)成绩单学位证
一比一定(购)卡尔顿大学毕业证(CU毕业证)成绩单学位证
wpkuukw
 
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
 
Simple Conference Style Presentation by Slidesgo.pptx
Simple Conference Style Presentation by Slidesgo.pptxSimple Conference Style Presentation by Slidesgo.pptx
Simple Conference Style Presentation by Slidesgo.pptx
balqisyamutia
 

Recently uploaded (20)

一比一原版(WLU毕业证)罗瑞尔大学毕业证成绩单留信学历认证原版一模一样
一比一原版(WLU毕业证)罗瑞尔大学毕业证成绩单留信学历认证原版一模一样一比一原版(WLU毕业证)罗瑞尔大学毕业证成绩单留信学历认证原版一模一样
一比一原版(WLU毕业证)罗瑞尔大学毕业证成绩单留信学历认证原版一模一样
 
Call Girls In Ratnagiri Escorts ☎️8617370543 🔝 💃 Enjoy 24/7 Escort Service En...
Call Girls In Ratnagiri Escorts ☎️8617370543 🔝 💃 Enjoy 24/7 Escort Service En...Call Girls In Ratnagiri Escorts ☎️8617370543 🔝 💃 Enjoy 24/7 Escort Service En...
Call Girls In Ratnagiri Escorts ☎️8617370543 🔝 💃 Enjoy 24/7 Escort Service En...
 
一比一定(购)滑铁卢大学毕业证(UW毕业证)成绩单学位证
一比一定(购)滑铁卢大学毕业证(UW毕业证)成绩单学位证一比一定(购)滑铁卢大学毕业证(UW毕业证)成绩单学位证
一比一定(购)滑铁卢大学毕业证(UW毕业证)成绩单学位证
 
Just Call Vip call girls Fatehpur Escorts ☎️8617370543 Two shot with one girl...
Just Call Vip call girls Fatehpur Escorts ☎️8617370543 Two shot with one girl...Just Call Vip call girls Fatehpur Escorts ☎️8617370543 Two shot with one girl...
Just Call Vip call girls Fatehpur Escorts ☎️8617370543 Two shot with one girl...
 
Sweety Planet Packaging Design Process Book.pptx
Sweety Planet Packaging Design Process Book.pptxSweety Planet Packaging Design Process Book.pptx
Sweety Planet Packaging Design Process Book.pptx
 
BLOCK CHAIN PROJECT block chain project
BLOCK CHAIN  PROJECT block chain projectBLOCK CHAIN  PROJECT block chain project
BLOCK CHAIN PROJECT block chain project
 
Lecture 01 Introduction To Multimedia.pptx
Lecture 01 Introduction To Multimedia.pptxLecture 01 Introduction To Multimedia.pptx
Lecture 01 Introduction To Multimedia.pptx
 
poliovirus-190801072449. pptx
poliovirus-190801072449.            pptxpoliovirus-190801072449.            pptx
poliovirus-190801072449. pptx
 
Independent Escorts Goregaon WhatsApp +91-9930687706, Best Service
Independent Escorts Goregaon WhatsApp +91-9930687706, Best ServiceIndependent Escorts Goregaon WhatsApp +91-9930687706, Best Service
Independent Escorts Goregaon WhatsApp +91-9930687706, Best Service
 
How to Turn a Picture Into a Line Drawing in Photoshop
How to Turn a Picture Into a Line Drawing in PhotoshopHow to Turn a Picture Into a Line Drawing in Photoshop
How to Turn a Picture Into a Line Drawing in Photoshop
 
Essential UI/UX Design Principles: A Comprehensive Guide
Essential UI/UX Design Principles: A Comprehensive GuideEssential UI/UX Design Principles: A Comprehensive Guide
Essential UI/UX Design Principles: A Comprehensive Guide
 
Eye-Catching Web Design Crafting User Interfaces .docx
Eye-Catching Web Design Crafting User Interfaces .docxEye-Catching Web Design Crafting User Interfaces .docx
Eye-Catching Web Design Crafting User Interfaces .docx
 
一比一定(购)卡尔顿大学毕业证(CU毕业证)成绩单学位证
一比一定(购)卡尔顿大学毕业证(CU毕业证)成绩单学位证一比一定(购)卡尔顿大学毕业证(CU毕业证)成绩单学位证
一比一定(购)卡尔顿大学毕业证(CU毕业证)成绩单学位证
 
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...
 
UI:UX Design and Empowerment Strategies for Underprivileged Transgender Indiv...
UI:UX Design and Empowerment Strategies for Underprivileged Transgender Indiv...UI:UX Design and Empowerment Strategies for Underprivileged Transgender Indiv...
UI:UX Design and Empowerment Strategies for Underprivileged Transgender Indiv...
 
Pondicherry Escorts Service Girl ^ 9332606886, WhatsApp Anytime Pondicherry
Pondicherry Escorts Service Girl ^ 9332606886, WhatsApp Anytime PondicherryPondicherry Escorts Service Girl ^ 9332606886, WhatsApp Anytime Pondicherry
Pondicherry Escorts Service Girl ^ 9332606886, WhatsApp Anytime Pondicherry
 
Raebareli Girl Whatsapp Number 📞 8617370543 | Girls Number for Friendship
Raebareli Girl Whatsapp Number 📞 8617370543 | Girls Number for FriendshipRaebareli Girl Whatsapp Number 📞 8617370543 | Girls Number for Friendship
Raebareli Girl Whatsapp Number 📞 8617370543 | Girls Number for Friendship
 
Simple Conference Style Presentation by Slidesgo.pptx
Simple Conference Style Presentation by Slidesgo.pptxSimple Conference Style Presentation by Slidesgo.pptx
Simple Conference Style Presentation by Slidesgo.pptx
 
Furniture & Joinery Details_Designs.pptx
Furniture & Joinery Details_Designs.pptxFurniture & Joinery Details_Designs.pptx
Furniture & Joinery Details_Designs.pptx
 
TRose UXPA Experience Design Concord .pptx
TRose UXPA Experience Design Concord .pptxTRose UXPA Experience Design Concord .pptx
TRose UXPA Experience Design Concord .pptx
 

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