Web 1 html5 - NOVA Student Web

advertisement
Web Design Intro
Instructor: William Pegram
bill@billpegram.com
revised 1/29/2016
Your login: directory\Your NovaConnect ID
Password (default is your birthday): mmddyy
Copy whole CD to your flash drive or desktop
NVCC IT HelpDesk: 703 426-4141 (can reset
your password)
Class Schedule
1.
2.
3.
4.
Basic page creation, validation,
uploading
Format with styles, lists, use color
Links, Images, Video
Tables, Testing, Your Projects
2
Get the most from class



Software discounts @ NVCC Bookstore,
IT section
Practice at home
Study great sites


Design: how sites look
Navigation: how users find things
3
Under the Hood of
a Web Page
DTD – describes the markup language syntax
HTML element– contains the web page document
Head element – contains the head section
The head section contains information that describes the
web page document
Title element– Text displays in title bar of window
Meta element – describes the character encoding
Body element – contains the body section
The body section contains the text and elements that
display in the browser viewport.
4
Your First HTML5 Web Page
<!DOCTYPE html>
<html lang="en">
<head>
<title>Page Title Goes Here</title>
<meta charset="utf-80">
</head>
<body>
... body text and more HTML tags go here ...
</body>
</html>
5
The Paragraph Element
<p> tag

Paragraph element
<p> …paragraph goes here… </p>


Groups sentences and sections of text
together.
Produces empty space above and below the
paragraph
6
The Heading Element
<h1>Heading Level 1</h1>
<h2>Heading Level 2</h2>
<h3>Heading Level 3</h3>
<h4>Heading Level 4</h4>
<h5>Heading Level 5</h5>
<h6>Heading Level 6</h6>
7
The Line Break Element
<br> tag

Line Break element

This is a stand-alone tag or one-sided tag,
called a void element in HTML5
…text goes here <br>
This starts on a new line….

Causes the next element or text to display on
a new line
8
The Horizontal Rule Element
<hr> tag

Horizontal Rule element

Also a void element
<hr>


Configures a horizontal line on the page
In HTML5, it should be used to indicate a
thematic break at the paragraph level
(this is a new meaning to a tag that
existed in previous versions of HTML)
9
The Blockquote Element
<blockquote>

Blockquote element


Indents a block of text for special emphasis
Semantically correct use is to use it only when
displaying large blocks of quoted text within a
web page
<blockquote>
…text goes here…
</blockquote>
10
Phrase Elements

Indicate the context and meaning of the text
Display inline with the text

Common Phrase Elements





<b></b>
Text is displayed in bold font, but doesn’t have greater
importance than rest of text
<strong></strong>
Text has strong importance and is displayed in bold
<i></i>
Text is displayed in italic font
<em></em>
Text has emphasis (i.e. text would have a different inflection if
read out loud) and is displayed in italic font
11
Proper Nesting – close out tags
in the reverse order of how you
open them
<p><i>Call for a free quote for your web development needs:
<strong>888.555.5555 </strong></i></p>
BROWSER DISPLAY:
Call for a free quote for your web
development needs: 888.555.5555
12
HTML List Basics



Unordered List
Ordered List
Description List (XHTML Definition List)
13


Unordered List
Displays information with bullet points
Unordered List Element
<ul>
Contains the unordered list
The type attribute, which was used to describe what sort of
bullet would appear, is not supported in HTML5; use the
CSS list-style property instead

List Item Element
<li>
Contains an item in the list
14
Unordered List Example
<h1>My Favorite Colors</h1>
<ul>
<li>Blue</li>
<li>Teal</li>
<li>Red</li>
</ul>
15
Ordered List


Conveys information in an ordered fashion
Ordered List Element
<ol>
Contains the ordered list



The type attribute determines numbering scheme of list
default is numerals
List Item Element
<li>
Contains an item in the list
16
Ordered List Example
<ol>
<li>Apply to school</li>
<li>Register for course</li>
<li>Pay tuition</li>
<li>Attend course</li>
</ol>
17

Description
List- not often used
Formerly called a definition list in XHTML and HTML 4.0
Uses:




Display a list of terms and descriptions
Display a list of FAQ and answers
The Description List element
<dl> tag
Contains the definition list

The dt Element
<dt> tag
Contains a term or name

The dd Element
<dd> tag
Contains a definition or description
Indents the text
18
Description List Example
<dl>
<dt>IP</dt>
<dd>Internet Protocol</dd>
<dt>TCP</dt>
<dd>Transmission Control Protocol</dd>
</dl>
19
Special Entity Characters

Display special characters such as quotes,
copyright symbol, etc. - use because item isn't
on keyboard or because character is part of
HTML
Character
©
<
>
&
Code
©
<
>
&
 
20
The div element
<div>

Purpose:



Configure a specially formatted division or area of
a web page
Block display with empty space above and
below the div
Can contain other block display and inline
display elements
21
HTML5 Structural Elements

Header Element
<header></header>
Contains the web page
document’s headings

Nav Element
<nav></nav>
Contains web page
document’s main navigation

Footer Element
<footer></footer>
Contains the web page
document’s footer
22
HTML5 Structural
Elements
Example:
<body>
<header> document headings go here </header>
<nav> main navigation goes here </nav>
<div> main content goes here </div>
<footer> document footer information goes here </footer>
</body>
23
Writing Valid HTML

Check your code for syntax errors
 Benefit:


W3C HTML Validation Tool


Valid code 
more consistent browser display
http://validator.w3.org
Additional HTML5 Validation Tool

http://html5.validator.nu
24
Reminders



Filenames and foldernames should not have
spaces in them, and such names will be casesensitive on some servers
All the content of the webpage should go
between the <body> and </body>
Things in between <head> and </head>





<title> - required for validation
<style> - embedded stylesheet (if present)
<link> - for external stylesheets (if present)
<meta> - meta tags
<script> - JavaScript (if present; can also be in
body)
25
Your NVCC Web Site
http://www.student.nvcc.edu/home/lanID
You can lookup your lanID at
https://www.nvcc.edu/stu_id/search.htm
hostname: www.student.nvcc.edu
username: nvstu\lanid
password: birthday in mmddyyyy format
IT Help Desk 703-426-4141 can reset
password
26
Day 1 Review
HTML 4.01,XHTML, HTML5, <!doctype>
 <html>,<head>, <body>
<title>, <p>, <br>, <h1> … <h6>
 Validation at http://validator.w3.org
 HTML comments, HTML editors (e.g.
Dreamweaver)

27
Day 2 Review
Cascading style sheets (CSS)
Inline <h1 style="color:red">
Embedded, e.g.
<head>
<style>
h1{ color:red; }
.highlight {color: yellow; }
</style>
</head>
<body>
<h1>Today’s topics</h1>
<p class=“topper”>
<p><span class=“topper”>
28
Day 2 Review (cont.)
External style sheets – styles put in a
file with extension .css, e.g. style.css
 html files reference this with the
following in the head section of the
document
<link rel="stylesheet" href="style.css">
<div> and <span> tags can be used to
apply styles where there is no html tag
present
29

Day 2 Review (cont.)




Physical (e.g. <b>) and logical (e.g.
<strong>) tags
Deprecated or obsolete tags and
attributes
Unordered, ordered, and definition lists
<hr>, <blockquote>, special
characters, e.g.  
30
Day 2 Review (cont.)


Color – names ("blue"), hexadecimal
(#0000FF), RGB(0,0,255), RGB(0%,
0%, 100%)
CSS properties: color, backgroundcolor, text-align, font-family
31

The anchor element
The Anchor Element
<a>
Inline display element

Specifies a hyperlink reference (href) to a file
Text between the <a> and </a> is displayed on the web
page.


<a href="contact.html">Contact Us</a>
•
href Attribute

Indicates the file name or URL
Web page document, photo, pdf, etc. (thus one can link to lots of
things, not just other web pages)
32

Absolute link
More on Hyperlinks
Link to other websites
<a href="http://yahoo.com">Yahoo</a>


Relative link


Preferred way to link to pages on your own
site
Path specified is relative to the current page
<a href="index.html">Home</a>
33
Opening a Link
in a New Browser Window

The target attribute on the anchor element opens a
link in a new browser window or new browser tab.
<a href="http://yahoo.com" target="_blank">Yahoo!</a>
Often used when one links to other websites, rarely used when
linking within one's own site
34
Day 3 - Ways of Referencing
Other Files



Absolute using http:// -- must use for
files on other websites
Relative – location is specified relative
to the location of the reference file
Using / – specifies the path from the
top level (root) of the site
35
Relative references (p. 48)




links in the same folder need no path
filename
links up one directory are listed as
../filename
Can be repeated multiple times
../../ for up two levels, etc.
sub-directories are listed without any
preceding slashes
weekly/filename
36
Use of leading / in reference


/ means start at the top level of the site
Disadvantages of /


can't be tested without a server
The root of the site can depend on host, so the
site becomes less portable than if the reference
were relative
37
Linking within a page (p.52)
Give an element a named id and then
link to that id
<h1 id="top">
<a href="#top">Return to top</a>
Older versions of html used the name
attribute for this purpose, e.g.
<h1 name="top">
<a href="#top">Return to top</a>

38
Email Hyperlinks


Automatically launch the default mail
program configured for the browser
If no browser default is configured,
a dialog box is displayed asking whether
you want to configure the email
<a href="mailto:me@hotmail.com">me@hotmail.com</a>
39
Resizing Images


For both web and print work, when
working with images that you don’t
create yourself in a graphics program,
by far the most common action is
resizing images
When resizing for the web, you
normally want to use 72 pixels per inch;
for print, at least 300 pixels per inch
40
Exporting from Image Created in
Graphics Program to the Web




Graphics program will provide a choice of gif and jpg
format and allow you to compare the appearance and file
size of the two alternatives
General rule: jpg for photographs, gif for everything else,
When you do the export, you can also choose the quality
Tradeoff between perceived quality and image file size
within each format
Jpg – quality setting between 1-100 (100 largest file size,
best quality)
 Gif – number of colors (256, 128, 64, 32, 16, 8, 4, 2);
Fireworks uses a default setting of 80 for quality; higher values
often don't noticeably improve quality but considerably
increase file size

41
GIF Image Format

gif





Limited to 256 colors
Supports transparency
Supports animation (animated gif)
"Lossless" compression – but if original has
more than 256 colors, going to 256 colors
loses information
Compression algorithm takes advantage of
areas of constant color
42
JPG Format




Any jpg can have over 17 million colors (256
possibilities in Red x 256 possibilities in Green x
256 possibilities in Blue)
No transparency, no animation
Better format for photographs than gif because
of lots of colors in photographs
Compression algorithm is lossy (one loses
information) so if one is making a series of
changes in a jpg, best to make all changes
before saving rather than saving as one goes
along
43
Exercise: Resizing an Image in
Fireworks and Paint

http://www.billpegram.com/camerapict
ures/P1010003.JPG
44
Inline images in web page


<img src="cat.gif" height="100"
width="150" alt="black cat">
http://www.billpegram.com/WWWDesig
n/align.html discusses alignment issues,
p. 58 of text
45
Accessibility & Images

Required:

Configure the alt attribute





Alternate text content to convey the meaning/intent of the
image
If the image contains a text message, then the text should
typically be the value of the alt attribute
NOT the file name of the image
Use alt="" for purely decorative images
Recommended:

If your site navigation uses image links for the main navigation,
provide simple text links at the bottom of the page.
46

Image Links
To create an image link use an anchor element to
contain an image element
<a href="index.html"><img src="home.gif"
height="19" width="85" alt="Home"></a>
Home


Browsers used to automatically add a border to
image links, but current versions don't
Can use CSS to eliminate the border if worried
about older browsers
img {border-style: none; }
47
Thumbnail Image
A small image linked to a larger version of that
image.
<a href="big.jpg"><img src="small.jpg" alt="country
road" width="200" height="100"></a>
48
Background images
body {background-image:url(cat.jpg);
background-repeat: repeat-y;}
possible values for background-repeat are
repeat (the default), repeat-y, repeat-x,
no-repeat
Background images are often small in one
dimension and tiled in that dimension,
e.g. going the width of the page but few
49
pixels high, and then tiling vertically
CSS background-image Property


Configures a background-image
By default, background images tile (repeat)
body { background-image: url(background1.gif); }
50
CSS background-repeat Property
51
Tiling of Background Images



http://www.billpegram.com/WWWDesig
n/backgroundimagecssbodytag.html
http://www.billpegram.com/WWWDesig
n/backgroundimagepatterncss.html
Both examples use a margin-left CSS
property to keep the text off of the
colored background
52
<table border="1">
<caption>Birthday List</caption>
<tr>
<td>Name</td>
<td>Birthday</td>
</tr>
<tr>
<td>James</td>
<td>11/08</td>
</tr>
<tr>
<td>Karen</td>
<td>4/17</td>
</tr>
<tr>
<td>Sparky</td>
<td>11/28</td>
</tr>
</table>
HTML
Table Example
Birthday List
53
<table border="1">
<tr>
<th>Name</th>
<th>Birthday</th>
</tr>
<tr>
<td>James</td>
<td>11/08</td>
</tr>
<tr>
<td>Karen</td>
<td>4/17</td>
</tr>
<tr>
<td>Sparky</td>
<td>11/28</td>
</tr>
</table>
HTML
Table Example 2
Using the <th> Element
54
HTML border Attribute

Indicates the table is specifically not
used for page layout


Optional
border="1"
Visible border
border=""
No visible browser,
which is the browser default.

55
HTML
colspan Attribute
<table border="1">
<tr>
<td colspan="2">
Birthday List</td>
</tr>
<tr>
<td>James</td>
<td>11/08</td>
</tr>
<tr>
<td>Karen</td>
<td>4/17</td>
</tr>
</table>
56
HTML
rowspan
Attribute
<table border="1">
<tr>
<td rowspan="2">This spans two rows</td>
<td>Row 1 Column 2</td>
</tr>
<tr>
<td>Row 2 Column 2</td>
</tr>
</table>
57
Table attributes and CSS

Most attributes of the <table>, <tr>,
<td>, and <th> tags (but not colspan
and rowspan) are deprecated in XHTML
and obsolete in HTML5; use CSS
properties instead (see p. 69-71)
58
Tables



In the past, practically all web pages used
tables for page layout. Furthermore, often
tables were nested inside of other tables (e.g.
www.sharingpeace.org). Use of colspan and
rowspan to avoid use of nested tables is
recommended
Using CSS instead is recommended for layout
Tables still appropriate for displaying data; a
data table is any table in which items in a row
are related to each other (e.g techu.htm
59
table)
Making tables accessible



Simple tables can be made accessible by using <th>
instead of <td> for row and column headers and by
adding scope="row" to the <th> for row headers,
and scope="col" for column headers
“Some screen readers still do not fully support
complex tables with spanned or multiple levels of row
and/or column headers. When possible, try to
'flatten' the table and avoid spanned cells and
multiple levels of header cells.”
(http://webaim.org/techniques/tables/data )
see example on p. 73
60
Accessible Tables

For complex tables, using the headers
and id attribute may be appropriate
61
Accessibility for Complicated
Tables
Travel Expense Report
Meals
San Jose
25-Aug-97
37.74
26-Aug-97
27.28
subtotals
65.02
Seattle
27-Aug-97
96.25
28-Aug-97
35.00
subtotals
131.25
Totals
196.27
Hotels
Transport
subtotals
112.00
112.00
224.00
45.00
45.00
90.00
379.02
109.00
109.00
218.00
442.00
36.00
36.00
72.00
162.00
421.25
800.27
62
Code for Complex Table
Here is sample HTML mark up for the data cells of this table using the headers attribute. c1,
c2, c3, ... are the id's of the column headings and r1, r2, r3, ... are the id's of the row
headings.
<table border="1"> <caption>Travel Expense Report</caption>
<tr>
<td></td>
<th id="c2">Meals</th>
<th id="c3">Hotels</th>
<th id="c4">Transport</th>
<td id="c5">subtotals</td></tr>
<tr>
<th id="r2">San Jose</th>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr><td id="r3" >25-Aug-97</td>
<td headers="c2 r2 r3" bgcolor="#ffff00">37.74</td>
<td headers="c3 r2 r3">112.00</td>
<td headers="c4 r2 r3">45.00</td>
63

Complex Table code continued
<td></td></tr>
<tr>
<td id="r4">26-Aug-97</td>
<td headers="c2 r2 r4">27.28</td>
<td headers="c3 r2 r4">112.00</td>
<td headers="c4 r2 r4">45.00</td> ...
<tr><th id="r10">Totals</th>
<td headers="c2 r10">196.27</td>
<td headers="c3 r10">442.00</td>
<td headers="c4 r10">162.00</td>
<td headers="c5 r10">800.27</td>
</tr> </table>
The highlighted cell with the value 37.74, for example, is associated with the
date "25-Aug-97" (id="r3"), the city "San Jose," (id="r2") and expense item
"Meals" (id="c2"). To make it readable, the subject cell is coded:

< td headers="c2 r2 r3">37.74</td>

Assistive technology might then read this cell "Meals, San Jose, 25-Aug-97,
37.74" or "37.74 ,Meals, San Jose, 25-Aug-97."
64
Approaches to Common
Content Across Pages





Get one page right, and then create
other pages from this through cut and
paste or save as (what we’ll do now)
Frames
Includes, principally server-side includes
Templates provided by HTML editor
(e.g. FrontPage shared borders,
Dreamweaver templates)
65
ASP.NET Master pages
wwwroot and database
security



Many hosting providers require that you
put your html files in a folder at the top
level of the site named wwwroot or
htdocs or something similar
This is done for security reasons, so
that one can't enter a URL that will
access a database
Consider what happens in the absence
of this
66
wwwroot and database
security


Often databases are put in a special
folder so that the proper permissions
are automatically enabled
So let's assume at the top level of your
site www.billpegram.com, you have a
folder called [access_db] which contains
your database (call it important.mdb)
and at the top level of your site you
have your index.html file and other
67
wwwroot and database
security


So to access the home page, in the browser one types
www.billpegram.com; however if one types
www.billpegram.com/access_db/important.mdb one could (in
theory) access the database
So one standard solution is that any reference to the root of the
site (www.billpegram.com) will be interpreted as a reference to
www.billpegram.com/wwwroot -- thus anything outside this
folder won't be accessible through the browser.
68
Download