SlideShare a Scribd company logo
1 of 77
© Yaron Kanza
HTML,CSS and JavaScript
By Shrey Jain (19BCS3541)
Agenda • HTML
• Style Sheets
• Style Properties
• Layout Properties
• Selector Types
• Inserting Style to a Page
• Inheritance and Cascading
• Java Script
A Markup Language for representing documents
• text (data)
• structure
• appearance
• functionality
Designed for writing Web pages
Traditionally rendered by Web browsers
• Nowadays, also by other applications (for example: AppStore app in iOS)
3
What is HTML?
Content presentation
• Structures, e.g., paragraphs, lists, tables, etc.
• Decorations, e.g., fonts, images, etc.
Declaration of meta information
• e.g., the page title, language, etc.
Linkage to other pages
• i.e., attaching links to components
Management of user input
• e.g., searching, making reservations, ordering products
Directions for browsers
• e.g., refresh, redirect, caching control, etc.
4
Capabilities of HTML
<html>
<head>
<title>An HTML Page</title>
</head>
<body>
<h1 id="hdr1">Hello World Wide Web!</h1>
</body>
</html>
Filename ends with .htm or .html
5
HTML Page Structure
HTML Page Structure
Basic HTML Syntax
(X)HTML contains text, separated by tags
Tags come in pairs: opening and closing tag
Tags can have attributes, which have values
<html>
<head><title>An HTML Page</title></head>
<body>
<h1 id="hdr1">Hello World Wide Web!</h1>
</body>
</html>
6
An HTML page is surrounded by the html tag
2 Basic parts:
• head: general information about the document (e.g., title – shown on
the browser bar)
• body: the content of the document
<html>
<head><title>An HTML Page</title></head>
<body>
<h1 id="hdr1">Hello World Wide Web!</h1>
</body>
</html>
Actually a
tree
structure is
created
7
Basic HTML Syntax – con’t
Basic HTML Syntax – cont.
Element and attr. names must be in lower case
• HTML allows any case combination, e.g., <Body></BODY>, which
conveniently helped distinguish tags from the body text
All tags must have corresponding closing tags
• Use <br/> as a shorthand for <br></br>
Elements should be properly nested
• e.g., <b>hello <em>world</b></em> is illegal!
Attribute values must be quoted
• e.g., <td rowspan="3"> and not <td rowspan=3>
8
XHTML Stricter Syntax
Document Type Definitions
It is good to specify which XHTML standard you are
using
Put a document type definition (DTD) at the first line of
your file (before the html tag)
For an example, see the next slide
9
XHTML - strict
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
<!DOCTYPE html PUBLIC
"-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
• XHTML - transitional (loose)
• XHTML - frameset (for using frames)
Transition
htmlxhtml: allows
some legacy
formatting outside
CSS
10
Document Type Definitions – con’t
Basic Structures
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01
Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title> Hello World Example </title> </head>
<body> Hello World </body>
</html>
11
Links
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01
Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title> Hello World Example </title> </head>
<body> <a href=“anotherExample.html”>Hello
World</a> </body>
</html>
12
DEMO
Mysite-index-simple
13
Agenda • HTML
• Style Sheets
• Style Properties
• Layout Properties
• Selector Types
• Inserting Style to a Page
• Inheritance and Cascading
• Java Script
What are Style Sheets
A style sheet is a mechanism that allows to specify how
HTML (/XHTML/XML) pages should look
The style is specified by style rules
The style rules appear either in the document or in
external files, called style sheets
15
Style Sheets
Usually, a file that ends with .css
For example:
• i.a.cnn.net/cnn/.element/ssi/css/1.1/main.css (CNN)
• http://www.mta.ac.il//_layouts/1037/styles/core.cs (MTA)
To attach a style sheet to an HTML file, add <link
rel="stylesheet" type="text/css" href="css-file"/>
You can link to
more than one css
file to the head
16
Style Sheets
A file that is used for storing information about the way
elements of HTML (or XML) should appear on the
browser
A style sheet increases the separation between content
and presentation
• Easier to generate large sites in which all the pages have the
same style
• It allows changing the look of many pages by changing a single
file
• May reduce network traffic
17
Without a style sheet
(i.e., with the default
style definitions)
Simple Example – without css
<html>
<head><title>A Joke</title></head>
<body>
<div><img src="tomato.gif" alt="joke"/></div>
<h1>A joke</h1>
<p>A mama tomato, a papa tomato and a baby tomato are walking
down the street. The baby tomato keeps falling behind so the papa
tomato goes back, steps on the baby tomato and says, ketchup ("Catch-
up!"). </p>
</body>
</html>
div defines a
division/section
in a document.
Using div you
group
elements.
19
Style File: joke.css
body {
background-image: url("bg.gif"); }
h1 {
background-color: green;
color: rgb(250, 200, 250); /* pink */
font-family: cursive; }
p {
background-color: yellow;
color: purple;
font-size: 200%;}
20
Simple Example
Simple Example - with css
<html>
<head><title>A Joke</title>
<link rel="stylesheet" type="text/css" href="joke.css"/>
</head>
<body>
<div><img src="tomato.gif" alt="joke"></div>
<h1>A joke</h1>
<p>A mama tomato, a papa tomato and a baby tomato are walking
down the street. The baby tomato keeps falling behind so the papa
tomato goes back, steps on the baby tomato and says, ketchup
("Catch-up!"). </p> </body>
</html>
21
Background: Style in Legacy HTML
In traditional HTML, every HTML tag which supported
changing its font/color/etc…, supported this using a
different syntax
Examples:
<body background=“bg.jpg” vlink =“green”>
<center>Hello</center>
<font size="3" color="red">Hey!</font>
<strike>line-through</strike>
<table border=“1px”>
22
Separates content from style
• Often require two kinds of skills; moreover, one is likely to change
independently from the other
Keeps HTML pages human-readable
Reduces download time (how?)
Allows to easily maintain a consistent appearance over a
whole Web site (why?)
A more flexible, unified way to specify style properties for
different HTML elements (tables, paragraphs, etc…)
23
Simple Example – without css
Simple Example – without css
Style Sheets provide new ways to accomplish tasks
which were already possible
• … but recall the advantages from the previous slide
Once style sheets were introduced, most of the
legacy features with equivalent functionality were
deprecated in HTML 4.01 and in Transitional
XHTML and were removed in Strict XHTML
24
The Transition to Style Sheets
Style Rules
A rule has the following form
selector {declaration block}
The selector determines when the rule is applied
For example, the following rule applies to text that is
inside a <p> tag
p {color: green; font-size: 1.5em; font-style: italic}
em is the current font-size
of the element
25
Properties that CSS Controls
Style properties
Layout properties
There are many properties and many possible values
• We will not cover all of them here
• Look in the Web !!!
26
Agenda • HTML
• Style Sheets
• Style Properties
• Layout Properties
• Selector Types
• Inserting Style to a Page
• Inheritance and Cascading
• Java Script
Our Examples
We use the following HTML example:
This is <span> our example </span> for css.
The <span> tag is used to group inline elements for
formatting with styles
• Extremely useful tag...
28
Font Properties
Font properties: family, size, weight, style,
variant, etc.
span {
font-family: courier;
font-size: 130%;
font-style: italic;
font-weight: bold}
29
Text Properties
Text properties: color, transform, decoration, …
span {
color: #00cc00;
text-decoration: line-through;
text-transform: uppercase}
30
Background Properties
Background properties: background-color, background-
image, …
span {background-color: #00ff00}
span {background-image: url('bg.gif');}
31
DEMO
Mysite-joke
32
Agenda • HTML
• Style Sheets
• Style Properties
• Layout Properties
• Selector Types
• Inserting Style to a Page
• Inheritance and Cascading
• Java Script
Page Layout
Each HTML element defines a layer (rectangular box)
that is placed in some location on the page
Layers are nested with correspondence to the nesting of
their elements
34
There are two type of elements:
Block elements: p, ol, table, div, h1, etc.
Inline elements: b, i, a, span, cite, etc.
Layers of block elements are separated from their adjacent
elements (i.e., a new line before and after), while inline
elements are not
You can turn a block into an inline and vice-versa (highly
useful for img elements, among others), using the display
property, e.g., h1 { display: inline }
35
Inline vs. Block Elements
Positioning Elements
Using CSS, you can define the position of an
element inside its parent layer
For that, use the properties position, left, right,
top and bottom
span {
position:relative;
left: 1cm;
top: 1cm;
color: #00cc00;} distance from left
distance from top
36
But 1cm left to what??
For that, we have the position property
Four position types are supported:
• static: the default position
• relative: relative to the static position
• absolute: relative to the parent layer coordinates
• fixed: relative to the window coordinates (remains at the same position
regardless of scrolling)
37
Position Types
span {
position:absolute;
left: 1cm;
top: 1cm;
color: #00cc00;}
span {
position:fixed;
left: 1cm;
top: 1cm;
color: #00cc00;}
38
Position Examples
Positions Examples
span {
position:static;
left: 1cm;
top: 1cm;
color: #00cc00;}
This is the
default
position type
39
Positions Examples – con’t
Layer properties
• margin-top (-bottom, -left, -right)
• padding-top (-bottom, -left, -right)
• border-width (-color, -style, … )
Text Layout
• direction, word-spacing, white-space, letter-spacing, text-align, text-
indent, …
A mama tomato, a papa
tomato and a baby tomato
are walking down the
street.
A mama tomato, a papa
tomato and a baby tomato
are walking down the
street.
Padding
margin
40
More Layout Properties
Length Units
CSS has several types of length units:
• em, ex: height of current fonts
• ex is the height of “x”, em is the distance between bottoms of two subsequent
lines
• px, in, cm, mm, pt, pc: international units
• %: ratio of parent’s respective dimension
A page should remain a proper layout when fonts and/or
windows are resized (usually by the user)
• Hence, do not assume anything about default sizes
41
Links
• CSS Layout Tutorials: http://learnlayout.com/
42
Agenda • HTML
• Style Sheets
• Style Properties
• Layout Properties
• Selector Types
• Inserting Style to a Page
• Inheritance and Cascading
• Java Script
Type Selectors
Class Selectors
ID Selectors
Attribute Selectors
Universal Selector
Child Selectors
Adjacent-Sibling Selectors
Descendant Selectors
Pseudo-Class Selectors
Pseudo-Element
Selectors
44
Several Kinds of Selectors
Type Selector
A type selector is the name of an element type
A type selector matches every instance of the
element type
li {color: red; font-size: 16px}
Matches:
<ol>
<li> An item </li>
<li class="reditem"> Another item </li>
</ol>
45
Universal Selector
The universal selector matches every element
The following rule means that all the text will
have a size of 40px
* {font-size: 40px }
46
Attribute Selector
p[title]
• matches p when its title attribute is set to any value
p[title=intro] or p[title="intro"] (the quotes are
optional)
• matches p when its title attribute is set to “intro”
p[class~=green]
• matches p when the class attribute value includes the word
“green”
47
Class Selector
A class selector is a selector of the form x.y
It matches xs that have the class attribute with
value y (i.e., it is a shorthand for x[class~=y])
li.reditem {color: red}
Matches:
<ol>
<li> An item </li>
<li class="reditem"> Another item </li>
</ol>
48
ID Selector
IDs are similar to classes, except that there can
only be one element with a given ID in a
document
• That is, an ID uniquely identifies an element
li#23 {color: red}
Matches:
<ol>
<li> An item </li>
<li id="23"> Another item </li>
</ol>
49
A descendant selector has the form S1 S2 where S1
and S2 are (possible complex) selectors
It matches all elements that
• match S2, and
• are descendants (nested in any level in) elements that match S1
To match only immediate descendants (children),
use a Child Selector S1 > S2
To match S2 immediately following S1, use an
Adjacent-Sibling Selector S1 + S2
50
Descendant/Child/Sibling Selector
Descendant/Child/Sibling Selector - Example
.head div>span em {color: blue}
What will this match?
Matches:
This is <em>not blue</em>.
<p>
This is <em> blue </em>
<span><i>and so is <em> this </em></i></span>.
</p>
p em {color: blue}
51
Pseudo-Classes
Pseudo class selectors are similar to class selectors,
but they match states rather than class values
• For example, a link can be in the states: visited, active, mouse-
over (“hover”), etc.
• Another example: a text-area can be focused
52
Pseudo-Classes - Examples of Rules
a:link {color: blue}
a:visited {color: purple}
a:hover {font-size: 1.5em}
a:active {color: red}
input[type=text]:focus {background-color: yellow}
when typing a text into a text
input box (meaningful with
other input types as well)
53
Pseudo-Elements
Pseudo element selectors select abstract elements which are
not specified as elements in the source HTML
• For example, to transform the first line of every p into uppercase, use:
P:first-line {text-transform: uppercase}
Why can’t this be faked by enclosing the first line with a span?
Example 2: p.article:first-letter {color:#ff0000}
54
Grouping Selectors
We can group several declarations by specifying several
selectors, separated by commas
For example, the following rule applies to all elements
that match either h1, p b, or h2[class=largehead]
p b, h1, h2.largehead {font-size: 120%}
55
Agenda • HTML
• Style Sheets
• Style Properties
• Layout Properties
• Selector Types
• Inserting Style to a Page
• Inheritance and Cascading
• Java Script
In an inline style, the declaration block is the value of the
attribute style of the element
Almost every tag can have the style attribute
• exceptional: base, head, html, meta, param,
script, style and title
<p style="color: green; font-size: 1.5em; font-style: italic">
This text will be shown in italic green and the size
will be 1.5 times the current font size
</p>
57
Inline Styles
Document-Level Style
<html> <head>
<style type="text/css">
body {color: red; background: skyblue;}
h1 { color: blue; }
</style>
</head>
<body>... </body>
</html>
58
Imported Style Sheets
The @import rule imports the style rules of
another style sheet
Usage: @import url(file.css)
Several import rules may appear at the
beginning of the style sheet
Import rules can appear in embedded style
sheets or in external style sheets
59
Imported Style Sheets
Why do we need
the import
command when
we have the
<link> tag?
@import url(general.css);
body { color: red; background:skyblue }
h1 { color: blue }
Using @import in a css file,
one can create style-
sheets which are based on
others…
60
Agenda • HTML
• Style Sheets
• Style Properties
• Layout Properties
• Selector Types
• Inserting Style to a Page
• Inheritance and Cascading
• Java Script
Inheritance of Properties
Consider a property of an element that does not match
any rule
For some properties (inherited properties), the
computed value of this property is inherited from the
parent of the element
For example, color, font and word-spacing are inherited
Yet border, margin and padding are not!
62
Inheritance of Properties - Example
Given the rules:
• body { font-size: 10pt }
• h1 { font-size: 120% }
What will be the font size of the <em> element?
<body>
<h1>A <em>large</em> heading</h1>
</body>
Computed
Value: 12pt
63
Cascading of Styles
CSS merges style rules from different places (inline,
document-level, linked and defaults)
Different places may have conflicting style rules
• conflicts may even arise in a single source
The process of merging (cascading) styles from different
places determines which style rules have higher
priority
64
Determining Property Values
Suppose that we would like to determine the value of
property p for element e
Choose all declarations that have a selector that
matches e and have the property p
“Sort” all declarations according to cascading order
(importance)
Apply the rule of the first declaration in the cascading
order
65
Cascading Order
The cascading order of declarations:
1. Primary sort: Importance of origin
2. Secondary sort: Specificity of selectors
3. Final sort: Order of appearance
66
Importance of Origin
There are two origins of rules: author and browser
(defaults / user customizations)
browser !important rules
author !important rules
author rules
browser rules
strongest
weakest
For example, you
can add stylesheets
to IE in the following
way:
Tools
internet options
Accessibility
User style sheet.
Of course you can
add !important
browser rules this
way as well…
67
is rule in style attribute?
number of ID attributes
number of attributes and pseudo-classes
number of element names
strongest
weakest
68
Specificity of Selectors
Specificity of Selectors - Example
Which is the most specific?
li {…}
#x34y {…}
ul ol li.red {…}
1
2
3
69
Agenda • HTML
• Style Sheets
• Style Properties
• Layout Properties
• Selector Types
• Inserting Style to a Page
• Inheritance and Cascading
• Java Script
Client-Side Programming
Certain parts of a Web application can be
executed locally, in the client
For example, some validity checks can be
applied to the user’s input locally
The user request is sent to the server only if the
input is valid
Java Script (not part of Java!) is an HTML-
embedded scripting language for client-side
programming
71
Java Script is a scripting language for generating
dynamic HTML pages in the browser
The script is written inside an HTML page and
the browser runs the script and displays an
ordinary HTML page
There is some interaction of the script with the
file system using cookies
Cookies are small files that store personal
information in the file system of the client
• For example, a cookie may store your user name and password
for accessing a particular site
72
Java Script
<html>
<head><title>JS Example</title></head> <body>
<h2>Before the script</h2>
<script type="text/javascript">
document.write('<h1>In the script</h1>')
</script>
<h2>After the script</h2>
</body></html>
73
Java Script
Java Script – Example #1
<html>
<head><title>JS Example</title></head><body>
<h2>Before the script</h2><h1>
<script type="text/javascript">
document.write(new Date().toLocaleString())
</script>
</h1><h2>After the script</h2>
</body></html>
74
Java Script – Example #1
Java Script – Example #2
<h2>Hello and
<i><script type="text/javascript">
hours = new Date().getHours();
if (hours < 10) { document.write("good morning") }
else {document.write("good day") }
</script></i>.
</h2>
75
Java Script – Example #2
Java Script – Example #3
DEMO
Mysite-index.html
76
Links
• http://www.w3schools.com/
• http://xhtml.co.il/he/
77

More Related Content

Similar to ppt.ppt

Intro to html, css & sass
Intro to html, css & sassIntro to html, css & sass
Intro to html, css & sassSean Wolfe
 
Beginners css tutorial for web designers
Beginners css tutorial for web designersBeginners css tutorial for web designers
Beginners css tutorial for web designersSingsys Pte Ltd
 
Cascading style sheets
Cascading style sheetsCascading style sheets
Cascading style sheetssmitha273566
 
WEB TECHNOLOGY Unit-2.pptx
WEB TECHNOLOGY Unit-2.pptxWEB TECHNOLOGY Unit-2.pptx
WEB TECHNOLOGY Unit-2.pptxkarthiksmart21
 
Web design-workflow
Web design-workflowWeb design-workflow
Web design-workflowPeter Kaizer
 
CSS tutorial chapter 1
CSS tutorial chapter 1CSS tutorial chapter 1
CSS tutorial chapter 1jeweltutin
 
Intro to HTML & CSS
Intro to HTML & CSSIntro to HTML & CSS
Intro to HTML & CSSSyed Sami
 
FFW Gabrovo PMG - HTML
FFW Gabrovo PMG - HTMLFFW Gabrovo PMG - HTML
FFW Gabrovo PMG - HTMLToni Kolev
 
Howcssworks 100207024009-phpapp01
Howcssworks 100207024009-phpapp01Howcssworks 100207024009-phpapp01
Howcssworks 100207024009-phpapp01Likitha47
 
Web technologies-course 02.pptx
Web technologies-course 02.pptxWeb technologies-course 02.pptx
Web technologies-course 02.pptxStefan Oprea
 
Css introduction
Css introductionCss introduction
Css introductionSridhar P
 
(Fast) Introduction to HTML & CSS
(Fast) Introduction to HTML & CSS (Fast) Introduction to HTML & CSS
(Fast) Introduction to HTML & CSS Dave Kelly
 
Cascading Style Sheets - CSS
Cascading Style Sheets - CSSCascading Style Sheets - CSS
Cascading Style Sheets - CSSSun Technlogies
 
1. Advanced Web Designing (12th IT) (1).pdf
1. Advanced Web Designing (12th IT) (1).pdf1. Advanced Web Designing (12th IT) (1).pdf
1. Advanced Web Designing (12th IT) (1).pdfAAFREEN SHAIKH
 

Similar to ppt.ppt (20)

Intro to html, css & sass
Intro to html, css & sassIntro to html, css & sass
Intro to html, css & sass
 
Beginners css tutorial for web designers
Beginners css tutorial for web designersBeginners css tutorial for web designers
Beginners css tutorial for web designers
 
CSS.pptx
CSS.pptxCSS.pptx
CSS.pptx
 
Cascading style sheets
Cascading style sheetsCascading style sheets
Cascading style sheets
 
CSS.pptx
CSS.pptxCSS.pptx
CSS.pptx
 
WEB TECHNOLOGY Unit-2.pptx
WEB TECHNOLOGY Unit-2.pptxWEB TECHNOLOGY Unit-2.pptx
WEB TECHNOLOGY Unit-2.pptx
 
Web design-workflow
Web design-workflowWeb design-workflow
Web design-workflow
 
CSS Part I
CSS Part ICSS Part I
CSS Part I
 
CSS tutorial chapter 1
CSS tutorial chapter 1CSS tutorial chapter 1
CSS tutorial chapter 1
 
CSS Basics part One
CSS Basics part OneCSS Basics part One
CSS Basics part One
 
HTML_CSS_JS Workshop
HTML_CSS_JS WorkshopHTML_CSS_JS Workshop
HTML_CSS_JS Workshop
 
Intro to HTML & CSS
Intro to HTML & CSSIntro to HTML & CSS
Intro to HTML & CSS
 
FFW Gabrovo PMG - HTML
FFW Gabrovo PMG - HTMLFFW Gabrovo PMG - HTML
FFW Gabrovo PMG - HTML
 
Howcssworks 100207024009-phpapp01
Howcssworks 100207024009-phpapp01Howcssworks 100207024009-phpapp01
Howcssworks 100207024009-phpapp01
 
Web technologies-course 02.pptx
Web technologies-course 02.pptxWeb technologies-course 02.pptx
Web technologies-course 02.pptx
 
Css introduction
Css introductionCss introduction
Css introduction
 
(Fast) Introduction to HTML & CSS
(Fast) Introduction to HTML & CSS (Fast) Introduction to HTML & CSS
(Fast) Introduction to HTML & CSS
 
Cascading Style Sheets - CSS
Cascading Style Sheets - CSSCascading Style Sheets - CSS
Cascading Style Sheets - CSS
 
Html and css
Html and cssHtml and css
Html and css
 
1. Advanced Web Designing (12th IT) (1).pdf
1. Advanced Web Designing (12th IT) (1).pdf1. Advanced Web Designing (12th IT) (1).pdf
1. Advanced Web Designing (12th IT) (1).pdf
 

Recently uploaded

Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxLoriGlavin3
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfMounikaPolabathina
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxLoriGlavin3
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersRaghuram Pandurangan
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 

Recently uploaded (20)

Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information Developers
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 

ppt.ppt

  • 1. © Yaron Kanza HTML,CSS and JavaScript By Shrey Jain (19BCS3541)
  • 2. Agenda • HTML • Style Sheets • Style Properties • Layout Properties • Selector Types • Inserting Style to a Page • Inheritance and Cascading • Java Script
  • 3. A Markup Language for representing documents • text (data) • structure • appearance • functionality Designed for writing Web pages Traditionally rendered by Web browsers • Nowadays, also by other applications (for example: AppStore app in iOS) 3 What is HTML?
  • 4. Content presentation • Structures, e.g., paragraphs, lists, tables, etc. • Decorations, e.g., fonts, images, etc. Declaration of meta information • e.g., the page title, language, etc. Linkage to other pages • i.e., attaching links to components Management of user input • e.g., searching, making reservations, ordering products Directions for browsers • e.g., refresh, redirect, caching control, etc. 4 Capabilities of HTML
  • 5. <html> <head> <title>An HTML Page</title> </head> <body> <h1 id="hdr1">Hello World Wide Web!</h1> </body> </html> Filename ends with .htm or .html 5 HTML Page Structure HTML Page Structure
  • 6. Basic HTML Syntax (X)HTML contains text, separated by tags Tags come in pairs: opening and closing tag Tags can have attributes, which have values <html> <head><title>An HTML Page</title></head> <body> <h1 id="hdr1">Hello World Wide Web!</h1> </body> </html> 6
  • 7. An HTML page is surrounded by the html tag 2 Basic parts: • head: general information about the document (e.g., title – shown on the browser bar) • body: the content of the document <html> <head><title>An HTML Page</title></head> <body> <h1 id="hdr1">Hello World Wide Web!</h1> </body> </html> Actually a tree structure is created 7 Basic HTML Syntax – con’t Basic HTML Syntax – cont.
  • 8. Element and attr. names must be in lower case • HTML allows any case combination, e.g., <Body></BODY>, which conveniently helped distinguish tags from the body text All tags must have corresponding closing tags • Use <br/> as a shorthand for <br></br> Elements should be properly nested • e.g., <b>hello <em>world</b></em> is illegal! Attribute values must be quoted • e.g., <td rowspan="3"> and not <td rowspan=3> 8 XHTML Stricter Syntax
  • 9. Document Type Definitions It is good to specify which XHTML standard you are using Put a document type definition (DTD) at the first line of your file (before the html tag) For an example, see the next slide 9
  • 10. XHTML - strict <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd"> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> • XHTML - transitional (loose) • XHTML - frameset (for using frames) Transition htmlxhtml: allows some legacy formatting outside CSS 10 Document Type Definitions – con’t
  • 11. Basic Structures <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <title> Hello World Example </title> </head> <body> Hello World </body> </html> 11
  • 12. Links <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <title> Hello World Example </title> </head> <body> <a href=“anotherExample.html”>Hello World</a> </body> </html> 12
  • 14. Agenda • HTML • Style Sheets • Style Properties • Layout Properties • Selector Types • Inserting Style to a Page • Inheritance and Cascading • Java Script
  • 15. What are Style Sheets A style sheet is a mechanism that allows to specify how HTML (/XHTML/XML) pages should look The style is specified by style rules The style rules appear either in the document or in external files, called style sheets 15
  • 16. Style Sheets Usually, a file that ends with .css For example: • i.a.cnn.net/cnn/.element/ssi/css/1.1/main.css (CNN) • http://www.mta.ac.il//_layouts/1037/styles/core.cs (MTA) To attach a style sheet to an HTML file, add <link rel="stylesheet" type="text/css" href="css-file"/> You can link to more than one css file to the head 16
  • 17. Style Sheets A file that is used for storing information about the way elements of HTML (or XML) should appear on the browser A style sheet increases the separation between content and presentation • Easier to generate large sites in which all the pages have the same style • It allows changing the look of many pages by changing a single file • May reduce network traffic 17
  • 18. Without a style sheet (i.e., with the default style definitions)
  • 19. Simple Example – without css <html> <head><title>A Joke</title></head> <body> <div><img src="tomato.gif" alt="joke"/></div> <h1>A joke</h1> <p>A mama tomato, a papa tomato and a baby tomato are walking down the street. The baby tomato keeps falling behind so the papa tomato goes back, steps on the baby tomato and says, ketchup ("Catch- up!"). </p> </body> </html> div defines a division/section in a document. Using div you group elements. 19
  • 20. Style File: joke.css body { background-image: url("bg.gif"); } h1 { background-color: green; color: rgb(250, 200, 250); /* pink */ font-family: cursive; } p { background-color: yellow; color: purple; font-size: 200%;} 20 Simple Example
  • 21. Simple Example - with css <html> <head><title>A Joke</title> <link rel="stylesheet" type="text/css" href="joke.css"/> </head> <body> <div><img src="tomato.gif" alt="joke"></div> <h1>A joke</h1> <p>A mama tomato, a papa tomato and a baby tomato are walking down the street. The baby tomato keeps falling behind so the papa tomato goes back, steps on the baby tomato and says, ketchup ("Catch-up!"). </p> </body> </html> 21
  • 22. Background: Style in Legacy HTML In traditional HTML, every HTML tag which supported changing its font/color/etc…, supported this using a different syntax Examples: <body background=“bg.jpg” vlink =“green”> <center>Hello</center> <font size="3" color="red">Hey!</font> <strike>line-through</strike> <table border=“1px”> 22
  • 23. Separates content from style • Often require two kinds of skills; moreover, one is likely to change independently from the other Keeps HTML pages human-readable Reduces download time (how?) Allows to easily maintain a consistent appearance over a whole Web site (why?) A more flexible, unified way to specify style properties for different HTML elements (tables, paragraphs, etc…) 23 Simple Example – without css Simple Example – without css
  • 24. Style Sheets provide new ways to accomplish tasks which were already possible • … but recall the advantages from the previous slide Once style sheets were introduced, most of the legacy features with equivalent functionality were deprecated in HTML 4.01 and in Transitional XHTML and were removed in Strict XHTML 24 The Transition to Style Sheets
  • 25. Style Rules A rule has the following form selector {declaration block} The selector determines when the rule is applied For example, the following rule applies to text that is inside a <p> tag p {color: green; font-size: 1.5em; font-style: italic} em is the current font-size of the element 25
  • 26. Properties that CSS Controls Style properties Layout properties There are many properties and many possible values • We will not cover all of them here • Look in the Web !!! 26
  • 27. Agenda • HTML • Style Sheets • Style Properties • Layout Properties • Selector Types • Inserting Style to a Page • Inheritance and Cascading • Java Script
  • 28. Our Examples We use the following HTML example: This is <span> our example </span> for css. The <span> tag is used to group inline elements for formatting with styles • Extremely useful tag... 28
  • 29. Font Properties Font properties: family, size, weight, style, variant, etc. span { font-family: courier; font-size: 130%; font-style: italic; font-weight: bold} 29
  • 30. Text Properties Text properties: color, transform, decoration, … span { color: #00cc00; text-decoration: line-through; text-transform: uppercase} 30
  • 31. Background Properties Background properties: background-color, background- image, … span {background-color: #00ff00} span {background-image: url('bg.gif');} 31
  • 33. Agenda • HTML • Style Sheets • Style Properties • Layout Properties • Selector Types • Inserting Style to a Page • Inheritance and Cascading • Java Script
  • 34. Page Layout Each HTML element defines a layer (rectangular box) that is placed in some location on the page Layers are nested with correspondence to the nesting of their elements 34
  • 35. There are two type of elements: Block elements: p, ol, table, div, h1, etc. Inline elements: b, i, a, span, cite, etc. Layers of block elements are separated from their adjacent elements (i.e., a new line before and after), while inline elements are not You can turn a block into an inline and vice-versa (highly useful for img elements, among others), using the display property, e.g., h1 { display: inline } 35 Inline vs. Block Elements
  • 36. Positioning Elements Using CSS, you can define the position of an element inside its parent layer For that, use the properties position, left, right, top and bottom span { position:relative; left: 1cm; top: 1cm; color: #00cc00;} distance from left distance from top 36
  • 37. But 1cm left to what?? For that, we have the position property Four position types are supported: • static: the default position • relative: relative to the static position • absolute: relative to the parent layer coordinates • fixed: relative to the window coordinates (remains at the same position regardless of scrolling) 37 Position Types
  • 38. span { position:absolute; left: 1cm; top: 1cm; color: #00cc00;} span { position:fixed; left: 1cm; top: 1cm; color: #00cc00;} 38 Position Examples Positions Examples
  • 39. span { position:static; left: 1cm; top: 1cm; color: #00cc00;} This is the default position type 39 Positions Examples – con’t
  • 40. Layer properties • margin-top (-bottom, -left, -right) • padding-top (-bottom, -left, -right) • border-width (-color, -style, … ) Text Layout • direction, word-spacing, white-space, letter-spacing, text-align, text- indent, … A mama tomato, a papa tomato and a baby tomato are walking down the street. A mama tomato, a papa tomato and a baby tomato are walking down the street. Padding margin 40 More Layout Properties
  • 41. Length Units CSS has several types of length units: • em, ex: height of current fonts • ex is the height of “x”, em is the distance between bottoms of two subsequent lines • px, in, cm, mm, pt, pc: international units • %: ratio of parent’s respective dimension A page should remain a proper layout when fonts and/or windows are resized (usually by the user) • Hence, do not assume anything about default sizes 41
  • 42. Links • CSS Layout Tutorials: http://learnlayout.com/ 42
  • 43. Agenda • HTML • Style Sheets • Style Properties • Layout Properties • Selector Types • Inserting Style to a Page • Inheritance and Cascading • Java Script
  • 44. Type Selectors Class Selectors ID Selectors Attribute Selectors Universal Selector Child Selectors Adjacent-Sibling Selectors Descendant Selectors Pseudo-Class Selectors Pseudo-Element Selectors 44 Several Kinds of Selectors
  • 45. Type Selector A type selector is the name of an element type A type selector matches every instance of the element type li {color: red; font-size: 16px} Matches: <ol> <li> An item </li> <li class="reditem"> Another item </li> </ol> 45
  • 46. Universal Selector The universal selector matches every element The following rule means that all the text will have a size of 40px * {font-size: 40px } 46
  • 47. Attribute Selector p[title] • matches p when its title attribute is set to any value p[title=intro] or p[title="intro"] (the quotes are optional) • matches p when its title attribute is set to “intro” p[class~=green] • matches p when the class attribute value includes the word “green” 47
  • 48. Class Selector A class selector is a selector of the form x.y It matches xs that have the class attribute with value y (i.e., it is a shorthand for x[class~=y]) li.reditem {color: red} Matches: <ol> <li> An item </li> <li class="reditem"> Another item </li> </ol> 48
  • 49. ID Selector IDs are similar to classes, except that there can only be one element with a given ID in a document • That is, an ID uniquely identifies an element li#23 {color: red} Matches: <ol> <li> An item </li> <li id="23"> Another item </li> </ol> 49
  • 50. A descendant selector has the form S1 S2 where S1 and S2 are (possible complex) selectors It matches all elements that • match S2, and • are descendants (nested in any level in) elements that match S1 To match only immediate descendants (children), use a Child Selector S1 > S2 To match S2 immediately following S1, use an Adjacent-Sibling Selector S1 + S2 50 Descendant/Child/Sibling Selector
  • 51. Descendant/Child/Sibling Selector - Example .head div>span em {color: blue} What will this match? Matches: This is <em>not blue</em>. <p> This is <em> blue </em> <span><i>and so is <em> this </em></i></span>. </p> p em {color: blue} 51
  • 52. Pseudo-Classes Pseudo class selectors are similar to class selectors, but they match states rather than class values • For example, a link can be in the states: visited, active, mouse- over (“hover”), etc. • Another example: a text-area can be focused 52
  • 53. Pseudo-Classes - Examples of Rules a:link {color: blue} a:visited {color: purple} a:hover {font-size: 1.5em} a:active {color: red} input[type=text]:focus {background-color: yellow} when typing a text into a text input box (meaningful with other input types as well) 53
  • 54. Pseudo-Elements Pseudo element selectors select abstract elements which are not specified as elements in the source HTML • For example, to transform the first line of every p into uppercase, use: P:first-line {text-transform: uppercase} Why can’t this be faked by enclosing the first line with a span? Example 2: p.article:first-letter {color:#ff0000} 54
  • 55. Grouping Selectors We can group several declarations by specifying several selectors, separated by commas For example, the following rule applies to all elements that match either h1, p b, or h2[class=largehead] p b, h1, h2.largehead {font-size: 120%} 55
  • 56. Agenda • HTML • Style Sheets • Style Properties • Layout Properties • Selector Types • Inserting Style to a Page • Inheritance and Cascading • Java Script
  • 57. In an inline style, the declaration block is the value of the attribute style of the element Almost every tag can have the style attribute • exceptional: base, head, html, meta, param, script, style and title <p style="color: green; font-size: 1.5em; font-style: italic"> This text will be shown in italic green and the size will be 1.5 times the current font size </p> 57 Inline Styles
  • 58. Document-Level Style <html> <head> <style type="text/css"> body {color: red; background: skyblue;} h1 { color: blue; } </style> </head> <body>... </body> </html> 58
  • 59. Imported Style Sheets The @import rule imports the style rules of another style sheet Usage: @import url(file.css) Several import rules may appear at the beginning of the style sheet Import rules can appear in embedded style sheets or in external style sheets 59
  • 60. Imported Style Sheets Why do we need the import command when we have the <link> tag? @import url(general.css); body { color: red; background:skyblue } h1 { color: blue } Using @import in a css file, one can create style- sheets which are based on others… 60
  • 61. Agenda • HTML • Style Sheets • Style Properties • Layout Properties • Selector Types • Inserting Style to a Page • Inheritance and Cascading • Java Script
  • 62. Inheritance of Properties Consider a property of an element that does not match any rule For some properties (inherited properties), the computed value of this property is inherited from the parent of the element For example, color, font and word-spacing are inherited Yet border, margin and padding are not! 62
  • 63. Inheritance of Properties - Example Given the rules: • body { font-size: 10pt } • h1 { font-size: 120% } What will be the font size of the <em> element? <body> <h1>A <em>large</em> heading</h1> </body> Computed Value: 12pt 63
  • 64. Cascading of Styles CSS merges style rules from different places (inline, document-level, linked and defaults) Different places may have conflicting style rules • conflicts may even arise in a single source The process of merging (cascading) styles from different places determines which style rules have higher priority 64
  • 65. Determining Property Values Suppose that we would like to determine the value of property p for element e Choose all declarations that have a selector that matches e and have the property p “Sort” all declarations according to cascading order (importance) Apply the rule of the first declaration in the cascading order 65
  • 66. Cascading Order The cascading order of declarations: 1. Primary sort: Importance of origin 2. Secondary sort: Specificity of selectors 3. Final sort: Order of appearance 66
  • 67. Importance of Origin There are two origins of rules: author and browser (defaults / user customizations) browser !important rules author !important rules author rules browser rules strongest weakest For example, you can add stylesheets to IE in the following way: Tools internet options Accessibility User style sheet. Of course you can add !important browser rules this way as well… 67
  • 68. is rule in style attribute? number of ID attributes number of attributes and pseudo-classes number of element names strongest weakest 68 Specificity of Selectors
  • 69. Specificity of Selectors - Example Which is the most specific? li {…} #x34y {…} ul ol li.red {…} 1 2 3 69
  • 70. Agenda • HTML • Style Sheets • Style Properties • Layout Properties • Selector Types • Inserting Style to a Page • Inheritance and Cascading • Java Script
  • 71. Client-Side Programming Certain parts of a Web application can be executed locally, in the client For example, some validity checks can be applied to the user’s input locally The user request is sent to the server only if the input is valid Java Script (not part of Java!) is an HTML- embedded scripting language for client-side programming 71
  • 72. Java Script is a scripting language for generating dynamic HTML pages in the browser The script is written inside an HTML page and the browser runs the script and displays an ordinary HTML page There is some interaction of the script with the file system using cookies Cookies are small files that store personal information in the file system of the client • For example, a cookie may store your user name and password for accessing a particular site 72 Java Script
  • 73. <html> <head><title>JS Example</title></head> <body> <h2>Before the script</h2> <script type="text/javascript"> document.write('<h1>In the script</h1>') </script> <h2>After the script</h2> </body></html> 73 Java Script Java Script – Example #1
  • 74. <html> <head><title>JS Example</title></head><body> <h2>Before the script</h2><h1> <script type="text/javascript"> document.write(new Date().toLocaleString()) </script> </h1><h2>After the script</h2> </body></html> 74 Java Script – Example #1 Java Script – Example #2
  • 75. <h2>Hello and <i><script type="text/javascript"> hours = new Date().getHours(); if (hours < 10) { document.write("good morning") } else {document.write("good day") } </script></i>. </h2> 75 Java Script – Example #2 Java Script – Example #3