SlideShare une entreprise Scribd logo
1  sur  17
Do MORE WITH LESS
     for your CSS




                Sean Lange
                Frontend Developer, Lullabot
                sean.lange@lullabot.com
Who are you?
Drupal? FrontPage? Dreamweaver?

Have you ever written HTML

Are you familiar with CSS

Programmers / Developers

Experience with PreProcessors

Fear Factor?
Who am I?

Sean Lange

FrontEnd Developer with Lullabot

Website Perception Enhancement Facilitator

Web Beautification Implementation Specialist

Drupal via FrontPage/Dreamweaver

FrontEnd --> Developer --> FrontEnd
Why are we here?

What is a CSS preprocessor?

What is LESS and SASS?

Is it valuable in Drupal?

How do I preprocess my CSS?

Why is CSS preprocessor important?!?
What is CSS?

Cascading Style Sheets - Responsible for
determining presentation of HTML. Provides
ability to create terrific visual displays.

Has evolved over the years with CSS2, CSS3,
based in the needs of web browser
presentation.

Long, repetitive, inconsistent
what is pre-process?

Typ Smthng --> TYPE SOMETHING

Rules, Patterns, Syntax to produce some kind
of desired output. (@imgpath == ‘“../../images/buttons/
green-buttons/large-green.jpg)


Provides opportunity for logical order and
structure to output results.

Compiler
what is LESS?
Write CSS in a smarter more organized
manner.

Use functions, mixins, operations and more.

Ability to reuse colors, styles and snippets
easily. 

Results in the ability to write more concise
style information that is easy to read, track,
and build upon. 
what it is like

LESS is Shorthand for CSS

LESS is Visual Structure for CSS

LESS is Automation for repetitive styles for
CSS

LESS is Consistency for CSS

it’s good for...
break it down
Ultimately, the
browser reads
CSS, so
ultimately you      #main-menu   {…}
have to end up      #main-menu   img {…}
with a .css file     #main-menu   ul.menu {…}
to render the       #main-menu   ul.menu li {…}
page. so…           #main-menu   ul.menu a {…}
for .css we just
make a long list,
and try to keep
it 'together'.
Is this REAL?

A though with
another thought's    Jon   Smith […]
hat on….             Jon   Smith's address […]
                     Jon   Smith's phone (h) […]
If you were          Jon   Smith's phone (w) […]
writing down         Jon   Smith's email […]
someone's contact
information, you'd
never write…
less address cruft

                              WE SEE....
WE DON’T SEE...
                              Jon Smith
Jon   Smith […]                 address
Jon   Smith's address […]       phone
Jon   Smith's phone (h) […]          (h)
Jon   Smith's phone (w) […]          (m)
Jon   Smith's email […]         email
keeping it together
                                WE WANT TO SEE....
WE DON’T WANT
TO SEE...
                                #main-menu {
#main-menu   {…}                   img {...}
#main-menu   img {…}              ul.menu {...
#main-menu   ul.menu {…}
#main-menu   ul.menu li {…}          li {...}
#main-menu   ul.menu span {…}        span {…}
                                  }
                                }
is it for Drupal?

LESS is Order and Structure for Drupal Theming
(hierarchy of elements/classes/nesting)


LESS is Rapid CSS Evolution for Drupal Theming
(creating variables for swapping values and alterations of values)


LESS is Fail, Fail, Pass for Drupal Theming                          (reusing success
and changing simple values in functions)


LESS is Consistency for Drupal Theming (padding/line-
height/clearfixes/similarities within different views)
how to do
a file with a .less extension.

use LESS app (or Codekit) and let it ‘watch’
the file or directory.

write some less in the .less file

save the .less file, the watcher (app) does it’s
thing.

RESULT... a .css file
how to do
a file with a .less extension.

use LESS app (or Codekit) and let it ‘watch’
the file or directory.

write some less in the .less file

save the .less file, the watcher (app) does it’s
thing.

RESULT... a .css file
tool
JS & DOC: http://
lesscss.org

APP: http:/ /
incident57.com/less/

Write

Compile

Use
http://css-tricks.com/poll-results-popularity-of-css-preprocessors/

Contenu connexe

Similaire à Do More with LESS

Sass Essentials at Mobile Camp LA
Sass Essentials at Mobile Camp LASass Essentials at Mobile Camp LA
Sass Essentials at Mobile Camp LAJake Johnson
 
SASS is more than LESS
SASS is more than LESSSASS is more than LESS
SASS is more than LESSItai Koren
 
Write LESS. DO more.
Write LESS. DO more.Write LESS. DO more.
Write LESS. DO more.Eugene Nor
 
Structuring your CSS for maintainability: rules and guile lines to write CSS
Structuring your CSS for maintainability: rules and guile lines to write CSSStructuring your CSS for maintainability: rules and guile lines to write CSS
Structuring your CSS for maintainability: rules and guile lines to write CSSSanjoy Kr. Paul
 
The World of Stylesheet Languages
The World of Stylesheet LanguagesThe World of Stylesheet Languages
The World of Stylesheet LanguagesAndrea Tino
 
Bootstrap Workout 2015
Bootstrap Workout 2015Bootstrap Workout 2015
Bootstrap Workout 2015Rob Davarnia
 
Preprocessor presentation
Preprocessor presentationPreprocessor presentation
Preprocessor presentationMario Noble
 
Bridging the gap between designers and developers at theguardian.com
Bridging the gap between designers and developers at theguardian.comBridging the gap between designers and developers at theguardian.com
Bridging the gap between designers and developers at theguardian.comKaelig Deloumeau-Prigent
 
CSS Less framework overview, Pros and Cons
CSS Less framework overview, Pros and ConsCSS Less framework overview, Pros and Cons
CSS Less framework overview, Pros and ConsSanjoy Kr. Paul
 
Doing More with LESS for CSS
Doing More with LESS for CSSDoing More with LESS for CSS
Doing More with LESS for CSSTodd Anglin
 

Similaire à Do More with LESS (20)

Sass Essentials at Mobile Camp LA
Sass Essentials at Mobile Camp LASass Essentials at Mobile Camp LA
Sass Essentials at Mobile Camp LA
 
SASS is more than LESS
SASS is more than LESSSASS is more than LESS
SASS is more than LESS
 
Write LESS. DO more.
Write LESS. DO more.Write LESS. DO more.
Write LESS. DO more.
 
CSS Extenders
CSS ExtendersCSS Extenders
CSS Extenders
 
Structuring your CSS for maintainability: rules and guile lines to write CSS
Structuring your CSS for maintainability: rules and guile lines to write CSSStructuring your CSS for maintainability: rules and guile lines to write CSS
Structuring your CSS for maintainability: rules and guile lines to write CSS
 
The World of Stylesheet Languages
The World of Stylesheet LanguagesThe World of Stylesheet Languages
The World of Stylesheet Languages
 
New css
New cssNew css
New css
 
2h landing page
2h landing page 2h landing page
2h landing page
 
Css Layout
Css LayoutCss Layout
Css Layout
 
Bootstrap Workout 2015
Bootstrap Workout 2015Bootstrap Workout 2015
Bootstrap Workout 2015
 
Accelerated Stylesheets
Accelerated StylesheetsAccelerated Stylesheets
Accelerated Stylesheets
 
More of less (take 2)
More of less (take 2)More of less (take 2)
More of less (take 2)
 
Preprocessor presentation
Preprocessor presentationPreprocessor presentation
Preprocessor presentation
 
Bridging the gap between designers and developers at theguardian.com
Bridging the gap between designers and developers at theguardian.comBridging the gap between designers and developers at theguardian.com
Bridging the gap between designers and developers at theguardian.com
 
Team styles
Team stylesTeam styles
Team styles
 
CSS Less framework overview, Pros and Cons
CSS Less framework overview, Pros and ConsCSS Less framework overview, Pros and Cons
CSS Less framework overview, Pros and Cons
 
INTRODUCTIONS OF CSS
INTRODUCTIONS OF CSSINTRODUCTIONS OF CSS
INTRODUCTIONS OF CSS
 
HTML5 for the Flash Developer
HTML5 for the Flash DeveloperHTML5 for the Flash Developer
HTML5 for the Flash Developer
 
Css Layout
Css LayoutCss Layout
Css Layout
 
Doing More with LESS for CSS
Doing More with LESS for CSSDoing More with LESS for CSS
Doing More with LESS for CSS
 

Dernier

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
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilV3cube
 
🐬 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
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
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
 
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
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...gurkirankumar98700
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 

Dernier (20)

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
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
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...
 
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
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 

Do More with LESS

  • 1. Do MORE WITH LESS for your CSS Sean Lange Frontend Developer, Lullabot sean.lange@lullabot.com
  • 2. Who are you? Drupal? FrontPage? Dreamweaver? Have you ever written HTML Are you familiar with CSS Programmers / Developers Experience with PreProcessors Fear Factor?
  • 3. Who am I? Sean Lange FrontEnd Developer with Lullabot Website Perception Enhancement Facilitator Web Beautification Implementation Specialist Drupal via FrontPage/Dreamweaver FrontEnd --> Developer --> FrontEnd
  • 4. Why are we here? What is a CSS preprocessor? What is LESS and SASS? Is it valuable in Drupal? How do I preprocess my CSS? Why is CSS preprocessor important?!?
  • 5. What is CSS? Cascading Style Sheets - Responsible for determining presentation of HTML. Provides ability to create terrific visual displays. Has evolved over the years with CSS2, CSS3, based in the needs of web browser presentation. Long, repetitive, inconsistent
  • 6. what is pre-process? Typ Smthng --> TYPE SOMETHING Rules, Patterns, Syntax to produce some kind of desired output. (@imgpath == ‘“../../images/buttons/ green-buttons/large-green.jpg) Provides opportunity for logical order and structure to output results. Compiler
  • 7. what is LESS? Write CSS in a smarter more organized manner. Use functions, mixins, operations and more. Ability to reuse colors, styles and snippets easily.  Results in the ability to write more concise style information that is easy to read, track, and build upon. 
  • 8. what it is like LESS is Shorthand for CSS LESS is Visual Structure for CSS LESS is Automation for repetitive styles for CSS LESS is Consistency for CSS it’s good for...
  • 9. break it down Ultimately, the browser reads CSS, so ultimately you #main-menu {…} have to end up #main-menu img {…} with a .css file #main-menu ul.menu {…} to render the #main-menu ul.menu li {…} page. so… #main-menu ul.menu a {…} for .css we just make a long list, and try to keep it 'together'.
  • 10. Is this REAL? A though with another thought's Jon Smith […] hat on…. Jon Smith's address […] Jon Smith's phone (h) […] If you were Jon Smith's phone (w) […] writing down Jon Smith's email […] someone's contact information, you'd never write…
  • 11. less address cruft WE SEE.... WE DON’T SEE... Jon Smith Jon Smith […]   address Jon Smith's address […]   phone Jon Smith's phone (h) […] (h) Jon Smith's phone (w) […]   (m) Jon Smith's email […]   email
  • 12. keeping it together WE WANT TO SEE.... WE DON’T WANT TO SEE... #main-menu { #main-menu {…} img {...} #main-menu img {…}   ul.menu {... #main-menu ul.menu {…} #main-menu ul.menu li {…}    li {...} #main-menu ul.menu span {…}    span {…}   } }
  • 13. is it for Drupal? LESS is Order and Structure for Drupal Theming (hierarchy of elements/classes/nesting) LESS is Rapid CSS Evolution for Drupal Theming (creating variables for swapping values and alterations of values) LESS is Fail, Fail, Pass for Drupal Theming (reusing success and changing simple values in functions) LESS is Consistency for Drupal Theming (padding/line- height/clearfixes/similarities within different views)
  • 14. how to do a file with a .less extension. use LESS app (or Codekit) and let it ‘watch’ the file or directory. write some less in the .less file save the .less file, the watcher (app) does it’s thing. RESULT... a .css file
  • 15. how to do a file with a .less extension. use LESS app (or Codekit) and let it ‘watch’ the file or directory. write some less in the .less file save the .less file, the watcher (app) does it’s thing. RESULT... a .css file
  • 16. tool JS & DOC: http:// lesscss.org APP: http:/ / incident57.com/less/ Write Compile Use

Notes de l'éditeur

  1. \n
  2. \n
  3. \n
  4. \n
  5. \n
  6. \n
  7. \n
  8. Are you tired of writing.\ntext-indent: -9999px;\nremebering the hex number for the hover link;\nwriting overrides for the hover link in situations;\n\n
  9. \n
  10. \n
  11. \n
  12. \n
  13. What does that mean for my Drupal theming?\ncreate re-usable css structures that speed up your time writing css.\ncreate variables, so that if you change a color, you change the variable once, and don't need to 'find and replace' for several minutes.\ncreate re-usable css that you can insert values into… i.e. never write several decelerations for rounded corners again.\n\n
  14. \n
  15. a less file is a PRE CSS file. Similar to the idea that when you create some drawing in Photoshop, that is then processed into a jpg, gif, png, etc...\n\nWrite your LESS in the format using the documentation and guide.\nUse a LESS compiler to generate the css file.\nUse the resulting CSS file where needed.\n\nWe will be using the LESS app, and CSS files to today’s introduction to LESS.\n
  16. \n