XHTML and CSS Web Applications. Using HTML/XHTML XHTML is relatively simple. You do most of your...

Post on 04-Jan-2016

221 views 0 download

Transcript of XHTML and CSS Web Applications. Using HTML/XHTML XHTML is relatively simple. You do most of your...

XHTML and CSS

Web Applications

Using HTML/XHTML

• XHTML is relatively simple. You do most of your work with about twenty tags.

• XHTML is orderly and structured• Good references and tutorial sites are

available• Follow the standards and your work will be

much simpler, more consistent, and your results more reliable– Plus your co-workers will like you more

Device Independence

Your audience may view your site with many different devices and browser types.

The Browser

The browser is not print!

The Browser Is Not Print

• No fixed page size

• No fixed page length

• User can change the font size

• User can link to her/his own local style sheet

• Screen size can be tiny or huge

The Adjustable Document

The Birth of HTML

• Created by Tim Berners-Lee at CERN

• Open standard developed under supervision of the World Wide Web Consortium (www.w3.org)– Works to ensure the full potential of the

Web for shared, integrated functionality is realized

The History of HTML/XHTML

• 1992 – HTML first defined• 1994 – HTML 2.0• 1995 – Netscape specific non-standard HTML• 1996 – HTML 3.2, compromise version• 1997 – HTML 4.0, separates content from

presentation• 1998 – XML standard for writing Web languages• 2000 – XHTML 1.0, XML compliant HTML• 2002 – XHTML 2.0

Problems With HTML

• Competing versions of browsers introduced features beyond the standards

• Inconsistent implementations of display engines and scripting

• Content and presentation mixed together– Layout often done with tables– Each element had many presentation attributes,

resulting in laborious maintenance

• The “Slop Code Era”

XHTML

• XHTML is a version of HTML modified to conform to the XML standard

• Designed to separate content from presentation– Content in XHTML– Presentation controlled by Cascading Style Sheets (CSS)

• Extensible – Additional elements can be defined• XML Compatible – Other XML based languages can

be embedded in XHTML documents• Like a programming language

– Specific syntax to use– Validators help you get it right

XHTML Differences

• Case is significant• All elements must have begin tags and end

tags <p>Hello</p>• Empty elements contain their own end tag

<br />• Attribute values must be enclosed in

quotation marks• More specfics available at

http://www.w3.org/TR/xhtml1/#diffs

A Simple XHTML File

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html> <head> <title> My Home Page </title> </head> <body> <h1>My Home Page </h1> <p> Welcome to my home page </p> </body> </html>

Hierarchical Structure

Well formed xhtml forms a hierarchy

Content Types

Documents are made up of logical types of content.

Semantic Structure

Content of the same type usually is formatted to look the same.

Semantic Markup

HTML markup is based on logical content types

Hierarchy

The resulting hierarchy

The DOCTYPE Statement

• Declares the specific version of HTML or XHTML being used on the page

• Used by the browser to decide how to process the page

• Three types– Transitional - Forgiving– Strict – Requires adherence to standards– Frameset – Use if page has frames

• Always first in file

Strict DOCTYPE

• Enter exactly as below

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN“

"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

• Using Strict encourages standards based coding– Validators will flag logical errors in your methods

– Your CSS will work better and more predictably

Elements

• Consist of three parts– Begin tag, which can contain attributes– Contents– End tag

• Example:

<p id=“intro”>Welcome</p>• W3schools specifications for <p>

http://www.w3schools.com/tags/tag_p.asp

Attributes

• Always only used in the element begin tag• Three types

– Optional attributes: Varies with element type– Standard attributes: id, class, title, style, dir, lang,

xml:lang – Event attributes: onclick, ondblclick,

onmousedown, onmouseup, onmouseover, onmousemove, onmouseout, onkeypress, onkeydown, onkeyup

• Used in scripting

Empty Elements

• Some elements have no content and therefore also have no end tag– <img src=“photo.jpg” />– <br />– <hr />– <link rel="stylesheet" type="text/css"

href=“main.css" />

• In XHTML, which requires end tags on all elements, a single tag represents both the begin and end tag

<h1>, <h2>, <h3>, etc.

• Headings on the page

• Represent the main topic, subtopics, subsubtopics, etc. of the page

• Important to use they in a logical manner, which greatly helps assistive technology like voice browsers present the page content intelligibly

<p>

• Paragraph

• Important for presentation control to put text in an element. When in doubt, put text in a paragraph

• Blockquotes (<blockquote>) except they have wider left and right margins

Lists

• Unordered lists (bulleted lists) <ul> <li>One</li> <li>Two</li> </ul>• Ordered lists (numbered lists) <ol> <li>One</li> <li>Two</li> </ol>

Text Markup

• Bolding– <b>text</b>– <strong>text</strong>

• Italics– <i>text</i>– <em>text</em>

• Other– <sub>text</sub> subscript– <sup>text</sup> superscript– <del>text</del> deleted text

Tables

<table border cellspacing="5" cellpadding="10"> <caption>People on the team</caption> <tr> <th>Name</th> <th>Position</th> </tr> <tr> <td>Mary</td> <td>Analyst</td> </tr> <tr> <td>John</td> <td>Technician</td> </tr> </table>

Graphics

• Graphics are placed by using an img element

• The alt attribute provides alternative text describing the graphic in case the graphic itself cannot be shown or the user cannot see the graphic

<img src="picture.gif" alt="Suzzallo">

Anchors

• Anchors can link your page to any file on the Web

<a href="http://www.abc.com/"> abcde</a>

Divs

• Divs enclose a set of elements

<div style=“text-align: center;”> <h2> News</h2> <p><a href=“budget.html”>Budget</a></p> <p><a href=“invest.html”>Investment</a></p></div>

Spans

• Spans enclose objects (text, graphics) within an element

<p>Call me Ishmael. Some years ago — <span style=“font-style: italic;”>never mind how long precisely</span> — having little or no money in my purse, and nothing particular to interest me on shore,

Cascading Style Sheets

• Are used to control how elements are presented in the Web page

• Use a different syntax that HTML/XHTML• Work with the common visual browsers

(Internet Explorer, FireFox, Opera)• Used properly, can great simplify visual

design, site management and content maintenance

A Style

Selector  Property Value 

p { font-family: times; }

• Note the punctuation: The property is followed by a colon (:) and the value is followed by a semicolon(;)

Using CSS

Styles can be set in a stylesheet, in a style element in the head or in a style attribute

Selectors

• Simple selectorsp { color: blue }h1, h2, h3, h4 { font-style: italic; }

• Contextual selectorsul li { font-weight: bold; }#main img { border: solid black 5px; }p.intro { font-family: verdana, sans-serif;}

The Box Model

Each element has padding, border, and margin

Vertical Margins

The larger of the two vertical margins will determine the distance between elements

Visual Formatting Model

Pages are built as a series of blocks stacked from the top down

Controlling Layout

• Styles can control size and placement of elements

• Example: #nav { width: 12em; float: left; }#news { width: 12em; float: right; }#main { margin: 1em 13em 1em 13em;

Nav Div Float Left

Nav Div Float Right

Nav Across Top

Items in the Nav bar are anchors within a div

HTML-Kit

HTML-Kit (Windows) is free editor that makes it easy to make standards compliant XHTML

HTML-Kit Has Tidy

Press F9 and your XHTML is validated and tidied for easy reading

Resources• HTML-Kit editor – http://chami.com/• Amaya editor – http://www.w3c.org/Amaya• W3schools XHTML and CSS tutorials –

http://www.w3schools.com/• Web Head Start tutorials – http://www.webheadstart.org/• CSS Validator - http://jigsaw.w3.org/css-validator/• Dave Raggett XHTML and CSS tutorials -

http://www.w3.org/MarkUp/Guide/Overview.html• Web Accessibility in Mind (WebAIM) - http://www.webaim.org/• Color contrast analyzer -

http://www.visionaustralia.org.au/info.aspx?page=628• Stylin’ With CSS, A Designer’s Guide, Second Edition by

Charles Wyke-Smith