cs428 web engineering lecture 06 introduction (cascading style sheet) 1

37
CS428 Web Engineering Lecture 06 Introduction (Cascading Style Sheet) 1

Upload: magnus-davidson

Post on 19-Dec-2015

216 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: CS428 Web Engineering Lecture 06 Introduction (Cascading Style Sheet) 1

CS428 Web EngineeringLecture 06

Introduction (Cascading Style Sheet)

Page 2: CS428 Web Engineering Lecture 06 Introduction (Cascading Style Sheet) 1

2

http://tinyurl.com/ogqlf6ahttp://sites.google.com/site/

bscsnotes4u/webeng

Page 3: CS428 Web Engineering Lecture 06 Introduction (Cascading Style Sheet) 1

CASCADING STYLE SHEET• This is the language to add presentation styling to HTML documents.

• CSS is a powerful and flexible way to add format to web page for presentation.

• Through CSS it is relatively easy to take simple page of text and images, formatted to present as fully professional webpage.

Page 4: CS428 Web Engineering Lecture 06 Introduction (Cascading Style Sheet) 1

• CSS has a simple syntax, consist of selectors, properties and values it together make a style rules.

• It gives developer find ways to control over how each element of page is formatted.

• CSS styles can apply on HTML documents through several different ways.– Create an external CSS file.– Embed CSS code in HTML document.

Page 5: CS428 Web Engineering Lecture 06 Introduction (Cascading Style Sheet) 1

CSS Syntax• A style rule is made of three parts:

• Selector: A selector is an HTML tag at which style will be applied. This could be any tag like <h1> or <table> etc.

• Property: A property is a type of attribute of HTML tag. Put simply, all the HTML attributes are converted into CSS properties. They could be color or border etc.

• Value: Values are assigned to properties. For example color property can have value either red or #F1F1F1 etc.

Page 6: CS428 Web Engineering Lecture 06 Introduction (Cascading Style Sheet) 1

• You can put CSS Style Rule Syntax as follows:

selector { property: value; }

• Example: You can define a table border as follows:

table {

border: 1px solid #C00FDF;

}

Page 7: CS428 Web Engineering Lecture 06 Introduction (Cascading Style Sheet) 1

Applying CSS• There are three ways through which you

apply CSS on your HTML doc.

Inline Internal External

Page 8: CS428 Web Engineering Lecture 06 Introduction (Cascading Style Sheet) 1

Inline CSS

• You can also embed your CSS code in HTML document.

• Example:

<p style=“font-family: monospace;”>

Page 9: CS428 Web Engineering Lecture 06 Introduction (Cascading Style Sheet) 1

INTERNAL CSS• <style></style> always placed between <head></head> tags.

• Example:<style>

p {line-height: 120%;

}</style>

Page 10: CS428 Web Engineering Lecture 06 Introduction (Cascading Style Sheet) 1

EXTERNAL CSS FILE• External CSS file will always place between

<HEAD></HEAD> tags.

• <link rel=“stylesheet” type=“text/css”

href=“main.css” />

Page 11: CS428 Web Engineering Lecture 06 Introduction (Cascading Style Sheet) 1

CSS Rules Overriding• Any inline style sheet takes highest priority. So it will

override any rule defined in <style>...</style> tags or rules defined in any external style sheet file.

• Any rule defined in <style>...</style> tags will override rules defined in any external style sheet file.

• Any rule defined in external style sheet file takes lowest priority and rules defined in this file will be applied only when above two rules are not applicable.

Page 12: CS428 Web Engineering Lecture 06 Introduction (Cascading Style Sheet) 1

EXAMPLE• <head>

<style>

div {

color: #9932CC;

}

</style>

</head>

<div>

<h1>Style Sheets</h1>

<p style="font-family: monospace; color: #0000FF;">

Lorem ipsum dolor sit amet, consectetur adipiscing

elit. Pellentesque sit amet lorem ligula. </p></div>

Page 13: CS428 Web Engineering Lecture 06 Introduction (Cascading Style Sheet) 1

EXAMPLE• <style>

a {

font-family: sans-serif;

}

</style>

<p style="font-family: monospace;">

Lorem ipsum dolor sit amet, consectetur adipiscing

elit. <a href=“p1.html”>Pellentesque</a> sit amet

lorem ligula. Nam pulvinar nunc ac magna

aliquam quis sodales dui elementum.

<a href=“p2.html”>Fusce a lacus leo.</a>

</p>

Page 14: CS428 Web Engineering Lecture 06 Introduction (Cascading Style Sheet) 1

SELECTORS• There are three types of selectors:

Tag selectors ID selectors Class selectors

Page 15: CS428 Web Engineering Lecture 06 Introduction (Cascading Style Sheet) 1

Example Tag Selector

<style>p {

font-family: sans-serif;

font-size: 15pt;

line-height: 150%;

}</style>

Tag selector

Page 16: CS428 Web Engineering Lecture 06 Introduction (Cascading Style Sheet) 1

Example Class Selector

<style>.foo {

font-family: sans-serif;

font-size: 15pt;

line-height: 150%;

}</style>

<p class=“foo”> Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque sit amet lorem ligula. Nam pulvinar nunc ac magna aliquam quis sodales dui elementum. Fusce a lacus leo. Maecenas ut dui eu quam condimentum sagittis. </p>

class selector

Page 17: CS428 Web Engineering Lecture 06 Introduction (Cascading Style Sheet) 1

Example Class Selector<style>

p.foo {

font-family: sans-serif;

font-size: 15pt;

line-height: 150%;

}</style>

<body>

<h1 class=“foo”></h1>

<p class=“foo”></p>

</body>

class selector

Page 18: CS428 Web Engineering Lecture 06 Introduction (Cascading Style Sheet) 1

Example ID Selector

<style> #p1 {

font-family: sans-serif;

font-size: 15pt;

line-height: 150%;

}</style>

<p id=“p1”> Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque sit amet lorem ligula. Nam pulvinar nunc ac magna aliquam quis sodales dui elementum. Fusce a lacus leo. Maecenas ut dui eu quam condimentum sagittis.

</p>

ID selector

Page 19: CS428 Web Engineering Lecture 06 Introduction (Cascading Style Sheet) 1

RULE for ID selector

• There is only be one element in a

document with a particular ID selector.

• ID selector can only be used once in

one element/tag.

Page 20: CS428 Web Engineering Lecture 06 Introduction (Cascading Style Sheet) 1

Descendant Selector

<style> p a {

font-family: sans-serif;

font-size: 15pt;

line-height: 150%;

}</style>

<p> Lorem ipsum dolor sit amet, consectetur adipiscing elit.. Nam pulvinar nunc ac magna aliquam quis sodales dui nunc sit elementum. <a href=“page1.html”>Donec eu nisi turpis,</a> sit amet rutrum leo.

</p>

Click <a href=“page2.html”>here</a>

Page 21: CS428 Web Engineering Lecture 06 Introduction (Cascading Style Sheet) 1

Grouping Selector

• you can apply style to many selectors.• <style>

h1, p, section {

color: #35c;

font-weight: bold;

letter-spacing: .4em;

} </style>

Page 22: CS428 Web Engineering Lecture 06 Introduction (Cascading Style Sheet) 1

Grouping Class & ID Selectors

• you can apply style to many selectors.

<style> #content, #footer, .supplement {

position: absolute;

left: 510px;

width: 200px;

} </style>

Page 23: CS428 Web Engineering Lecture 06 Introduction (Cascading Style Sheet) 1

PSEUDO SELECTOR

<style>

a:link {

color: #008080;

} a:hover {

color: #FF0000;

}</style>

Page 24: CS428 Web Engineering Lecture 06 Introduction (Cascading Style Sheet) 1

COMMENTS IN CSS

<style>

/*

p {

font-family: sans-serif;

font-size: 15pt;

}

*/

</style>

Page 25: CS428 Web Engineering Lecture 06 Introduction (Cascading Style Sheet) 1

CSS – Measurement Units

• CSS supports a number of measurements

including absolute units such as inches,

centimeters, points, and so on, as well as

relative measures such as percentages and

em units. You need these values while

specifying various measurements in your

Style rules.

• Example: border: 1px solid red;

Page 26: CS428 Web Engineering Lecture 06 Introduction (Cascading Style Sheet) 1

CSS UNITS of MEASURE (1/3)• # column1 {

width: 100%;

}

• p {

font-size: 12pt;

}

• p {

font-size: 1pc;

}

Page 27: CS428 Web Engineering Lecture 06 Introduction (Cascading Style Sheet) 1

CSS UNITS of MEASURE (2/3)• p {

margin-left: 2ex;

}

• p {

padding-right: .25in;

}

• p {

padding-right: 10mm;

}

Page 28: CS428 Web Engineering Lecture 06 Introduction (Cascading Style Sheet) 1

CSS UNITS of MEASURE (3/3)• p {

margin-left: 2em;

}

• div#main {

width: 600px;

}

Page 29: CS428 Web Engineering Lecture 06 Introduction (Cascading Style Sheet) 1

CSS UNITS - Sizes• Relative length measurements:

– px (pixels – size varies depending on screen resolution)– em (usually the height of a font’s uppercase M) – ex (usually the height of a font’s lowercase x)– Percentages (of the font’s default size)

• Absolute-length measurements (units that do not vary in size):– in (inches)– cm (centimeters)– mm (millimeters)– pt (points; 1 pt = 1/72 in)– pc (picas; 1 pc = 12 pt)

• Generally 1em = 12pt = 16px = 100%

29

Page 30: CS428 Web Engineering Lecture 06 Introduction (Cascading Style Sheet) 1

Unit Description Example

%

Defines a measurement as a percentage relative to another value, typically an enclosing element.

p { font-size: 16pt; line-height: 125%; }

cm Defines a measurement in centimeters. div {margin-bottom: 2cm;}

em

A relative measurement for height of a font in em spaces. Because an em unit is equivalent to the size of a given font, if you assign a font to 12pt, each “em” unit would be 12pt; thus 2em = 24pt.

p { letter spacing: 7em; }

ex

This value defines a measurement relative to a font’s x-height. The x-height is determined by the height of the font’s lowercase letter x.

p { font-size: 24pt; line-height: 3ex; }

in Defines a measurement in inches. p { word-spacing: .15in;}

mm Defines a measure in millimeters. p { word-spacing: 15mm;}

pcDefines a measurement in picas. A pica is equivalent to 12 points. Thus, there are 6 picas per inch.

p { font-size: 20pc;}

Page 31: CS428 Web Engineering Lecture 06 Introduction (Cascading Style Sheet) 1

Unit Description Example

ptDefines a measurement in points. A point is defined as 1/72nd of an inch.

body {font-size: 18pt;}

px Defines a measurement in screen pixels. p {padding: 25px;}

Page 32: CS428 Web Engineering Lecture 06 Introduction (Cascading Style Sheet) 1

CSS – Colors

• You can specify your color values in various

formats.

Format Syntax Example

Hex Code #RRGGBB p {color: #FF0000; }

Short Hex Code #RGB p {color: #6A7;}

RGB % rgb(rrr%, ggg%, bbb%)p { color: rgb(50%, 50%, 50%); }

RGB Absolute rgb(rrr, ggg, bbb)p { color: rgb(0, 0, 255); }

keyword aqua, black etc. p { color: teal;}

Page 33: CS428 Web Engineering Lecture 06 Introduction (Cascading Style Sheet) 1

CSS Box Model • A set of rules collectively known as CSS Box Model

describes the rectangular region occupied with

HTML elements.

• The main idea is that every element’s layout is

composed of: the actual element’s content area. a border around the element. a padding between the content and the border (inside the border) a margin between the border and other content (outside the border)

Page 34: CS428 Web Engineering Lecture 06 Introduction (Cascading Style Sheet) 1
Page 35: CS428 Web Engineering Lecture 06 Introduction (Cascading Style Sheet) 1

Document Flow - Block Elements

Page 36: CS428 Web Engineering Lecture 06 Introduction (Cascading Style Sheet) 1

Document Flow – Inline Elements

Page 37: CS428 Web Engineering Lecture 06 Introduction (Cascading Style Sheet) 1

Document Flow – Larger Example