SlideShare a Scribd company logo
Studio 4: CSS

  Prof. Alvarado
MDST 3703/7703
20 September 2012
Business
• Quizzes due Thursday at midnight
  – Will extend if the WordPress server goes
    down again
• 90 mins …
  – But some flexibility
  – Two hours is the hard limit
• Plan to have graded by next week
Responses from Last Studio
• “Should I continue to break the divisions
  down into sentences? What would happen if
  you broke it down into individual words? If I
  were to further break it down, how could
  this be useful for me? What could I do with
  it?”
  – See the Charrette Project
Turning words into elements
Responses
• How can the word “broken,” with the
  quotation marks around it, mean anything?
  Is there somewhere that I can go in and
  signify what each classification means? Will
  my signifying what it means change
  anything about the html document? I feel
  like I am seeing one side of the process. Is
  there another side to it?
  – Classes provide “hooks” that can be used to
    define styles and behaviors
Responses
• In simple recreation exists a form of
  democratization of information
  – Remediation as appropriation
• I am still confused about what SPAN and DIV
  actually do
  – These are just generic structural elements
  – DIVs are blocks, SPANs are in-line
• Where/when do you define what a “chapter-
  name” actually looks like
  – In CSS or JavaScript …
Responses
• Under content is where the actual tags of
  paragraph and quote come into play, which
  also confuses me because I typically think
  of those aspects as belonging under
  structure, since they don’t relate to the
  meaning, or maybe even layout since they
  help format the page.
  – Paragraphs and quotes are structure
  – Content comprises the actual words and
    letters (the “character data”)
Responses
• I feel like I need a crash course in HTML
  before I can handle the fast pace of this class
  – It should feel weird at first!
  – No need to internalize all of HTML
  – We are learning the logic of markup
• I thought we were using HTML on JEdit
  which is supposed to be non-linear and non-
  hierarchical, but we have also been using XML
  which is very hierarchical
  – Yes, non-linear and hierarchical patterns are
    mixed up in real life
The Document Stack

CONTENT (TEXT)   ASCII, Unicode, etc.


 STRUCTURE              XML


STYLE / LAYOUT          CSS
STRUCTURE,
represented by HTML
LAYOUT, as interpreted by
Chrome
LAYOUT, with CSS (as
interpreted by Chrome)
CSS
• Stands for “Cascading Style Sheets”
• Allows you to add styles to HTML
  – and XML in general
  – Browsers know how to apply CSS styles to
    documents
• “Style” includes things like
  –   Font characteristics
  –   Line characteristics
  –   Background colors and images
  –   Position of things on a page
How does it work?
CSS is language that associates
 style directives with document
            elements

A style directive is something like
 “make the font size 12 points”

To do this, CSS needs an efficient
    way to describe document
             elements
The DOM
• The elements in a document marked up in
  HTML are stored in a a tree called the
  DOM
  – Document Object Model
• The browser can do this because HTML
  follows the OHCO model
• CSS uses the DOM to specify elements
In the DOM, every element has an address
that can be expressed as a string
                                e.g. html/body/h1
Think of this as the element‟s ancestry
Let’s look at an example …
<html>
  <head>
   <title>I’m an HTML document</title>
  </head>
  <body>
   <h1>Here is the first header</h1>
   <p>Here is some conent</p>
  </body>
</html>




            Standard HTML Doc
<html>
  <head>
   <title>I’m an HTML document</title>
  </head>
  <body>
   <h1>Here is the first header</h1>
   <p>Here is some content:</p>
   <div>
   Here is some special content that I
  want to make bigger.
   </div>
  </body>
</html>         Standard HTM
<html>
  <head>
   <title>I’m an HTML document</title>
  </head>
  <body>
   <h1>Here is the first header</h1>
   <p>Here is some content:</p>
   <h1>
   Here is some special content that I
  want to make bigger.
   </h1>
  </body>
</html>        What not to do!
<html>
  <head>
   <title>I’m an HTML document</title>
  </head>
  <body>
   <h1>Here is the first header</h1>
   <p>Here is some conent</p>
   <div style=“font-size:14pt;">
   Here is some special content that I
  want to make bigger.
   </div>
  </body>
</html>        Instead, use CSS
<title>I’m an HTML document</title>
 <style type="text/css">
 div {
   font-size:14pt;      Better yet,
   font-weight:bold;
 }
                       put CSS here
 </style>
</head>
<body>
 <h1>Here is the first header</h1>
 <p>Here is some conent</p>
 <div>
 Here is some special content that I
want to make bigger.
 </div>
<title>I’m an HTML document</title>
 <style type="text/css">
 .foo {
   font-size:14pt;
   font-weight:bold;     Or using a
 }                     class attribute
 </style>
</head>
<body>
 <h1>Here is the first header</h1>
 <p>Here is some conent</p>
 <div class=“foo”>
 Here is some special content that I
want to make bigger.
 </div>
<html>
  <head>
   <title>I’m an HTML document</title>
   <link rel=“stylesheet” type=“text/css”
  href=“default.css” />
  </head>
  <body>    Even better: CSS in linked file
   <h1>Here is the first header</h1>
   <p>Here is some conent</p>
   <div>
   Here is some special content that I want
  to make bigger.
   </div>
  </body>
</html>
default.css
.foo {
  font-size:14pt;
  font-weight:bold;
}



 This is what the content of the
 default.css file would look like.
CSS Syntax: Selectors
.foo {
  font-size:14pt;
  font-weight:bold;
}


        The “selector” indicates what
        elements the styles apply to. Can
        address element names, classes,
        and ID. This uses the DOM.
CSS Syntax: Selectors
                      Here the selector
#foo {                finds an element with
  font-size:14pt;     an ID attribute with
                      the value “foo” …
  font-weight:bold;
}

e.g. <div id=“foo”>Hey.</div>
Example selectors
p   Any p element
p.foo Any p element with a class of foo
.foo Any element with a class of foo
#foo The element with an id of foo
CSS Selectors and the DOM
X                           Y is descendant of X
     Elements of type X    X>Y
#X                          Y is child
     Element with ID X     X+Y
.X                          Y follows X
     Elements of Class X   X~Y
*                           Y immediately follows
     Every element
XY
CSS Selectors and Attributes
X[title]                   href ends with
  X has title            X[data-*="foo"]
X[href=“foo”]              Attribute matches
  X has href of „foo‟    X[foo~="bar"]
X[href*=”foo"]             Attribute among
  href contains „foo‟        values
                           e.g. attr=“v1 v2 v3”
X[href^="http"]
  href begins with ...
X[href$=".jpg”]
CSS Selectors and Pseudo Elements
X:link               X:before
  unclicked anchor   X:after
X:visited              Before and after the
  clicked anchor         element
X:hover                Works with the
                         content property
  on mouse hover
                       E.g. content:”foo”;
X:checked
  checked input
CSS Selectors: Double Colon
• X::first-letter
• X::first-line
CSS Syntax: Declarations
.foo {
  font-size:14pt;
  font-weight:bold;
}
          The “declarations” specify
          properties and values to apply to
          the element.

      Format = property-name:
               value;
Example Directives
font-family: Georgia, Garamond, serif;
color: blue;
color: #eeff99;
background-color: gray;
border: 1px solid black;
CSS Box Model
Basic Idea
• A CSS file is just a series of “rules” that
  associated styles with elements
• A CSS rule has two parts
  – A selector to identify elements (tag name,
    class, id)
  – One or more declarations of style
• CSS rules have a simple syntax
  – Selectors followed by curly braces
  – Key/value pairs separated by colons
  – Rules separated by semi-colons
Basic idea
• You can apply any number of rules to a
  document
• Rules may appear in attributes, headers, or
  external files
• Rules are “cascaded”
  – Later ones inherit previous ones
  – Later ones have precedence (can
    overwrite) earlier ones
Exercise
• Let’s try to format out Persuasion
• Go to blog post for today’s studio

More Related Content

PDF
Unit 3 (it workshop).pptx
PDF
Unit 2 (it workshop)
PPTX
Introduction to HTML and CSS
PDF
Web front end development introduction to html css and javascript
PPTX
Cascading style sheets
PPTX
PPTX
PPT
Basic css
Unit 3 (it workshop).pptx
Unit 2 (it workshop)
Introduction to HTML and CSS
Web front end development introduction to html css and javascript
Cascading style sheets
Basic css

What's hot (20)

PPTX
Ifi7174 lesson1
PPTX
Ifi7174 lesson2
PPT
Introduction to HTML
PPTX
About Best friends - HTML, CSS and JS
PPTX
Css ppt
PPTX
Concept of CSS unit3
PPTX
Complete Lecture on Css presentation
PPTX
FFW Gabrovo PMG - CSS
PPTX
Introduction to HTML and CSS
PDF
Modular HTML, CSS, & JS Workshop
PPTX
Concept of CSS part 2
PDF
CSS: a rapidly changing world
PPTX
uptu web technology unit 2 Css
PPTX
Beginners css tutorial for web designers
PDF
PPTX
CSS Basics part One
PDF
CSS - OOCSS, SMACSS and more
PPTX
Responsive web design with html5 and css3
Ifi7174 lesson1
Ifi7174 lesson2
Introduction to HTML
About Best friends - HTML, CSS and JS
Css ppt
Concept of CSS unit3
Complete Lecture on Css presentation
FFW Gabrovo PMG - CSS
Introduction to HTML and CSS
Modular HTML, CSS, & JS Workshop
Concept of CSS part 2
CSS: a rapidly changing world
uptu web technology unit 2 Css
Beginners css tutorial for web designers
CSS Basics part One
CSS - OOCSS, SMACSS and more
Responsive web design with html5 and css3
Ad

Viewers also liked (18)

PPTX
Mdst3703 2013-09-12-semantic-html
PPTX
UVA MDST 3703 Studio 01 2012-08-30
PPTX
UVA MDST 3703 2013 08-27 Introduction
PPTX
Mdst3703 2013-10-08-thematic-research-collections
PPTX
MDST 3703 F10 Seminar 14
PPTX
Mdst3703 maps-and-timelines-2012-11-13
PPTX
Mdst3703 shiva-2012-10-18
PPTX
Mdst3705 2013-02-12-finding-data
PPTX
MDST 3705 2012-03-05 Databases to Visualization
PPT
Hd Overview
PPTX
Mdst3703 graph-theory-11-20-2012
PPTX
Mdst 3559-01-27-data-journalism-studio
PPTX
MDST 3703 F10 Studio 12
PPTX
Mdst 3559-02-22-sql1
PPTX
UVA MDST 3703 The Stack of Scholarship 2012-09-24
PPTX
Mdst3705 2013-02-26-db-as-genre
PPTX
MDST 3703 F10 Studio 2
PPTX
Mdst 3559-02-15-php
Mdst3703 2013-09-12-semantic-html
UVA MDST 3703 Studio 01 2012-08-30
UVA MDST 3703 2013 08-27 Introduction
Mdst3703 2013-10-08-thematic-research-collections
MDST 3703 F10 Seminar 14
Mdst3703 maps-and-timelines-2012-11-13
Mdst3703 shiva-2012-10-18
Mdst3705 2013-02-12-finding-data
MDST 3705 2012-03-05 Databases to Visualization
Hd Overview
Mdst3703 graph-theory-11-20-2012
Mdst 3559-01-27-data-journalism-studio
MDST 3703 F10 Studio 12
Mdst 3559-02-22-sql1
UVA MDST 3703 The Stack of Scholarship 2012-09-24
Mdst3705 2013-02-26-db-as-genre
MDST 3703 F10 Studio 2
Mdst 3559-02-15-php
Ad

Similar to UVA MDST 3073 CSS 2012-09-20 (20)

PPT
CSS-part-1.ppt
PPTX
BITM3730Week4.pptx
PPTX
Building the basics (WordPress Ottawa 2014)
PDF
HTML and CSS crash course!
KEY
Html intro
PDF
Day1-HTML-CSS some basic css and html.pdf
PDF
Thinkful - Frontend Crash Course - Intro to HTML/CSS
PPT
Learning CSS for beginners.ppt all that are but
PDF
Code & Design your first website 4/18
PDF
Html / CSS Presentation
PDF
Html css crash course may 11th, atlanta
PDF
Web Development 4 (HTML & CSS)
PDF
Web Development 4
PDF
Code &amp; design your first website (3:16)
PDF
Web app development_html_css_03
PPTX
Web topic 15 1 basic css layout
PDF
Intro to html, css & sass
PPT
6867389 (1).ppt
PPT
6867389.ppt
PPT
6867389.ppt
CSS-part-1.ppt
BITM3730Week4.pptx
Building the basics (WordPress Ottawa 2014)
HTML and CSS crash course!
Html intro
Day1-HTML-CSS some basic css and html.pdf
Thinkful - Frontend Crash Course - Intro to HTML/CSS
Learning CSS for beginners.ppt all that are but
Code & Design your first website 4/18
Html / CSS Presentation
Html css crash course may 11th, atlanta
Web Development 4 (HTML & CSS)
Web Development 4
Code &amp; design your first website (3:16)
Web app development_html_css_03
Web topic 15 1 basic css layout
Intro to html, css & sass
6867389 (1).ppt
6867389.ppt
6867389.ppt

More from Rafael Alvarado (20)

PPTX
Mdst3703 2013-10-01-hypertext-and-history
PPTX
Mdst3703 2013-09-24-hypertext
PPTX
Presentation1
PPTX
Mdst3703 2013-09-17-text-models
PPTX
Mdst3703 2013-09-10-textual-signals
PPTX
Mdst3703 2013-09-05-studio2
PPTX
Mdst3703 2013-09-03-plato2
PPTX
Mdst3703 2013-08-29-hello-world
PPTX
Mdst3705 2013-02-19-text-into-data
PPTX
Mdst3705 2013-02-05-databases
PPTX
Mdst3705 2013-01-29-praxis
PPTX
Mdst3705 2013-01-31-php3
PPTX
Mdst3705 2012-01-22-code-as-language
PPTX
Mdst3705 2013-01-24-php2
PPTX
Mdst3705 2012-01-15-introduction
PPTX
Mdst3703 culturomics-2012-11-01
PPTX
Mdst3703 visualization-2012-10-23
PPTX
Mdst3703 ontology-overrated-2012-10-16
PPTX
Mdst3703 projects-2012-10-11
PPTX
UVA MDST 3703 JavaScript (ii) 2012-10-04
Mdst3703 2013-10-01-hypertext-and-history
Mdst3703 2013-09-24-hypertext
Presentation1
Mdst3703 2013-09-17-text-models
Mdst3703 2013-09-10-textual-signals
Mdst3703 2013-09-05-studio2
Mdst3703 2013-09-03-plato2
Mdst3703 2013-08-29-hello-world
Mdst3705 2013-02-19-text-into-data
Mdst3705 2013-02-05-databases
Mdst3705 2013-01-29-praxis
Mdst3705 2013-01-31-php3
Mdst3705 2012-01-22-code-as-language
Mdst3705 2013-01-24-php2
Mdst3705 2012-01-15-introduction
Mdst3703 culturomics-2012-11-01
Mdst3703 visualization-2012-10-23
Mdst3703 ontology-overrated-2012-10-16
Mdst3703 projects-2012-10-11
UVA MDST 3703 JavaScript (ii) 2012-10-04

Recently uploaded (20)

PPT
Teaching material agriculture food technology
PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
PDF
Encapsulation_ Review paper, used for researhc scholars
DOCX
The AUB Centre for AI in Media Proposal.docx
PDF
Network Security Unit 5.pdf for BCA BBA.
PPTX
Understanding_Digital_Forensics_Presentation.pptx
PDF
Review of recent advances in non-invasive hemoglobin estimation
PDF
CIFDAQ's Market Insight: SEC Turns Pro Crypto
PDF
Dropbox Q2 2025 Financial Results & Investor Presentation
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PDF
cuic standard and advanced reporting.pdf
PDF
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
PDF
Electronic commerce courselecture one. Pdf
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PDF
KodekX | Application Modernization Development
PDF
Machine learning based COVID-19 study performance prediction
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PDF
Spectral efficient network and resource selection model in 5G networks
Teaching material agriculture food technology
“AI and Expert System Decision Support & Business Intelligence Systems”
Encapsulation_ Review paper, used for researhc scholars
The AUB Centre for AI in Media Proposal.docx
Network Security Unit 5.pdf for BCA BBA.
Understanding_Digital_Forensics_Presentation.pptx
Review of recent advances in non-invasive hemoglobin estimation
CIFDAQ's Market Insight: SEC Turns Pro Crypto
Dropbox Q2 2025 Financial Results & Investor Presentation
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
cuic standard and advanced reporting.pdf
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
Electronic commerce courselecture one. Pdf
Digital-Transformation-Roadmap-for-Companies.pptx
KodekX | Application Modernization Development
Machine learning based COVID-19 study performance prediction
The Rise and Fall of 3GPP – Time for a Sabbatical?
Reach Out and Touch Someone: Haptics and Empathic Computing
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
Spectral efficient network and resource selection model in 5G networks

UVA MDST 3073 CSS 2012-09-20

  • 1. Studio 4: CSS Prof. Alvarado MDST 3703/7703 20 September 2012
  • 2. Business • Quizzes due Thursday at midnight – Will extend if the WordPress server goes down again • 90 mins … – But some flexibility – Two hours is the hard limit • Plan to have graded by next week
  • 3. Responses from Last Studio • “Should I continue to break the divisions down into sentences? What would happen if you broke it down into individual words? If I were to further break it down, how could this be useful for me? What could I do with it?” – See the Charrette Project
  • 5. Responses • How can the word “broken,” with the quotation marks around it, mean anything? Is there somewhere that I can go in and signify what each classification means? Will my signifying what it means change anything about the html document? I feel like I am seeing one side of the process. Is there another side to it? – Classes provide “hooks” that can be used to define styles and behaviors
  • 6. Responses • In simple recreation exists a form of democratization of information – Remediation as appropriation • I am still confused about what SPAN and DIV actually do – These are just generic structural elements – DIVs are blocks, SPANs are in-line • Where/when do you define what a “chapter- name” actually looks like – In CSS or JavaScript …
  • 7. Responses • Under content is where the actual tags of paragraph and quote come into play, which also confuses me because I typically think of those aspects as belonging under structure, since they don’t relate to the meaning, or maybe even layout since they help format the page. – Paragraphs and quotes are structure – Content comprises the actual words and letters (the “character data”)
  • 8. Responses • I feel like I need a crash course in HTML before I can handle the fast pace of this class – It should feel weird at first! – No need to internalize all of HTML – We are learning the logic of markup • I thought we were using HTML on JEdit which is supposed to be non-linear and non- hierarchical, but we have also been using XML which is very hierarchical – Yes, non-linear and hierarchical patterns are mixed up in real life
  • 9. The Document Stack CONTENT (TEXT) ASCII, Unicode, etc. STRUCTURE XML STYLE / LAYOUT CSS
  • 12. LAYOUT, with CSS (as interpreted by Chrome)
  • 13. CSS • Stands for “Cascading Style Sheets” • Allows you to add styles to HTML – and XML in general – Browsers know how to apply CSS styles to documents • “Style” includes things like – Font characteristics – Line characteristics – Background colors and images – Position of things on a page
  • 14. How does it work?
  • 15. CSS is language that associates style directives with document elements A style directive is something like “make the font size 12 points” To do this, CSS needs an efficient way to describe document elements
  • 16. The DOM • The elements in a document marked up in HTML are stored in a a tree called the DOM – Document Object Model • The browser can do this because HTML follows the OHCO model • CSS uses the DOM to specify elements
  • 17. In the DOM, every element has an address that can be expressed as a string e.g. html/body/h1 Think of this as the element‟s ancestry
  • 18. Let’s look at an example …
  • 19. <html> <head> <title>I’m an HTML document</title> </head> <body> <h1>Here is the first header</h1> <p>Here is some conent</p> </body> </html> Standard HTML Doc
  • 20. <html> <head> <title>I’m an HTML document</title> </head> <body> <h1>Here is the first header</h1> <p>Here is some content:</p> <div> Here is some special content that I want to make bigger. </div> </body> </html> Standard HTM
  • 21. <html> <head> <title>I’m an HTML document</title> </head> <body> <h1>Here is the first header</h1> <p>Here is some content:</p> <h1> Here is some special content that I want to make bigger. </h1> </body> </html> What not to do!
  • 22. <html> <head> <title>I’m an HTML document</title> </head> <body> <h1>Here is the first header</h1> <p>Here is some conent</p> <div style=“font-size:14pt;"> Here is some special content that I want to make bigger. </div> </body> </html> Instead, use CSS
  • 23. <title>I’m an HTML document</title> <style type="text/css"> div { font-size:14pt;  Better yet, font-weight:bold; } put CSS here </style> </head> <body> <h1>Here is the first header</h1> <p>Here is some conent</p> <div> Here is some special content that I want to make bigger. </div>
  • 24. <title>I’m an HTML document</title> <style type="text/css"> .foo { font-size:14pt; font-weight:bold; Or using a } class attribute </style> </head> <body> <h1>Here is the first header</h1> <p>Here is some conent</p> <div class=“foo”> Here is some special content that I want to make bigger. </div>
  • 25. <html> <head> <title>I’m an HTML document</title> <link rel=“stylesheet” type=“text/css” href=“default.css” /> </head> <body> Even better: CSS in linked file <h1>Here is the first header</h1> <p>Here is some conent</p> <div> Here is some special content that I want to make bigger. </div> </body> </html>
  • 26. default.css .foo { font-size:14pt; font-weight:bold; } This is what the content of the default.css file would look like.
  • 27. CSS Syntax: Selectors .foo { font-size:14pt; font-weight:bold; } The “selector” indicates what elements the styles apply to. Can address element names, classes, and ID. This uses the DOM.
  • 28. CSS Syntax: Selectors Here the selector #foo { finds an element with font-size:14pt; an ID attribute with the value “foo” … font-weight:bold; } e.g. <div id=“foo”>Hey.</div>
  • 29. Example selectors p Any p element p.foo Any p element with a class of foo .foo Any element with a class of foo #foo The element with an id of foo
  • 30. CSS Selectors and the DOM X Y is descendant of X Elements of type X X>Y #X Y is child Element with ID X X+Y .X Y follows X Elements of Class X X~Y * Y immediately follows Every element XY
  • 31. CSS Selectors and Attributes X[title] href ends with X has title X[data-*="foo"] X[href=“foo”] Attribute matches X has href of „foo‟ X[foo~="bar"] X[href*=”foo"] Attribute among href contains „foo‟ values e.g. attr=“v1 v2 v3” X[href^="http"] href begins with ... X[href$=".jpg”]
  • 32. CSS Selectors and Pseudo Elements X:link X:before unclicked anchor X:after X:visited Before and after the clicked anchor element X:hover Works with the content property on mouse hover E.g. content:”foo”; X:checked checked input
  • 33. CSS Selectors: Double Colon • X::first-letter • X::first-line
  • 34. CSS Syntax: Declarations .foo { font-size:14pt; font-weight:bold; } The “declarations” specify properties and values to apply to the element. Format = property-name: value;
  • 35. Example Directives font-family: Georgia, Garamond, serif; color: blue; color: #eeff99; background-color: gray; border: 1px solid black;
  • 37. Basic Idea • A CSS file is just a series of “rules” that associated styles with elements • A CSS rule has two parts – A selector to identify elements (tag name, class, id) – One or more declarations of style • CSS rules have a simple syntax – Selectors followed by curly braces – Key/value pairs separated by colons – Rules separated by semi-colons
  • 38. Basic idea • You can apply any number of rules to a document • Rules may appear in attributes, headers, or external files • Rules are “cascaded” – Later ones inherit previous ones – Later ones have precedence (can overwrite) earlier ones
  • 39. Exercise • Let’s try to format out Persuasion • Go to blog post for today’s studio