Web Engineering: Muhammad Kamran
Web Engineering: Muhammad Kamran
Muhammad Kamran
Lecture 2
HTML Basics
HTML, Text, Images, Tables, Forms
Table of Contents
1. Introduction to HTML
How the Web Works?
What is a Web Page?
My First HTML Page
Basic Tags: Hyperlinks, Images, Formatting
Headings and Paragraphs
2. HTML in Details
The <!DOCTYPE> Declaration
The <head> Section: Title, Meta, Script, Style
3
Table of Contents (2)
The <body> Section
Text Styling and Formatting Tags
Hyperlinks: <a> Tag
Hyperlinks and Sections
Images: <img> tag
Lists: <ol> and <ul> Tag
HTML Special Characters
3. The <div> and <span> Tags
4
How the Web Works?
WWW use classical client / server architecture
HTTP is text-based request-response protocol
HTTP
Page request
HTTP
Server response
9
First HTML Page: Tags
<html>
Opening tag
<head>
<title>My First HTML Page</title>
</head>
<body> Closing tag
This is some text that will
appear on the web page.
</body>
</html>
10
First HTML Page: Header
HTML header
<html>
<head>
<title>My First HTML Page</title>
</head>
<body>
This is some text that will
appear on the web page.
</body>
</html>
11
First HTML Page: Body
<html>
<head>
<title>My First HTML Page</title>
</head>
<body>
This is some text that will
appear on the web page.
</body>
</html>
HTML body
12
Some Simple Tags
Hyperlink Tags
<a href="http://www.telerik.com/"
title="Telerik">Link to Telerik Web site</a>
Image Tags
Formatting tags
15
Some HTML Tags
Live Demo
Tags Attributes
Tags could have attributes
Attributes specify their properties and behavior
Example: Attribute alt with value "logo"
<img src="logo.gif" alt="logo" />
Few attributes that apply to every element:
id, style, class, title
The id is unique in the document
Content of title attribute is displayed as hint
when element is hovered with mouse
Some elements have obligatory attributes
17
Headings and Paragraphs
Heading Tags
<h1>Heading 1</h1>
<h2>Sub heading 2</h2>
<h3>Sub heading 3</h3>
Paragraph Tags
<div align="center"
style="background:skyblue">
This is a div</div>
</body>
</html>
19
Headings and Paragraphs –
Example (2)
headings.html
<html>
<head><title>Headings and
paragraphs</title></head>
<body>
<h1>Heading 1</h1>
<h2>Sub heading 2</h2>
<h3>Sub heading 3</h3>
<div align="center"
style="background:skyblue">
This is a div</div>
</body>
</html>
20
Headings and Paragraphs
Live Demo
Introduction to HTML
HTML Document Structure in Depth
The <!DOCTYPE> Declaration
At their beginning HTML documents must have a
document type declaration
It tells the Web browsers how to handle the HTML
data
Possible versions: HTML 2.0, HTML 3.2, HTML 4.01,
XHTML 1.0, XHTML 1.1, …
Example:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
24
HTML vs. XHTML
XHTML is more strict then HTML
All tags must be properly nested (HTML allows
<b><i>text</b></i>)
Tags and attribute names must be in lowercase
Attribute values must be in " " (HTML allows ' ')
All tags must be closed (<br/>, <img/>) while
HTML allows <br> and <img>
XHTML allows only one root <html> element
(HTML allows more than one)
25
XHTML vs. HTML (2)
Many element attributes
are deprecated in
XHTML, most are moved to CSS
Attribute minimization is forbidden, e.g.
<input type="checkbox" checked>
26
HTML Structure
HTML is comprised of elements called “tags”
Begins with <html> and ends with </html>
When writing XHTML, must define a namespace
<html xmlns="http://www.w3.org/1999/xhtml">
30
<head> Section: <script>
The <script> </script> tag is used to
embed scripts into an HTML document
Script are executed in the client's Web browser
Scripts can live in the <head> and in the <body>
sections
Supported client-side scripting languages:
JavaScript (it is not Java!)
VBScript
JScript
31
The <script> Tag – Example
<html> scripts-example.html
<head>
<title>JavaScript Example</title>
<script type="text/javascript">
function sayHello() {
document.write(
"<p><b>Hello World!<\/b>");
}
</script>
</head>
<body>
<script type=
"text/javascript">
sayHello();
</script>
</body>
</html>
32
Using Scripts
Live Demo
<head> Section: <style>
The <style> </style> tag embeds formatting
information (CSS styles) into a HTML page
<html> style-example.html
<head>
<style type="text/css">
p { font-size: 12pt; line-height: 12pt }
p:first-letter { font-size: 200%; float: left }
span { text-transform: uppercase }
</style>
</head>
<body>
<p>Styles demo.</p>
<span>Test uppercase</span>.
</body>
</html>
34
Embedding CSS Styles
Live Demo
Comments: <!-- --> Tag
Comments can exist anywhere between the
<html></html> tags
Comments start with <!-- and end with -->
36
<body> Section: Introduction
The <body> section describes the viewable
portion of the page
Starts after the <head> </head> section
Begins with <body> and ends with </body>
<html>
<head><title>Test page</title></head>
<body>
This is the Web page body!
</body>
</html>
37
<body> Section: Attributes
The <body> tag has the following attributes:
background Background image file ="URL"
bgcolor Background color ="color"
text Default text color ="color"
link Hyperlink color ="color"
vlink Visited hyperlink color ="color"
Example:
<body background="texture.gif" text="#238E23">
39
Text Formatting
Text formatting tags modify the text between
the opening tag and the closing tag
Ex. <b>Hello</b> makes “Hello” bold
<b></b> bold
<i></i> italicized
<u></u> underlined
<sup></sup> Samplesuperscript
<sub></sub> Samplesubscript
<strong></strong> strong
<em></em> emphasized
<pre></pre> Preformatted text
<blockquote></blockquote> Quoted text block
<del></del> Deleted text – strike through
40
Text Formatting – Example
text-formatting.html
<!DOCTYPE html PUBLIC
"-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<title>Svetlin Nakov</title>
</head>
<body bgcolor="black" text="white" link="red" vlink="blue">
<h1>Notice</h1>
<p>This is a <em>sample</em> Web page.</p>
<p><pre>Next paragraph:
preformatted.</pre></p>
<h2>More Info</h2>
<p>Specifically, we’re using XHMTL 1.0 transitional.<br>
Next line.</p>
</body>
</html>
41
Text Formatting – Example (2)
text-formatting.html
<!DOCTYPE html PUBLIC
"-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<title>Svetlin Nakov</title>
</head>
<body bgcolor="black" text="white" link="red" vlink="blue">
<h1>Notice</h1>
<p>This is a <em>sample</em> Web page.</p>
<p><pre>Next paragraph:
preformatted.</pre></p>
<h2>More Info</h2>
<p>Specifically, we’re using XHMTL 1.0 transitional.<br>
Next line.</p>
</body>
</html>
42
Text Formatting
Live Demo
Hyperlinks: <a> Tag
Link to a document calledform.html on the
same server in the same directory:
<a href="form.html">Fill Our Form</a>
<a href="mailto:[email protected]?subject=Bug+Report">
Please report bugs here (by e-mail only)</a>
45
Hyperlinks: <a> Tag (3)
Link to a document called apply-now.html
On the same server, in same directory
Using an image as a link button:
<a href="apply-now.html"><img
src="apply-now-button.jpg" /></a>
47
Hyperlinks – Example
hyperlinks.html
<a href="form.html">Fill Our Form</a> <br/>
<a href="../parent.html">Parent</a> <br/>
<a href="stuff/cat.html">Catalog</a> <br/>
<a href="http://www.devbg.org" target="_blank">BASD</a>
<br/>
<a href="mailto:[email protected]?subject=Bug
Report">Please report bugs here (by e-mail only)</a>
<br/>
<a href="apply-now.html"><img src="apply-now-button.jpg"
border="0"/></a> <br/>
<a href="../english/index.html">Switch to English
version</a> <br/>
48
Hyperlinks – Example (2)
hyperlinks.html
<a href="form.html">Fill Our Form</a> <br/>
<a href="../parent.html">Parent</a> <br/>
<a href="stuff/cat.html">Catalog</a> <br/>
<a href="http://www.devbg.org" target="_blank">BASD</a>
<br/>
<a href="mailto:[email protected]?subject=Bug
Report">Please report bugs here (by e-mail only)</a>
<br/>
<a href="apply-now.html"><img src="apply-now-button.jpg"
border="0"/></a> <br/>
<a href="../english/index.html">Switch to English
version</a> <br/>
49
Hyperlinks
Live Demo
Links to the Same Document –
Example
links-to-same-document.html
<h1>Table of Contents</h1>
<p><a href="#section1">Introduction</a><br/>
<a href="#section2">Some background</A><br/>
<a href="#section2.1">Project History</a><br/>
...the rest of the table of contents...
<!-- The document text follows here -->
<h2><a name="section1">Introduction</a></h2>
... Section 1 follows here ...
<h2><a name="section2">Some background</a></h2>
... Section 2 follows here ...
<h3><a name="section2.1">Project History</a></h3>
... Section 2.1 follows here ...
51
Links to the Same Document –
Example (2)
links-to-same-document.html
<h1>Table of Contents</h1>
<p><a href="#section1">Introduction</a><br/>
<a href="#section2">Some background</A><br/>
<a href="#section2.1">Project History</a><br/>
...the rest of the table of contents...
<!-- The document text follows here -->
<h2><a name="section1">Introduction</a></h2>
... Section 1 follows here ...
<h2><a name="section2">Some background</a></h2>
... Section 2 follows here ...
<h3><a name="section2.1">Project History</a></h3>
... Section 2.1 follows here ...
52
Links to the Same Document
Live Demo
Images: <img> tag
Inserting an image with <img> tag:
<img src="/img/basd-logo.png">
Image attributes:
Example:
Questions?
http://academy.telerik.com