SlideShare a Scribd company logo
An intro to
HTML, CSS,
& SASS
Sean Wolfe
sean@zivtech.com
• Creative Director at
Zivtech in Philadelphia
• Designing and
theming Drupal sites
since 2008
• UPenn, Carilion Clinic,
Temple University
• A Text editor
• A local webserver (http://www.mamp.info/en)
• Github account (https://github.com)
• SASS (http://sass-lang.com/install)
• Compass (http://compass-style.org/install)
• Bundler (http://bundler.io)
• Livereload (http://livereload.com/)*
!
*optional but highly recommended
Tools
• HTML stands for Hyper Text Markup Language
• HTML is a markup language
• HTML documents contain HTML tags and plain text
• HTML documents are also called web pages
What is HTML?
• HTML tags are keywords (tag names) surrounded by
angle brackets like <html>
• HTML tags normally come in pairs like <p> and </p>
• The first tag in a pair is the start tag, the second tag
is the end tag
• The end tag is written like the start tag, with a slash
before the tag name
• Start and end tags are also called opening tags and
closing tags
HTML Tags
• HTML5 is the latest standard for HTML.
• <canvas> is an element for 2D drawing
• <video> and <audio> are elements for media
playback
• HTML5 uses new content-specific elements, like
<article>, <footer>, <header>, <nav>, <section
HTML5
Intro to html, css & sass
Intro to html, css & sass
Intro to html, css & sass
• The DOCTYPE declaration defines the document type
• The text between <html> and </html> describes the web page
• The <head> element is a container for all the head elements.
• The text between <body> and </body> is the visible page content
• The text between <h1> and </h1> is displayed as a heading
• The text between <p> and </p> is displayed as a paragraph
Basic HTML
• The <title> tag defines the title of the document.
• The <link> tag defines the relationship between a document and an
external resource.
• The <style> tag is used to define style information for an HTML
document.
• The <meta> tag provides metadata about the HTML document.
• The <script> tag is used to define a client-side script, such as a
JavaScript.
HTML Head
• The DOCTYPE declaration defines the document type
• The text between <html> and </html> describes the web page
• The text between <body> and </body> is the visible page content
• The text between <h1> and </h1> is displayed as a heading
• The text between <p> and </p> is displayed as a paragraph
Basic HTML
HTML Headings
• HTML headings are defined with the <h1> to <h6> tags.
HTML Headings
• HTML headings are defined with the <h1> to <h6> tags.
HTML Paragraphs
• HTML paragraphs are defined with the <p> tag.
HTML Paragraphs
• HTML paragraphs are defined with the <p> tag.
HTML Links
• HTML links are defined with the <a> tag.
HTML Links
• HTML links are defined with the <a> tag.
HTML Images
• HTML images are defined with the <img> tag.
HTML Images
• HTML images are defined with the <img> tag.
HTML Lists
• In HTML, there are several types of lists:
• unordered lists - the list items are marked with
bullets
• ordered lists - the list items are marked with
numbers or letters
• description list - a list of terms/names, with a
description of each term/name.
HTML Lists
• CSS stands for Cascading Style Sheets
• Styles define how to display HTML elements
• CSS can solve many design problems without
adding images or changing the HTML
What is CSS?
Intro to html, css & sass
CSS Syntax
html
Selector
ValueValue PropertyProperty
{margin:0; padding:0}
Declaration Declaration
CSS Selectors
• CSS selectors allow you to select and manipulate
HTML element(s).
• CSS selectors are used to "find" (or select) HTML
elements based on their id, classes, types,
attributes, and more.
Types of CSS Selectors
• The element Selector selects elements based on the
element name. (e.g. body, header, p, footer)
• The id Selector selects a specific element on the page and
can only be used once (e.g. #main, #content, #footer)
• The class Selector selects elements with the specific class
names and cans be reused
(e.g. .wrapper, .column, .panel, .panel-pane)
ID’s
classes
elements
Ways to use CSS
• CSS can be attached to HTML in 3 ways
• Inline (wysiwyg for example)
• Embedded (placed in document <head>)
• Links to CSS files (the preferred method)
Ways to use CSS
<p style=“color:red;”>Some Text</p>
Inline Styles
Ways to use CSS
<head>!
<style>p {color:red;}</style>!
</head>
Embedded Styles
Ways to use CSS
<head>!
<link rel="stylesheet"

type="text/css" href=“style.css">!
</head>
External Style Sheet reference
p {color:red;}
style.css
CSS Margin
• Margin is the space around elements (outside the
border).
• The margin does not have a background color,
and is completely transparent.
• The top, right, bottom, and left margin can be
changed independently using separate properties.
25px
50px
75px
100px
CSS Margin
{margin:25px 50px 75px 100px;}
CSS Padding
• Padding is the space between the element
border and the element content
• The top, right, bottom, and left padding can be
changed independently using separate
properties.
{padding:25px 50px 75px 100px;}
CSS Padding
25px
50px
75px
100px
{margin:25px 50px 75px 100px;}
CSS Padding & Margin
{padding:25px 50px 75px 100px;}
CSS Text
• color sets the color of text
• letter-spacing adjusts the space between characters
• line-height sets the distance between lines of text
• text-decoration specifies the decoration
• text-indent specifies the indentation of the first line
• text-shadow specifies the shadow effect
• text-transform controls the capitalization of text
• word-spacing changes the space between words
CSS Fonts
• CSS font properties define the font family, boldness, size,
and the style of a text.
• Not all computers have the same fonts installed
• font-family Specifies the font family for text
• font-size Specifies the font size of text
• font-style Specifies the font style for text (e.g. normal or
italic)
• font-variant Specifies if text should be small-caps
• font-weight Specifies the weight of a font
• font Sets all the font properties in one declaration
CSS Fonts
Serif Times New Roman, Georgia
Sans-serif Arial, Verdana
Monospace Courier New, Lucida Console
Web Fonts
Web Fonts
Web Fonts
CSS Pseudo-classes
• CSS pseudo-classes are used to select the current condition of
an element.
• The most common pseudo-classes are links
• Links can be styled differently depending on what state they
are in.
• a:link Selects an unvisited link
• a:visited Selects visited links
• a:active Selects the active link
• a:hover Selects links on mouse over
• p::first-letter Selects the first letter of a paragraph
• p::first-line Selects the first line of a paragraph
CSS Background
• CSS background properties are used to define the background
effects of an element.
• background-color sets the background color of an element
• background-image sets the background image for an element
• background-repeat sets how a background image will be
repeated
• background-attachment sets whether a background image is
fixed or scrolls with the rest of the page
• background-position sets the starting position of a background
image
• background sets all the background properties in one declaration
CSS Positioning
• The CSS positioning properties allow you to position an
element.
• Elements can be positioned using the top, bottom, left, and
right properties.
• position:static is the default position of an element
• position:fixed tells an element to be positioned relative to the
browser window. It will not move even if the window is scrolled
• position:relative tells an element to be positioned relative to
its normal position.
• position:absolute tells an element where to be positioned
relative to its parent element.
{position:relative;}
{position:absolute;}
{position:static;}
{position:static;}
{position:fixed;}
{position:static;}
CSS Float
• With CSS float, an element can be pushed to the
left or right, allowing other elements to wrap
around it.
• clear Specifies which sides of an element where
other floating elements are not allowed.
• float Specifies whether or not a box should float
to the left or right.
img {float:none;}
• Vivamus dignissim nunc eleifend, commodo mi sed,
aliquam ante. Donec id lacus eu lectus sollicitudin viverra.
Curabitur congue ultricies elit, at euismod mauris iaculis
at. Sed et dignissim ipsum. Quisque massa quam, lacinia
vel urna ac, dictum lobortis justo.“Donec et molestie
• purus”. Cras et faucibus est, a viverra odio. Praesent luctus vel
purus non mollis. In luctus vitae lectus quis fringilla. Curabitur
porttitor justo ac dolor iaculis convallis.
• Vivamus dignissim nunc eleifend, commodo mi sed,
aliquam ante. Donec id lacus eu lectus sollicitudin viverra.
Curabitur congue ultricies elit, at euismod mauris iaculis
at. Sed et dignissim ipsum. Quisque massa quam, lacinia
vel urna ac, dictum lobortis justo.“Donec et molestie
• purus”. Cras et faucibus est, a viverra odio. Praesent luctus vel
purus non mollis. In luctus vitae lectus quis fringilla. Curabitur
porttitor justo ac dolor iaculis convallis.
img {float:left;}
img {float:right;}
• Vivamus dignissim nunc eleifend, commodo mi sed,
aliquam ante. Donec id lacus eu lectus sollicitudin viverra.
Curabitur congue ultricies elit, at euismod mauris iaculis
at. Sed et dignissim ipsum. Quisque massa quam, lacinia
vel urna ac, dictum lobortis justo.“Donec et molestie
CSS Float
CSS Display and Visibility
• The display property specifies if/how an element is displayed,
and the visibility property specifies if an element should be
visible or hidden.
• visibility:hidden hides an element, but it will still take up
the same space as before.
• display:none hides an element, and it will not take up any
space.
• display:inline tells an element to only take up as much
width as necessary, and will not force line breaks.
• display:block tells an element will takes up the full width
available, and will have a line break before and after it
CSS Image Opacity / Transparency
• The CSS3 property for transparency is opacity.
• The opacity property can take a value from 0.0 -
1.0. A lower value makes the element more
transparent.
{opacity:0.1;} {opacity:0.5;} {opacity:1.0;}
CSS Image Sprites
• An image sprite is a collection of images put into
a single image.
• A web page with many images can take a long
time to load and generates multiple server
requests.
CSS Media Types
• By using the @media rule, a website can have a
different layout for screen, print, mobile phone,
tablet, etc.
• all Used for all media type devices
• braille Used for braille tactile feedback devices
• print Used for printers
• screen Used for computer screens
• tv Used for television-type devices
CSS3
• CSS3 is the latest standard for CSS and is completely
backwards-compatible with earlier versions of CSS.
• Selectors!
• Box Model!
• Borders!
• Text Effects!
• 2D/3D Transformations!
• Animations!
• Multiple Column Layout
CSS Preprocessors
• SASS stands for Syntactically Awesome Style Sheets
• Sass is a CSS preprocessor
• Sass can be written in either the sass or scss syntax
• Sass files compile into css files
What is SASS?
• CSS doesn’t allow variables
• SASS uses mixins (reusable blocks of styles)
• SASS is faster, more efficient, and easier to maintain
• Using COMPASS with SASS allows us to write many lines
of cross-browser compatible CSS in a single line of code!
Why do we use SASS?
Install Sass
$ gem install sass
nav {!
ul {!
margin: 0;!
}!
li {!
display: block;!
}!
a {!
padding: 6px 12px;!
color: $yellow;!
}!
}
SCSS
nav!
ul!
margin: 0!
li display: block!
a!
padding: 6px 12px!
color: $yellow
SASS
nav {!
ul {!
margin: 0;!
}!
li {!
display: block;!
}!
a {!
padding: 6px 12px;!
color: $yellow;!
}!
}
SCSS
nav!
ul!
margin: 0!
li display: block!
a!
padding: 6px 12px!
color: $yellow
SASS
SASS Mixins
@mixin my-background($radius) {!
margin-top: 12px;!
height: 10px;!
background: red;!
border-radius: $radius;!
}
Define the mixin
.box {@include my-background(12px);}
Include the mixin
SASS Extend
%my-background {!
margin-top: 12px;!
height: 10px;!
background: red;!
border: 1px solid $yellow;!
}
Define the placeholder selector
.box {@extend %my-background;}
Extend the placeholder selector
Mixin or Extend
.box,.footer {@include my-background(12px);}
Arguments
.box,.footer {@extend %my-background;}
Smaller CSS
Resources
• www.w3schools.com/css
• css-tricks.com
• alistapart.com
• thesassway.com
Questions &
Answers
sean@zivtech.com
Assignment
github.com/sean3325/bullfrog
Intro to html, css & sass
Assignment
1. Fork it.
2. Create a branch (`git checkout -b
toms_branch`)
3. Commit your changes (`git commit -m "Fixed
Navigation Styles"`)
4. Push to the branch (`git push origin
toms_branch`)

More Related Content

What's hot (20)

PPT
Html & Css presentation
joilrahat
 
PDF
Introduction to Javascript
Seble Nigussie
 
PPTX
Css
Hemant Saini
 
PPTX
Html and css
Sukrit Gupta
 
PDF
Intro to HTML & CSS
Syed Sami
 
PPT
Cascading Style Sheets (CSS) help
casestudyhelp
 
PPTX
Html5 Basics
Pankaj Bajaj
 
PDF
CSS3, Media Queries, and Responsive Design
Zoe Gillenwater
 
PPTX
Presentation about html5 css3
Gopi A
 
PDF
CSS Font & Text style
Yaowaluck Promdee
 
PDF
Html text and formatting
eShikshak
 
PPTX
Complete Lecture on Css presentation
Salman Memon
 
PPT
Presentation on html, css
Aamir Sohail
 
PPTX
Html and css presentation
umesh patil
 
PDF
Programação Web com HTML e CSS
Victor Adriel Oliveira
 
PDF
Ejercicios Basicos HTML
JUJEblog
 
KEY
HTML CSS & Javascript
David Lindkvist
 
PPTX
Html styles
Micah Fuentes
 
PPT
Introduction to Cascading Style Sheets (CSS)
Chris Poteet
 
Html & Css presentation
joilrahat
 
Introduction to Javascript
Seble Nigussie
 
Html and css
Sukrit Gupta
 
Intro to HTML & CSS
Syed Sami
 
Cascading Style Sheets (CSS) help
casestudyhelp
 
Html5 Basics
Pankaj Bajaj
 
CSS3, Media Queries, and Responsive Design
Zoe Gillenwater
 
Presentation about html5 css3
Gopi A
 
CSS Font & Text style
Yaowaluck Promdee
 
Html text and formatting
eShikshak
 
Complete Lecture on Css presentation
Salman Memon
 
Presentation on html, css
Aamir Sohail
 
Html and css presentation
umesh patil
 
Programação Web com HTML e CSS
Victor Adriel Oliveira
 
Ejercicios Basicos HTML
JUJEblog
 
HTML CSS & Javascript
David Lindkvist
 
Html styles
Micah Fuentes
 
Introduction to Cascading Style Sheets (CSS)
Chris Poteet
 

Viewers also liked (7)

PPTX
Learning HTML
Desarae Veit
 
PPT
Html basics
mcatahir947
 
PPT
Understanding THML
Hinopak Motors Limited
 
PDF
Intro to css & sass
Sean Wolfe
 
PDF
Road Show TI SENAC - HTML5 & CSS 3.0 - O que esperar da próxima web?
Renato Bongiorno Bonfanti
 
PPT
Html text formatting
derekoei
 
Learning HTML
Desarae Veit
 
Html basics
mcatahir947
 
Understanding THML
Hinopak Motors Limited
 
Intro to css & sass
Sean Wolfe
 
Road Show TI SENAC - HTML5 & CSS 3.0 - O que esperar da próxima web?
Renato Bongiorno Bonfanti
 
Html text formatting
derekoei
 
Ad

Similar to Intro to html, css & sass (20)

PDF
CascadingStyleSheets in ONESHOT By DeathCodeYT .pdf
balbirnainnain496
 
PDF
cascading stylesheet_cssppt-100604051600-phpapp02.pdf
hinalsomani93
 
PDF
Introduction to HTML and CSS
Mario Hernandez
 
PPTX
css3.pptx
ThiyaguPappu
 
PPTX
CSS Basics part One
M Ashraful Islam Jewel
 
PPTX
CSS tutorial chapter 1
jeweltutin
 
PPTX
Rapid HTML Prototyping with Bootstrap 4
UXPA International
 
PDF
Introduction 2 css
Md Tarik Mahmud
 
PPTX
css3.0.( Cascading Style Sheets ) pptx
neelkamal72809
 
PPTX
WEBSITE DESIGN AND DEVELOPMENT WITH CASCADING STYLE SHEETS(CSS)
brianbyamukama302
 
PPTX
Introduction to HTML and CSS
Ferdous Mahmud Shaon
 
PPTX
CSS
Akila Iroshan
 
PPTX
Ppt of web designing
prab5
 
DOC
Art of css
Raphael Wanjiku
 
PPTX
css v1 guru
GuruPada Das
 
PDF
Css from scratch
Ahmad Al-ammar
 
PPTX
CSS.pptx
RasheedMohammad6
 
PPTX
CSS
DivyaKS12
 
CascadingStyleSheets in ONESHOT By DeathCodeYT .pdf
balbirnainnain496
 
cascading stylesheet_cssppt-100604051600-phpapp02.pdf
hinalsomani93
 
Introduction to HTML and CSS
Mario Hernandez
 
css3.pptx
ThiyaguPappu
 
CSS Basics part One
M Ashraful Islam Jewel
 
CSS tutorial chapter 1
jeweltutin
 
Rapid HTML Prototyping with Bootstrap 4
UXPA International
 
Introduction 2 css
Md Tarik Mahmud
 
css3.0.( Cascading Style Sheets ) pptx
neelkamal72809
 
WEBSITE DESIGN AND DEVELOPMENT WITH CASCADING STYLE SHEETS(CSS)
brianbyamukama302
 
Introduction to HTML and CSS
Ferdous Mahmud Shaon
 
Ppt of web designing
prab5
 
Art of css
Raphael Wanjiku
 
css v1 guru
GuruPada Das
 
Css from scratch
Ahmad Al-ammar
 
Ad

Recently uploaded (20)

PPTX
Lesson 1.1 Career-Opportunities-in-Ict.pptx
lizelgumadlas1
 
PDF
B M Mostofa Kamal Al-Azad [Document & Localization Expert]
Mostofa Kamal Al-Azad
 
PPTX
原版一样(ANU毕业证书)澳洲澳大利亚国立大学毕业证在线购买
Taqyea
 
PDF
Materi tentang From Digital Economy to Fintech.pdf
Abdul Hakim
 
PPTX
原版一样(ISM毕业证书)德国多特蒙德国际管理学院毕业证多少钱
taqyed
 
PDF
BroadLink Cloud Service introduction.pdf
DevendraDwivdi1
 
PDF
web application development company in bangalore.pdf
https://dkpractice.co.in/seo.html tech
 
PDF
Clive Dickens RedTech Public Copy - Collaborate or Die
Clive Dickens
 
PDF
Slides: Eco Economic Epochs for The World Game (s) pdf
Steven McGee
 
PDF
I Want to join occult brotherhood for money ritual#((+2347089754903))
haragonoccult
 
PPTX
BitRecover OST to PST Converter Software
antoniogosling01
 
PPT
Almos Entirely Correct Mixing with Apps to Voting
gapati2964
 
PDF
03 Internal Analysis Strategik Manajemen.pdf
AhmadRifaldhi
 
PDF
Beginning-Laravel-Build-Websites-with-Laravel-5.8-by-Sanjib-Sinha-z-lib.org.pdf
TagumLibuganonRiverB
 
PPTX
My Mother At 66! (2).pptx00000000000000000000000000000
vedapattisiddharth
 
PPTX
Q1 English3 Week5 PPT-MATATAG@edumaymay.pptx
JenniferCawaling1
 
PDF
ContextForge MCP Gateway - the missing proxy for AI Agents and Tools
Mihai Criveti
 
PPTX
The ARUBA Kind of new Proposal Umum .pptx
andiwarneri
 
PPTX
Class_4_Limbgvchgchgchgchgchgcjhgchgcnked_Lists.pptx
test123n
 
PDF
The Convergence of Threat Behaviors Across Intrusions
Joe Slowik
 
Lesson 1.1 Career-Opportunities-in-Ict.pptx
lizelgumadlas1
 
B M Mostofa Kamal Al-Azad [Document & Localization Expert]
Mostofa Kamal Al-Azad
 
原版一样(ANU毕业证书)澳洲澳大利亚国立大学毕业证在线购买
Taqyea
 
Materi tentang From Digital Economy to Fintech.pdf
Abdul Hakim
 
原版一样(ISM毕业证书)德国多特蒙德国际管理学院毕业证多少钱
taqyed
 
BroadLink Cloud Service introduction.pdf
DevendraDwivdi1
 
web application development company in bangalore.pdf
https://dkpractice.co.in/seo.html tech
 
Clive Dickens RedTech Public Copy - Collaborate or Die
Clive Dickens
 
Slides: Eco Economic Epochs for The World Game (s) pdf
Steven McGee
 
I Want to join occult brotherhood for money ritual#((+2347089754903))
haragonoccult
 
BitRecover OST to PST Converter Software
antoniogosling01
 
Almos Entirely Correct Mixing with Apps to Voting
gapati2964
 
03 Internal Analysis Strategik Manajemen.pdf
AhmadRifaldhi
 
Beginning-Laravel-Build-Websites-with-Laravel-5.8-by-Sanjib-Sinha-z-lib.org.pdf
TagumLibuganonRiverB
 
My Mother At 66! (2).pptx00000000000000000000000000000
vedapattisiddharth
 
Q1 English3 Week5 PPT-MATATAG@edumaymay.pptx
JenniferCawaling1
 
ContextForge MCP Gateway - the missing proxy for AI Agents and Tools
Mihai Criveti
 
The ARUBA Kind of new Proposal Umum .pptx
andiwarneri
 
Class_4_Limbgvchgchgchgchgchgcjhgchgcnked_Lists.pptx
test123n
 
The Convergence of Threat Behaviors Across Intrusions
Joe Slowik
 

Intro to html, css & sass

  • 1. An intro to HTML, CSS, & SASS
  • 2. Sean Wolfe sean@zivtech.com • Creative Director at Zivtech in Philadelphia • Designing and theming Drupal sites since 2008 • UPenn, Carilion Clinic, Temple University
  • 3. • A Text editor • A local webserver (http://www.mamp.info/en) • Github account (https://github.com) • SASS (http://sass-lang.com/install) • Compass (http://compass-style.org/install) • Bundler (http://bundler.io) • Livereload (http://livereload.com/)* ! *optional but highly recommended Tools
  • 4. • HTML stands for Hyper Text Markup Language • HTML is a markup language • HTML documents contain HTML tags and plain text • HTML documents are also called web pages What is HTML?
  • 5. • HTML tags are keywords (tag names) surrounded by angle brackets like <html> • HTML tags normally come in pairs like <p> and </p> • The first tag in a pair is the start tag, the second tag is the end tag • The end tag is written like the start tag, with a slash before the tag name • Start and end tags are also called opening tags and closing tags HTML Tags
  • 6. • HTML5 is the latest standard for HTML. • <canvas> is an element for 2D drawing • <video> and <audio> are elements for media playback • HTML5 uses new content-specific elements, like <article>, <footer>, <header>, <nav>, <section HTML5
  • 10. • The DOCTYPE declaration defines the document type • The text between <html> and </html> describes the web page • The <head> element is a container for all the head elements. • The text between <body> and </body> is the visible page content • The text between <h1> and </h1> is displayed as a heading • The text between <p> and </p> is displayed as a paragraph Basic HTML
  • 11. • The <title> tag defines the title of the document. • The <link> tag defines the relationship between a document and an external resource. • The <style> tag is used to define style information for an HTML document. • The <meta> tag provides metadata about the HTML document. • The <script> tag is used to define a client-side script, such as a JavaScript. HTML Head
  • 12. • The DOCTYPE declaration defines the document type • The text between <html> and </html> describes the web page • The text between <body> and </body> is the visible page content • The text between <h1> and </h1> is displayed as a heading • The text between <p> and </p> is displayed as a paragraph Basic HTML
  • 13. HTML Headings • HTML headings are defined with the <h1> to <h6> tags.
  • 14. HTML Headings • HTML headings are defined with the <h1> to <h6> tags.
  • 15. HTML Paragraphs • HTML paragraphs are defined with the <p> tag.
  • 16. HTML Paragraphs • HTML paragraphs are defined with the <p> tag.
  • 17. HTML Links • HTML links are defined with the <a> tag.
  • 18. HTML Links • HTML links are defined with the <a> tag.
  • 19. HTML Images • HTML images are defined with the <img> tag.
  • 20. HTML Images • HTML images are defined with the <img> tag.
  • 21. HTML Lists • In HTML, there are several types of lists: • unordered lists - the list items are marked with bullets • ordered lists - the list items are marked with numbers or letters • description list - a list of terms/names, with a description of each term/name.
  • 23. • CSS stands for Cascading Style Sheets • Styles define how to display HTML elements • CSS can solve many design problems without adding images or changing the HTML What is CSS?
  • 26. CSS Selectors • CSS selectors allow you to select and manipulate HTML element(s). • CSS selectors are used to "find" (or select) HTML elements based on their id, classes, types, attributes, and more.
  • 27. Types of CSS Selectors • The element Selector selects elements based on the element name. (e.g. body, header, p, footer) • The id Selector selects a specific element on the page and can only be used once (e.g. #main, #content, #footer) • The class Selector selects elements with the specific class names and cans be reused (e.g. .wrapper, .column, .panel, .panel-pane)
  • 29. Ways to use CSS • CSS can be attached to HTML in 3 ways • Inline (wysiwyg for example) • Embedded (placed in document <head>) • Links to CSS files (the preferred method)
  • 30. Ways to use CSS <p style=“color:red;”>Some Text</p> Inline Styles
  • 31. Ways to use CSS <head>! <style>p {color:red;}</style>! </head> Embedded Styles
  • 32. Ways to use CSS <head>! <link rel="stylesheet"
 type="text/css" href=“style.css">! </head> External Style Sheet reference p {color:red;} style.css
  • 33. CSS Margin • Margin is the space around elements (outside the border). • The margin does not have a background color, and is completely transparent. • The top, right, bottom, and left margin can be changed independently using separate properties.
  • 35. CSS Padding • Padding is the space between the element border and the element content • The top, right, bottom, and left padding can be changed independently using separate properties.
  • 36. {padding:25px 50px 75px 100px;} CSS Padding 25px 50px 75px 100px
  • 37. {margin:25px 50px 75px 100px;} CSS Padding & Margin {padding:25px 50px 75px 100px;}
  • 38. CSS Text • color sets the color of text • letter-spacing adjusts the space between characters • line-height sets the distance between lines of text • text-decoration specifies the decoration • text-indent specifies the indentation of the first line • text-shadow specifies the shadow effect • text-transform controls the capitalization of text • word-spacing changes the space between words
  • 39. CSS Fonts • CSS font properties define the font family, boldness, size, and the style of a text. • Not all computers have the same fonts installed • font-family Specifies the font family for text • font-size Specifies the font size of text • font-style Specifies the font style for text (e.g. normal or italic) • font-variant Specifies if text should be small-caps • font-weight Specifies the weight of a font • font Sets all the font properties in one declaration
  • 40. CSS Fonts Serif Times New Roman, Georgia Sans-serif Arial, Verdana Monospace Courier New, Lucida Console
  • 44. CSS Pseudo-classes • CSS pseudo-classes are used to select the current condition of an element. • The most common pseudo-classes are links • Links can be styled differently depending on what state they are in. • a:link Selects an unvisited link • a:visited Selects visited links • a:active Selects the active link • a:hover Selects links on mouse over • p::first-letter Selects the first letter of a paragraph • p::first-line Selects the first line of a paragraph
  • 45. CSS Background • CSS background properties are used to define the background effects of an element. • background-color sets the background color of an element • background-image sets the background image for an element • background-repeat sets how a background image will be repeated • background-attachment sets whether a background image is fixed or scrolls with the rest of the page • background-position sets the starting position of a background image • background sets all the background properties in one declaration
  • 46. CSS Positioning • The CSS positioning properties allow you to position an element. • Elements can be positioned using the top, bottom, left, and right properties. • position:static is the default position of an element • position:fixed tells an element to be positioned relative to the browser window. It will not move even if the window is scrolled • position:relative tells an element to be positioned relative to its normal position. • position:absolute tells an element where to be positioned relative to its parent element.
  • 48. CSS Float • With CSS float, an element can be pushed to the left or right, allowing other elements to wrap around it. • clear Specifies which sides of an element where other floating elements are not allowed. • float Specifies whether or not a box should float to the left or right.
  • 49. img {float:none;} • Vivamus dignissim nunc eleifend, commodo mi sed, aliquam ante. Donec id lacus eu lectus sollicitudin viverra. Curabitur congue ultricies elit, at euismod mauris iaculis at. Sed et dignissim ipsum. Quisque massa quam, lacinia vel urna ac, dictum lobortis justo.“Donec et molestie • purus”. Cras et faucibus est, a viverra odio. Praesent luctus vel purus non mollis. In luctus vitae lectus quis fringilla. Curabitur porttitor justo ac dolor iaculis convallis. • Vivamus dignissim nunc eleifend, commodo mi sed, aliquam ante. Donec id lacus eu lectus sollicitudin viverra. Curabitur congue ultricies elit, at euismod mauris iaculis at. Sed et dignissim ipsum. Quisque massa quam, lacinia vel urna ac, dictum lobortis justo.“Donec et molestie • purus”. Cras et faucibus est, a viverra odio. Praesent luctus vel purus non mollis. In luctus vitae lectus quis fringilla. Curabitur porttitor justo ac dolor iaculis convallis. img {float:left;} img {float:right;} • Vivamus dignissim nunc eleifend, commodo mi sed, aliquam ante. Donec id lacus eu lectus sollicitudin viverra. Curabitur congue ultricies elit, at euismod mauris iaculis at. Sed et dignissim ipsum. Quisque massa quam, lacinia vel urna ac, dictum lobortis justo.“Donec et molestie CSS Float
  • 50. CSS Display and Visibility • The display property specifies if/how an element is displayed, and the visibility property specifies if an element should be visible or hidden. • visibility:hidden hides an element, but it will still take up the same space as before. • display:none hides an element, and it will not take up any space. • display:inline tells an element to only take up as much width as necessary, and will not force line breaks. • display:block tells an element will takes up the full width available, and will have a line break before and after it
  • 51. CSS Image Opacity / Transparency • The CSS3 property for transparency is opacity. • The opacity property can take a value from 0.0 - 1.0. A lower value makes the element more transparent. {opacity:0.1;} {opacity:0.5;} {opacity:1.0;}
  • 52. CSS Image Sprites • An image sprite is a collection of images put into a single image. • A web page with many images can take a long time to load and generates multiple server requests.
  • 53. CSS Media Types • By using the @media rule, a website can have a different layout for screen, print, mobile phone, tablet, etc. • all Used for all media type devices • braille Used for braille tactile feedback devices • print Used for printers • screen Used for computer screens • tv Used for television-type devices
  • 54. CSS3 • CSS3 is the latest standard for CSS and is completely backwards-compatible with earlier versions of CSS. • Selectors! • Box Model! • Borders! • Text Effects! • 2D/3D Transformations! • Animations! • Multiple Column Layout
  • 56. • SASS stands for Syntactically Awesome Style Sheets • Sass is a CSS preprocessor • Sass can be written in either the sass or scss syntax • Sass files compile into css files What is SASS?
  • 57. • CSS doesn’t allow variables • SASS uses mixins (reusable blocks of styles) • SASS is faster, more efficient, and easier to maintain • Using COMPASS with SASS allows us to write many lines of cross-browser compatible CSS in a single line of code! Why do we use SASS?
  • 58. Install Sass $ gem install sass
  • 59. nav {! ul {! margin: 0;! }! li {! display: block;! }! a {! padding: 6px 12px;! color: $yellow;! }! } SCSS nav! ul! margin: 0! li display: block! a! padding: 6px 12px! color: $yellow SASS
  • 60. nav {! ul {! margin: 0;! }! li {! display: block;! }! a {! padding: 6px 12px;! color: $yellow;! }! } SCSS nav! ul! margin: 0! li display: block! a! padding: 6px 12px! color: $yellow SASS
  • 61. SASS Mixins @mixin my-background($radius) {! margin-top: 12px;! height: 10px;! background: red;! border-radius: $radius;! } Define the mixin .box {@include my-background(12px);} Include the mixin
  • 62. SASS Extend %my-background {! margin-top: 12px;! height: 10px;! background: red;! border: 1px solid $yellow;! } Define the placeholder selector .box {@extend %my-background;} Extend the placeholder selector
  • 63. Mixin or Extend .box,.footer {@include my-background(12px);} Arguments .box,.footer {@extend %my-background;} Smaller CSS
  • 68. Assignment 1. Fork it. 2. Create a branch (`git checkout -b toms_branch`) 3. Commit your changes (`git commit -m "Fixed Navigation Styles"`) 4. Push to the branch (`git push origin toms_branch`)