What is the World Wide Web? - University of Pennsylvania

Download Report

Transcript What is the World Wide Web? - University of Pennsylvania

HTML
17-Jul-15
What is HTML?


HTML stands for Hypertext Markup Language
An HTML file is a text file containing markup tags


HTML files must have an htm or html file extension



The markup tags tell the Web browser how to display the page
.html is preferred
.htm is from very old operating systems that can only handle
“8+3” names (eight characters, dot, three characters)
HTML files can be created using a simple text editor

Formatted text, such as Microsoft Word’s .doc files, cannot be
used in HTML files
2
HTML Tags







HTML tags are used to mark up HTML elements
HTML tags are surrounded by angle brackets, < and >
Most HTML tags come in pairs, like <b> and </b>
The tags in a pair are the start tag and the end tag
The text between the start and end tags is the element content
The tags act as containers (they contain the element content),
and should be properly nested
HTML tags are not case sensitive; <b> means the same as <B>
3
Some simple tags





<h1> through <h6> : Headers, from largest to smallest
<b> Boldface
<i> Italic
<p> Paragraph
<pre> Preformatted text; preserve spaces and don’t
wrap lines
4
Structure of an HTML document

An HTML document is
contained within <html> tags



It consists of a <head> and a
<body>, in that order
The <head> typically contains
a <title>, which is used as the
title of the browser window
Almost all other content goes in
the <body>
•
Hence, a fairly minimal
HTML document looks like
this:
<html>
<head>
<title>My Title</title>
</head>
<body>
Hello, World!
</body>
</html>
5
HTML documents are trees
html
head
body
title
My Web Page
This will be the world’s best
web page, so please check
back soon!
(Under construction)
6
Whitespace




Whitespace is any non-printing characters (space, tab, newline,
and a few others)
HTML treats all whitespace as word separators, and
automatically flows text from one line to the next, depending on
the width of the page
To group text into paragraphs, with a blank line between
paragraphs, enclose each paragraph in <p> and </p> tags
To force HTML to use whitespace exactly as you wrote it,
enclose your text in <pre> and </pre> tags (“pre” stands for
“preformatted”)


<pre> also uses a monospace font
<pre> is handy for displaying programs
7
Lists




Two of the kinds of lists in
HTML are ordered, <ol> to
</ol>, and unordered, <ul>
to </ul>
Ordered lists typically use
numbers: 1, 2, 3, ...
Unordered lists typically use
bullets (•)
The elements of a list (either
kind) are surrounded by <li>
and </li>

Example:
The four main food
groups are:
<ul>
<li>Sugar</li>
<li>Chips</li>
<li>Caffeine</li>
<li>Chocolate</li>
</ul>
8
Attributes


Some markup tags may contain attributes of the form
name="value" to provide additional information
Example: To have an ordered list with letters A, B, C, ...
instead of numbers, use <ol type="A"> to </ol>





For lowercase letters, use type="a"
For Roman numerals, use type="I"
For lowercase Roman numerals, use type="i"
In this example, type is an attribute
JavaScript can most easily refer to HTML elements that use a
name or id attribute
9
Links

To link to another page, enclose the link text
in <a href="URL"> to </a>

Example: I'm taking <a href =
"http://www.cis.upenn.edu/~matuszek/cit597.html">Dr.
Dave's CIT597 course</a> this semester.


To link to another part of the same page,



Link text will automatically be underlined and
blue (or purple if recently visited)
Insert a named anchor: <a name="refs">References</a>
And link to it with: <a href="#refs">My references</a>
To link to a named anchor from a different page, use
<a href="PageURL#refs">My references</a>
10
Images


Images (pictures) are not part of an HTML page; the HTML
just tells where to find the image
To add an image to a page, use:
<img src="URL" alt="text description" width="150" height="100">
 The src attribute is required; the others are optional
 Attributes may be in any order
 The URL may refer to any .gif, .jpg, or .png file
 Other graphic formats are not recognized
 The alt attribute provides a text representation of the image if the
actual image is not downloaded
 The height and width attributes, if included, will improve the
display as the page is being downloaded


If height or width is incorrect, the image will be distorted
There is no </img> end tag, because <img> is not a container
11
Entities



Certain characters, such as <, have special meaning in HTML
To put these characters into HTML without any special meaning,
we have to use entities
Here are some of the most common entities:






&lt; represents <
&gt; represents >
&amp; represents &
&apos; represents '
&quot; represents "
&nbsp; represents a “nonbreaking space”--one that HTML does not treat
as whitespace
12
Forms


<form> is just another kind of HTML tag
HTML forms are used to create (rather primitive) GUIs on Web pages



Usually the purpose is to ask the user for information
The information is then sent back to the server
A form is an area that can contain form elements


The syntax is: <form parameters> ...form elements... </form>
Form elements include: buttons, checkboxes, text fields, radio buttons, drop-down
menus, etc




Other kinds of HTML tags can be mixed in with the form elements
A form usually contains a Submit button to send the information in he form
elements to the server
The form’s parameters tell JavaScript how to send the information to the server
(there are two different ways it could be sent)
Forms can be used for other things, such as a GUI for simple programs
13
Forms and JavaScript

The JavaScript language can be used to make pages that “do
something”



You can use JavaScript to write complete programs, but...
Usually you just use snippets of JavaScript here and there throughout your
Web page
JavaScript code snippets can be attached to various form elements




For example, you might want to check that a zipcode field contains a 5-digit
integer before you send that information to the server
Microsoft calls its version of JavaScript “active scripting”
HTML forms can be used without JavaScript, and JavaScript can
be used without HTML forms, but they work well together
JavaScript for HTML is covered in a separate lecture
14
The <form> tag


The <form arguments> ... </form> tag encloses form
elements (and probably other HTML as well)
The arguments to form tell what to do with the user input

action="url"




(default)
Form data is sent as a URL with ?form_data info appended to the end
Can be used only if data is all ASCII and not more than 100 characters
method="post"



Specifies where to send the data when the Submit button is clicked
method="get"

(required)
Form data is sent in the body of the URL request
Cannot be bookmarked by most browsers
target="target"



Tells where to open the page sent as a result of the request
target= _blank means open in a new window
target= _top means use the same window
15
The <input> tag

Most, but not all, form elements use the input tag, with a
type="..." argument to tell which kind of element it is


type can be text, checkbox, radio, password, hidden, submit, reset,
button, file, or image
Other common input tag arguments include:





name: the name of the element
value: the “value” of the element; used in different ways for different
values of type
readonly: the value cannot be changed
disabled: the user can’t do anything with this element
Other arguments are defined for the input tag but have meaning only for
certain values of type
16
Text input
A text field:
<input type="text" name="textfield" value="with an initial value">
A multi-line text field
<textarea name="textarea" cols="24" rows="2">Hello</textarea>
A password field:
<input type="password" name="textfield3" value="secret">
• Note that two of these use the input tag, but one uses textarea
17
Buttons



A submit button:
<input type="submit" name="Submit" value="Submit">
A reset button:
<input type="reset" name="Submit2" value="Reset">
A plain button:
<input type="button" name="Submit3" value="Push Me">

submit: send data
reset: restore all form elements to
their initial state
 button: take some action as
specified by JavaScript
• Note that the type is input, not “button”

18
Checkboxes

A checkbox:
<input type="checkbox" name="checkbox”
value="checkbox" checked>




type: "checkbox"
name: used to reference this form element from JavaScript
value: value to be returned when element is checked
Note that there is no text associated with the checkbox—
you have to supply text in the surrounding HTML
19
Radio buttons
Radio buttons:<br>
<input type="radio" name="radiobutton" value="myValue1">
male<br>
<input type="radio" name="radiobutton" value="myValue2" checked>
female

If two or more radio buttons have the same name, the user can
only select one of them at a time



This is how you make a radio button “group”
If you ask for the value of that name, you will get the value
specified for the selected radio button
As with checkboxes, radio buttons do not contain any text
20
Drop-down menu or list

A menu or list:
<select name="select">
<option value="red">red</option>
<option value="green">green</option>
<option value="BLUE">blue</option>
</select>

Additional arguments:


size: the number of items visible in the list (default is "1")
multiple: if set to "true", any number of items may be selected
(default is "false")
21
Hidden fields


<input type="hidden" name="hiddenField" value="nyah">
&lt;-- right there, don't you see it?
What good is this?



All input fields are sent back to the server, including hidden fields
This is a way to include information that the user doesn’t need to see (or
that you don’t want her to see)
The value of a hidden field can be set programmatically (by JavaScript)
before the form is submitted
22
A complete example
<html>
<head>
<title>Get Identity</title>
<meta http-equiv="Content-Type" content="text/html;
charset=iso-8859-1">
</head>
<body>
<p><b>Who are you?</b></p>
<form method="post" action="">
<p>Name:
<input type="text" name="textfield">
</p>
<p>Gender:
<input type="radio" name="gender" value="m">Male
<input type="radio" name="gender" value="f">Female</p>
</form>
</body>
</html>
23
The rest of HTML

HTML is a large markup language, with a lot of options




If you aren’t already familiar with it, you should study one or
more of the tutorials (there are many online)
Your browser’s View -> Source command is a great way to
see how things are done in HTML
HTML pages often contain JavaScript code
There is no such “thing” as DHTML (Dynamic HTML)

DHTML is simply HTML with several other technologies mixed in,
such as JavaScript
24
The End
25