SlideShare a Scribd company logo
How CSS works  By Amit Tyagi [email_address]
What is CSS C ascading  S tyle  S heets  Contains the rules for the  presentation  of HTML.   +  =  HTML CSS Web Page CSS was introduced to keep the  presentation  information  separate  from  HTML  markup (content).
Before CSS Initially Designers used presentation tags like (FONT, B, BR,  TABLE  etc.) and  spacers GIFs  to control the design of web pages.
Any  modification  in the design of websites was a very  difficult  and  boring  task , as it evolves  manually  editing  every HTML page.
Providing support for multiple browsers was a difficult task.
CSS – brief history  Style sheets have existed in one form or another since the beginnings of SGML in the 1970s. In 1996,  CSS level 1  Recommendation was published in December.  CSS level2  was published as a W3C Recommendation on May 12, 1998  CSS level3  is still under development.
Sources of Styles Author (developer) Styles  Inline Styles  - As inline attribute “style” inside HTML tags <div  style=“font-weight: bold;” >I am bold</div> Embedded Styles -  As embedded style tag with in HTML document. <html> <head> <title>Welcome to Vendio!</title>  <style> .footer { width:90%; } </style> ------- </html> Linked Styles  -  Inside separate files with .css extension <link rel=&quot;stylesheet&quot; href=“external.css&quot; type=&quot;text/css&quot; />
Sources of Styles(contd.) User Style sheets This file contains the user created styles . [firefox profile folder]/ chrome/userContent-example.css  is the current user’s style sheet file for the firefox. Browser default style sheet This file contains default styles for all users of a  browser [firefox folder]/res/html.css  is the default style sheet file for the firefox.
Cascade The CSS cascade assigns a weight to each style rule. When several rules apply, the one with the greatest weight takes precedence.   Order of preference for various styles: Default browser style sheet ( weakest )  User style sheet Author style sheet Author embedded styles Author inline styles ( strongest )
CSS Selectors  ID based ( #) HTML CSS <div  id =“content”>   # content { Text width: 200px; </div> } ID selectors should be used with  single  elements.
Class based selector  Class (.) HTML CSS <div  class =“big”>   . content { Text width: 200px; </div> } <div> <span  class =“big”>some text </span> </div> Class based styles can be used by  multiple  HTML elements.
Tag based selectors Tag  (Tag name) HTML CSS < div >   DIV  { Text width: 200px; </div> } < div > SPAN  { < span >some text </span> font-size:130%; </div> } < span >some other text </span>
Grouping  Multiple selectors can be grouped in a single style declaration by using , . H1 ,  P  ,  .main { font-weight:bold; }
Descendant selectors Descendant selectors are used to select elements that are descendants ( not necessarily children ) of another element in the document tree.   HTML CSS < div class=“abc” > DIV.abc P  {   <div>   font-weight:bold;    < P > }   Hello there!    </p>   </div> </div>
Child selectors A child selector is used to select an element that is a direct child of another element (parent). Child selectors will not select all descendants, only direct children.  HTML CSS <div > DIV.abc  >  P {   < div class=“abc” >   font-weight:bold;    < P > }   Hello there!    </p>   </div> </div>
Universal selectors Universal selectors are used to select any element. *  { color: blue; }
Adjacent sibling selectors Adjacent sibling selectors will select the sibling immediately following an element.  DIV.abc  +  P { font-weight: bold; } will work for  <div> < div  class=“abc”>Message</div> < P >Hello there!</p> </div>
Attribute selectors Attribute selectors selects elements based upon the attributes present in the HTML Tags and their value. IMG [src=&quot;small.gif&quot;]  {  border: 1px solid #000;  }   will work for  <img  src=“small.gif”  />
CSS Pseudo-classes selector:pseudo-class { property: value } :link :visited  }  Link (A tag) related pseudo classes :hover  :active  :after :before :first-child :focus :first-letter :first-line :lang
CSS Values Words:   text-align: center ;. Numerical values:   Numerical values are usually followed by a unit type.  font-size:12 px ; 12 is the numerical value and px is the unit type pixels. Absolute Values – in, pc, px, cm, mm, pt  Relative Values – em, ex, % Color values:   color :#336699  or color#369.
Categories of CSS properties Positioning and layout handling related. Background related properties.  Font and text related  Links related. Lists related. Table related.
Box model
The Display Property Block Level elements , such as DIVs, paragraphs, headings, and lists,  sit one above another  when displayed in the browser. HTML <body> <div id=“div1”></div>   <div id=“div2”></div>   <div id=“div3”></div> </body> CSS #div1 { width:300px;background:yellow;} #div1 { width:300px;background:blue;} #div1 { width:300px;background:orange;}
Inline Elements   Inline elements  such as a, span, and img,  sit side by side  when they are displayed in the browser and only appear on a new line if there is insufficient room on the previous one. <div id=&quot;row1&quot; > <span class=&quot;norm&quot;>This is small text and </span> <span class=&quot;big&quot;>this is big</span> <span class=&quot;italicText&quot;> I am Italic</span> </div> .norm { color : red ; } .big { color : blue ; font-weight : bold ; } .italicText { color : green ; font-style : italic ; } #row1 { padding :10px; border : solid  1px #000; }
Display property  none inline block list-item run-in compact marker table inline-table inline-block table-row-group table-header-group table-footer-group table-row table-column-group table-column table-cell table-caption
Visibility Visible  : The element is visible (default). Hidden  : The element is invisible (but still takes up space) .big { visibility : hidden ; }
z-index The z-index property specifies the  stack order  of an element. An element with  greater stack order is always in front  of an element with a lower stack order. only works on  positioned elements  (position:absolute, position:relative, or position:fixed).
Default page flow Always think of web page as  3D arrangement  of different  layers .
Floating float : left ,  right ,  none ; A floated box is laid out according to the normal flow, then taken out of the flow and shifted to the left or right as far as possible.   IMG {  float : left ; }
Floating multiple elements Floated boxes will move to the left or right until their outer edge touches the containing block edge or the outer edge of another float.  <ul> <li>Home</li> <li>Products</li> <li>Services</li> <li>Contact Us</li> </ul> After applying  LI { float:left; }
Clearing Floats Clear:both ; Or  <style type=&quot;text/css&quot;>  .clearfix:after {  content: &quot;.&quot;; display: block; height: 0; clear: both; visibility: hidden; }  .clearfix {display: inline-block;} /* for IE/Mac */  </style> <!--[if IE]><style type=&quot;text/css&quot;>  .clearfix { zoom: 1; display: block; }  </style> <![endif]-->
Positioning - static position: static ; (Default option) the element occurs in the normal flow (ignores any top, bottom, left, right, or z-index declarations)
Positioning - relative position: relative ; Generates a relatively positioned element, positioned  relative to its normal position , use bottom, right, top and left property to place element. Default flow of other elements don’t change.
Positioning - absolute position: relative ; Generates an absolutely positioned element, positioned  relative to the first parent element that has a position other than static  (if none is found, relative to document’s BODY). use bottom, right, top and left property to place element
Positioning - fixed position: relative ; Generates an absolutely positioned element, positioned  relative to the browser window  and  don’t change even after page scroll . use bottom, right, top and left property to place element
Inheritance Styles that relate to  text and appearance   are  inherited  by the descendant elements.  Styles that relate to the appearance of boxes created by styling DIVs, paragraphs, and other elements, such as  borders, padding, margins  are  not inherited .
 
Refrences www.w3schools.com www.w3.org   World wide web

More Related Content

What's hot (20)

PPTX
1 03 - CSS Introduction
apnwebdev
 
PPT
Introduction to Cascading Style Sheets (CSS)
Chris Poteet
 
PDF
Basic-CSS-tutorial
tutorialsruby
 
PPTX
html-css
Dhirendra Chauhan
 
PPT
Cascading Style Sheets (CSS) help
casestudyhelp
 
PPTX
css.ppt
bhasula
 
PPTX
Css ppt
Nidhi mishra
 
PPTX
Introduction to CSS
Folasade Adedeji
 
PPTX
Complete Lecture on Css presentation
Salman Memon
 
PDF
CSS Day: CSS Grid Layout
Rachel Andrew
 
PPTX
HTML: Tables and Forms
BG Java EE Course
 
PPTX
HTML Semantic Elements
Reema
 
PDF
Xml schema
Prabhakaran V M
 
PPTX
Basic HTML
Sayan De
 
PPT
CSS for Beginners
Amit Kumar Singh
 
PPTX
Css position
Webtech Learning
 
PPT
CSS ppt
Sanmuga Nathan
 
1 03 - CSS Introduction
apnwebdev
 
Introduction to Cascading Style Sheets (CSS)
Chris Poteet
 
Basic-CSS-tutorial
tutorialsruby
 
Cascading Style Sheets (CSS) help
casestudyhelp
 
css.ppt
bhasula
 
Css ppt
Nidhi mishra
 
Introduction to CSS
Folasade Adedeji
 
Complete Lecture on Css presentation
Salman Memon
 
CSS Day: CSS Grid Layout
Rachel Andrew
 
HTML: Tables and Forms
BG Java EE Course
 
HTML Semantic Elements
Reema
 
Xml schema
Prabhakaran V M
 
Basic HTML
Sayan De
 
CSS for Beginners
Amit Kumar Singh
 
Css position
Webtech Learning
 

Viewers also liked (8)

PDF
Open Source and Open Data in the Age of the Cloud
Tim O'Reilly
 
PPT
ASP.NET 10 - Data Controls
Randy Connolly
 
PPT
cascading style sheet ppt
abhilashagupta
 
PPTX
Cookie and session
Aashish Ghale
 
PPT
Css Ppt
Hema Prasanth
 
PPT
Introduction to CSS
Amit Tyagi
 
PPTX
Cookies!
kellimccabe
 
PDF
Html / CSS Presentation
Shawn Calvert
 
Open Source and Open Data in the Age of the Cloud
Tim O'Reilly
 
ASP.NET 10 - Data Controls
Randy Connolly
 
cascading style sheet ppt
abhilashagupta
 
Cookie and session
Aashish Ghale
 
Css Ppt
Hema Prasanth
 
Introduction to CSS
Amit Tyagi
 
Cookies!
kellimccabe
 
Html / CSS Presentation
Shawn Calvert
 
Ad

Similar to How Cascading Style Sheets (CSS) Works (20)

PPT
Basic css
Gopinath Ambothi
 
PDF
Intro to HTML and CSS basics
Eliran Eliassy
 
ODP
Cascading Style Sheets - Part 01
Hatem Mahmoud
 
PPTX
Howcssworks 100207024009-phpapp01
Likitha47
 
PPTX
css v1 guru
GuruPada Das
 
PDF
Css from scratch
Ahmad Al-ammar
 
PDF
Web Development 4 (HTML & CSS)
ghayour abbas
 
PDF
Web Development 4
ghayour abbas
 
PPT
Chapter 4a cascade style sheet css
Tesfaye Yenealem
 
DOC
Css introduction
vishnu murthy
 
PPT
An Introduction to CSS
John Catterfeld
 
PPT
Basics Of Css And Some Common Mistakes
sanjay2211
 
PDF
1. Advanced Web Designing (12th IT) (1).pdf
AAFREEN SHAIKH
 
PPT
Introduction to HTML
Amit Tyagi
 
PPTX
(Fast) Introduction to HTML & CSS
Dave Kelly
 
DOC
Art of css
Raphael Wanjiku
 
PPTX
CSS_Dibbo
Sayanton Vhaduri
 
PDF
Pfnp slides
William Myers
 
Basic css
Gopinath Ambothi
 
Intro to HTML and CSS basics
Eliran Eliassy
 
Cascading Style Sheets - Part 01
Hatem Mahmoud
 
Howcssworks 100207024009-phpapp01
Likitha47
 
css v1 guru
GuruPada Das
 
Css from scratch
Ahmad Al-ammar
 
Web Development 4 (HTML & CSS)
ghayour abbas
 
Web Development 4
ghayour abbas
 
Chapter 4a cascade style sheet css
Tesfaye Yenealem
 
Css introduction
vishnu murthy
 
An Introduction to CSS
John Catterfeld
 
Basics Of Css And Some Common Mistakes
sanjay2211
 
1. Advanced Web Designing (12th IT) (1).pdf
AAFREEN SHAIKH
 
Introduction to HTML
Amit Tyagi
 
(Fast) Introduction to HTML & CSS
Dave Kelly
 
Art of css
Raphael Wanjiku
 
CSS_Dibbo
Sayanton Vhaduri
 
Pfnp slides
William Myers
 
Ad

Recently uploaded (20)

PDF
5 Things to Consider When Deploying AI in Your Enterprise
Safe Software
 
PDF
Bridging CAD, IBM TRIRIGA & GIS with FME: The Portland Public Schools Case
Safe Software
 
PDF
''Taming Explosive Growth: Building Resilience in a Hyper-Scaled Financial Pl...
Fwdays
 
PDF
Darley - FIRST Copenhagen Lightning Talk (2025-06-26) Epochalypse 2038 - Time...
treyka
 
DOCX
Daily Lesson Log MATATAG ICT TEchnology 8
LOIDAALMAZAN3
 
PPTX
MARTSIA: A Tool for Confidential Data Exchange via Public Blockchain - Pitch ...
Michele Kryston
 
PPTX
The birth and death of Stars - earth and life science
rizellemarieastrolo
 
PPTX
Mastering Authorization: Integrating Authentication and Authorization Data in...
Hitachi, Ltd. OSS Solution Center.
 
PDF
How to Comply With Saudi Arabia’s National Cybersecurity Regulations.pdf
Bluechip Advanced Technologies
 
PPTX
Enabling the Digital Artisan – keynote at ICOCI 2025
Alan Dix
 
PDF
Java 25 and Beyond - A Roadmap of Innovations
Ana-Maria Mihalceanu
 
PDF
My Journey from CAD to BIM: A True Underdog Story
Safe Software
 
PDF
GDG Cloud Southlake #44: Eyal Bukchin: Tightening the Kubernetes Feedback Loo...
James Anderson
 
PDF
LLM Search Readiness Audit - Dentsu x SEO Square - June 2025.pdf
Nick Samuel
 
PDF
Proactive Server and System Monitoring with FME: Using HTTP and System Caller...
Safe Software
 
PPTX
2025 HackRedCon Cyber Career Paths.pptx Scott Stanton
Scott Stanton
 
PDF
Kubernetes - Architecture & Components.pdf
geethak285
 
PDF
Hyderabad MuleSoft In-Person Meetup (June 21, 2025) Slides
Ravi Tamada
 
PDF
The Future of Product Management in AI ERA.pdf
Alyona Owens
 
PDF
Understanding AI Optimization AIO, LLMO, and GEO
CoDigital
 
5 Things to Consider When Deploying AI in Your Enterprise
Safe Software
 
Bridging CAD, IBM TRIRIGA & GIS with FME: The Portland Public Schools Case
Safe Software
 
''Taming Explosive Growth: Building Resilience in a Hyper-Scaled Financial Pl...
Fwdays
 
Darley - FIRST Copenhagen Lightning Talk (2025-06-26) Epochalypse 2038 - Time...
treyka
 
Daily Lesson Log MATATAG ICT TEchnology 8
LOIDAALMAZAN3
 
MARTSIA: A Tool for Confidential Data Exchange via Public Blockchain - Pitch ...
Michele Kryston
 
The birth and death of Stars - earth and life science
rizellemarieastrolo
 
Mastering Authorization: Integrating Authentication and Authorization Data in...
Hitachi, Ltd. OSS Solution Center.
 
How to Comply With Saudi Arabia’s National Cybersecurity Regulations.pdf
Bluechip Advanced Technologies
 
Enabling the Digital Artisan – keynote at ICOCI 2025
Alan Dix
 
Java 25 and Beyond - A Roadmap of Innovations
Ana-Maria Mihalceanu
 
My Journey from CAD to BIM: A True Underdog Story
Safe Software
 
GDG Cloud Southlake #44: Eyal Bukchin: Tightening the Kubernetes Feedback Loo...
James Anderson
 
LLM Search Readiness Audit - Dentsu x SEO Square - June 2025.pdf
Nick Samuel
 
Proactive Server and System Monitoring with FME: Using HTTP and System Caller...
Safe Software
 
2025 HackRedCon Cyber Career Paths.pptx Scott Stanton
Scott Stanton
 
Kubernetes - Architecture & Components.pdf
geethak285
 
Hyderabad MuleSoft In-Person Meetup (June 21, 2025) Slides
Ravi Tamada
 
The Future of Product Management in AI ERA.pdf
Alyona Owens
 
Understanding AI Optimization AIO, LLMO, and GEO
CoDigital
 

How Cascading Style Sheets (CSS) Works

  • 1. How CSS works By Amit Tyagi [email_address]
  • 2. What is CSS C ascading  S tyle  S heets Contains the rules for the presentation of HTML. + = HTML CSS Web Page CSS was introduced to keep the presentation information separate from HTML markup (content).
  • 3. Before CSS Initially Designers used presentation tags like (FONT, B, BR, TABLE etc.) and spacers GIFs to control the design of web pages.
  • 4. Any modification in the design of websites was a very difficult and boring task , as it evolves manually editing every HTML page.
  • 5. Providing support for multiple browsers was a difficult task.
  • 6. CSS – brief history Style sheets have existed in one form or another since the beginnings of SGML in the 1970s. In 1996, CSS level 1 Recommendation was published in December. CSS level2 was published as a W3C Recommendation on May 12, 1998 CSS level3 is still under development.
  • 7. Sources of Styles Author (developer) Styles Inline Styles - As inline attribute “style” inside HTML tags <div style=“font-weight: bold;” >I am bold</div> Embedded Styles - As embedded style tag with in HTML document. <html> <head> <title>Welcome to Vendio!</title> <style> .footer { width:90%; } </style> ------- </html> Linked Styles - Inside separate files with .css extension <link rel=&quot;stylesheet&quot; href=“external.css&quot; type=&quot;text/css&quot; />
  • 8. Sources of Styles(contd.) User Style sheets This file contains the user created styles . [firefox profile folder]/ chrome/userContent-example.css is the current user’s style sheet file for the firefox. Browser default style sheet This file contains default styles for all users of a browser [firefox folder]/res/html.css is the default style sheet file for the firefox.
  • 9. Cascade The CSS cascade assigns a weight to each style rule. When several rules apply, the one with the greatest weight takes precedence. Order of preference for various styles: Default browser style sheet ( weakest ) User style sheet Author style sheet Author embedded styles Author inline styles ( strongest )
  • 10. CSS Selectors ID based ( #) HTML CSS <div id =“content”> # content { Text width: 200px; </div> } ID selectors should be used with single elements.
  • 11. Class based selector Class (.) HTML CSS <div class =“big”> . content { Text width: 200px; </div> } <div> <span class =“big”>some text </span> </div> Class based styles can be used by multiple HTML elements.
  • 12. Tag based selectors Tag (Tag name) HTML CSS < div > DIV { Text width: 200px; </div> } < div > SPAN { < span >some text </span> font-size:130%; </div> } < span >some other text </span>
  • 13. Grouping Multiple selectors can be grouped in a single style declaration by using , . H1 , P , .main { font-weight:bold; }
  • 14. Descendant selectors Descendant selectors are used to select elements that are descendants ( not necessarily children ) of another element in the document tree. HTML CSS < div class=“abc” > DIV.abc P { <div> font-weight:bold; < P > } Hello there! </p> </div> </div>
  • 15. Child selectors A child selector is used to select an element that is a direct child of another element (parent). Child selectors will not select all descendants, only direct children. HTML CSS <div > DIV.abc > P { < div class=“abc” > font-weight:bold; < P > } Hello there! </p> </div> </div>
  • 16. Universal selectors Universal selectors are used to select any element. *  { color: blue; }
  • 17. Adjacent sibling selectors Adjacent sibling selectors will select the sibling immediately following an element. DIV.abc + P { font-weight: bold; } will work for <div> < div class=“abc”>Message</div> < P >Hello there!</p> </div>
  • 18. Attribute selectors Attribute selectors selects elements based upon the attributes present in the HTML Tags and their value. IMG [src=&quot;small.gif&quot;]  { border: 1px solid #000; } will work for <img src=“small.gif” />
  • 19. CSS Pseudo-classes selector:pseudo-class { property: value } :link :visited } Link (A tag) related pseudo classes :hover :active :after :before :first-child :focus :first-letter :first-line :lang
  • 20. CSS Values Words: text-align: center ;. Numerical values: Numerical values are usually followed by a unit type. font-size:12 px ; 12 is the numerical value and px is the unit type pixels. Absolute Values – in, pc, px, cm, mm, pt Relative Values – em, ex, % Color values: color :#336699 or color#369.
  • 21. Categories of CSS properties Positioning and layout handling related. Background related properties. Font and text related Links related. Lists related. Table related.
  • 23. The Display Property Block Level elements , such as DIVs, paragraphs, headings, and lists, sit one above another when displayed in the browser. HTML <body> <div id=“div1”></div> <div id=“div2”></div> <div id=“div3”></div> </body> CSS #div1 { width:300px;background:yellow;} #div1 { width:300px;background:blue;} #div1 { width:300px;background:orange;}
  • 24. Inline Elements Inline elements such as a, span, and img, sit side by side when they are displayed in the browser and only appear on a new line if there is insufficient room on the previous one. <div id=&quot;row1&quot; > <span class=&quot;norm&quot;>This is small text and </span> <span class=&quot;big&quot;>this is big</span> <span class=&quot;italicText&quot;> I am Italic</span> </div> .norm { color : red ; } .big { color : blue ; font-weight : bold ; } .italicText { color : green ; font-style : italic ; } #row1 { padding :10px; border : solid 1px #000; }
  • 25. Display property none inline block list-item run-in compact marker table inline-table inline-block table-row-group table-header-group table-footer-group table-row table-column-group table-column table-cell table-caption
  • 26. Visibility Visible : The element is visible (default). Hidden : The element is invisible (but still takes up space) .big { visibility : hidden ; }
  • 27. z-index The z-index property specifies the stack order of an element. An element with greater stack order is always in front of an element with a lower stack order. only works on positioned elements (position:absolute, position:relative, or position:fixed).
  • 28. Default page flow Always think of web page as 3D arrangement of different layers .
  • 29. Floating float : left , right , none ; A floated box is laid out according to the normal flow, then taken out of the flow and shifted to the left or right as far as possible. IMG { float : left ; }
  • 30. Floating multiple elements Floated boxes will move to the left or right until their outer edge touches the containing block edge or the outer edge of another float. <ul> <li>Home</li> <li>Products</li> <li>Services</li> <li>Contact Us</li> </ul> After applying LI { float:left; }
  • 31. Clearing Floats Clear:both ; Or <style type=&quot;text/css&quot;> .clearfix:after { content: &quot;.&quot;; display: block; height: 0; clear: both; visibility: hidden; } .clearfix {display: inline-block;} /* for IE/Mac */ </style> <!--[if IE]><style type=&quot;text/css&quot;> .clearfix { zoom: 1; display: block; } </style> <![endif]-->
  • 32. Positioning - static position: static ; (Default option) the element occurs in the normal flow (ignores any top, bottom, left, right, or z-index declarations)
  • 33. Positioning - relative position: relative ; Generates a relatively positioned element, positioned relative to its normal position , use bottom, right, top and left property to place element. Default flow of other elements don’t change.
  • 34. Positioning - absolute position: relative ; Generates an absolutely positioned element, positioned relative to the first parent element that has a position other than static (if none is found, relative to document’s BODY). use bottom, right, top and left property to place element
  • 35. Positioning - fixed position: relative ; Generates an absolutely positioned element, positioned relative to the browser window and don’t change even after page scroll . use bottom, right, top and left property to place element
  • 36. Inheritance Styles that relate to text and appearance are inherited by the descendant elements. Styles that relate to the appearance of boxes created by styling DIVs, paragraphs, and other elements, such as borders, padding, margins are not inherited .
  • 37.