18
Tables and Tables and Forms Forms HTML5 Tables and Forms HTML5 Tables and Forms

Tables and Forms HTML5 Tables and Forms. Table Overview table element ( ) Attributes: align (left, right, center), bgcolor, border, cellpadding, cellspacing,

Embed Size (px)

Citation preview

Page 1: Tables and Forms HTML5 Tables and Forms. Table Overview table element ( ) Attributes: align (left, right, center), bgcolor, border, cellpadding, cellspacing,

Tables and Tables and FormsForms

HTML5 Tables and FormsHTML5 Tables and Forms

Page 2: Tables and Forms HTML5 Tables and Forms. Table Overview table element ( ) Attributes: align (left, right, center), bgcolor, border, cellpadding, cellspacing,

Table OverviewTable Overview

table element (<table></table>)table element (<table></table>)

Attributes: align (left, right, center), bgcolor, border, cellpadding, Attributes: align (left, right, center), bgcolor, border, cellpadding, cellspacing, summary, title, widthcellspacing, summary, title, width

table row (<tr></tr>)table row (<tr></tr>)

Attributes: align (left, right, center), bgcolorAttributes: align (left, right, center), bgcolor

table data cell (<td></td>)table data cell (<td></td>)

Attributes: align, bgcolor, colspan, headers, height, rowspan, scope, Attributes: align, bgcolor, colspan, headers, height, rowspan, scope, valign, widthvalign, width

table captions (<caption></caption>)table captions (<caption></caption>)

Page 3: Tables and Forms HTML5 Tables and Forms. Table Overview table element ( ) Attributes: align (left, right, center), bgcolor, border, cellpadding, cellspacing,

Span Rows and ColumnsSpan Rows and Columns

Similar to “merge cells”Similar to “merge cells”in Excelin Excel

colspancolspan

rowspanrowspan

This spans two columns

Col 1 Col 2

This spans two rows

Row 1 Col 2

Row 2Col 2

Page 4: Tables and Forms HTML5 Tables and Forms. Table Overview table element ( ) Attributes: align (left, right, center), bgcolor, border, cellpadding, cellspacing,

Style a Table with CSSStyle a Table with CSS

HTML properties (corresponding CSS table HTML properties (corresponding CSS table properties)properties)

align (table { width: 75%; margin: auto; })align (table { width: 75%; margin: auto; })

width (width), height (height), cellpadding width (width), height (height), cellpadding (padding)(padding)

cellspacing (border-spacing, border-collapse)cellspacing (border-spacing, border-collapse)

bgcolor (background-color), valign (vertical-align)bgcolor (background-color), valign (vertical-align)

border (border, border-style, border-spacing)border (border, border-style, border-spacing)

Page 5: Tables and Forms HTML5 Tables and Forms. Table Overview table element ( ) Attributes: align (left, right, center), bgcolor, border, cellpadding, cellspacing,

CSS3 Structural Pseudo-CSS3 Structural Pseudo-ClassClass

Alternating row colors (aka: zebra-striping)Alternating row colors (aka: zebra-striping)

:first-of-type (applies to the first element of the type):first-of-type (applies to the first element of the type)

:first-child (applies to the first child of an element):first-child (applies to the first child of an element)

:last-of-type (applies to the last element of the type):last-of-type (applies to the last element of the type)

:last-child (applies to the last child of an element):last-child (applies to the last child of an element)

:nth-of-type(n) (applies to the nth element – number, :nth-of-type(n) (applies to the nth element – number, odd, even)odd, even)

Page 6: Tables and Forms HTML5 Tables and Forms. Table Overview table element ( ) Attributes: align (left, right, center), bgcolor, border, cellpadding, cellspacing,

Configure Table SectionsConfigure Table Sections

<caption>, <thead>, <caption>, <thead>, <tbody>, <tfoot><tbody>, <tfoot>

<table border="1">  <thead>    <tr>      <th>Month</th>      <th>Savings</th>    </tr>  </thead>  <tfoot>    <tr>      <td>Sum</td>      <td>$180</td>    </tr>  </tfoot>  <tbody>    <tr>      <td>January</td>      <td>$100</td>    </tr>    <tr>      <td>February</td>      <td>$80</td>    </tr>  </tbody></table>

Page 7: Tables and Forms HTML5 Tables and Forms. Table Overview table element ( ) Attributes: align (left, right, center), bgcolor, border, cellpadding, cellspacing,

FormsForms

form element (<form></form>)form element (<form></form>)

Attributes: action, autocomplete (on, off), id, method (get, post), nameAttributes: action, autocomplete (on, off), id, method (get, post), name

Generally the action is sending the form data to a PHP page for Generally the action is sending the form data to a PHP page for processingprocessing

input element form controlsinput element form controls

type (text, radio, checkbox, hidden, password)type (text, radio, checkbox, hidden, password)

name, id, size, maxlength, value, disabled, readonly, autocomplete (on, name, id, size, maxlength, value, disabled, readonly, autocomplete (on, off) autofocus, list, placeholder, required, accesskey, tabindexoff) autofocus, list, placeholder, required, accesskey, tabindex

Submit and Reset Button (type=“submit”, Submit and Reset Button (type=“submit”, type=“reset”)type=“reset”)

type (submit, reset), name, id, value, accesskey, tabindex)type (submit, reset), name, id, value, accesskey, tabindex)

Page 8: Tables and Forms HTML5 Tables and Forms. Table Overview table element ( ) Attributes: align (left, right, center), bgcolor, border, cellpadding, cellspacing,

Input ElementsInput Elements

<input type=“text”…><input type=“text”…>

<input type=“radio”…><input type=“radio”…>

<input type=“checkbox”…><input type=“checkbox”…>

<input type=“password”…><input type=“password”…>

<input type=“submit”…><input type=“submit”…>

<input type=“reset”…><input type=“reset”…>

Page 9: Tables and Forms HTML5 Tables and Forms. Table Overview table element ( ) Attributes: align (left, right, center), bgcolor, border, cellpadding, cellspacing,

Textarea ElementTextarea Element

<textarea name=“comments” id=“comments” cols=“40” <textarea name=“comments” id=“comments” cols=“40” rows=“2”>Enter your comments here</textarea>rows=“2”>Enter your comments here</textarea>

name, id, cols, rows, maxlength, disabled, name, id, cols, rows, maxlength, disabled, readonly, autofocus, placeholder, required, readonly, autofocus, placeholder, required, wrap (hard, soft), tabindexwrap (hard, soft), tabindex

Page 10: Tables and Forms HTML5 Tables and Forms. Table Overview table element ( ) Attributes: align (left, right, center), bgcolor, border, cellpadding, cellspacing,

Typical Contact FormTypical Contact Form

<form><form><input…><input…><input…><input…><input…><input…><textarea…><textarea…><input…><input…><input…><input…>

</form></form>

ResetResetSubmitSubmit

Page 11: Tables and Forms HTML5 Tables and Forms. Table Overview table element ( ) Attributes: align (left, right, center), bgcolor, border, cellpadding, cellspacing,

Select ListSelect List

Drop-down listDrop-down list

Attributes: name, id, size, multiple, disabled, Attributes: name, id, size, multiple, disabled, tabindextabindex

Requires “option” elementRequires “option” element

<select size=“1” name=“dropdown” <select size=“1” name=“dropdown” id=“dropdown”>id=“dropdown”>

<option value=“NC”>North <option value=“NC”>North Carolina</option>Carolina</option>

<option value=“SC”>South <option value=“SC”>South Carolina</option>Carolina</option></select></select>

Page 12: Tables and Forms HTML5 Tables and Forms. Table Overview table element ( ) Attributes: align (left, right, center), bgcolor, border, cellpadding, cellspacing,

Other Forms of Other Forms of SubmissionSubmission

Image button: when an image button is clicked, Image button: when an image button is clicked, the form is submittedthe form is submitted

<input type=“image” src=“pic.jpg” alt=“Alt”><input type=“image” src=“pic.jpg” alt=“Alt”>

Button element: can be used to configure not Button element: can be used to configure not only images, but also blocks of text as the only images, but also blocks of text as the selectable area that can submit or reset a formselectable area that can submit or reset a form

<button type=“submit”><button type=“submit”><img src=“pic.jpg”><img src=“pic.jpg”>

</button></button>

Page 13: Tables and Forms HTML5 Tables and Forms. Table Overview table element ( ) Attributes: align (left, right, center), bgcolor, border, cellpadding, cellspacing,

Accessibility and FormsAccessibility and Forms

Label Element: a way to label inputs more easilyLabel Element: a way to label inputs more easily

<label>Email: <input type=“text” name=“email” id=“email”></label><label>Email: <input type=“text” name=“email” id=“email”></label>

Fieldset and Legend Elements: very useful for form Fieldset and Legend Elements: very useful for form organizationorganization

<fieldset><fieldset><legend>Billing Address</legend><legend>Billing Address</legend><label>Street: <input type=“text” name=“street” <label>Street: <input type=“text” name=“street”

id=“street”></label><br>id=“street”></label><br><label>City: <input type=“text” name=“city” <label>City: <input type=“text” name=“city”

id=“city”></label>id=“city”></label><label>State: <input type=“text” name=“state” <label>State: <input type=“text” name=“state”

id=“state”></label>id=“state”></label><label>Zip: <input type=“text” name=“zip” id=“zip”></label><label>Zip: <input type=“text” name=“zip” id=“zip”></label>

</fieldset></fieldset>

Page 14: Tables and Forms HTML5 Tables and Forms. Table Overview table element ( ) Attributes: align (left, right, center), bgcolor, border, cellpadding, cellspacing,

tabindex & accesskeytabindex & accesskey

Most tab orders are based on order of input Most tab orders are based on order of input element within the code. However, if you would element within the code. However, if you would like to change the order…like to change the order…

<input type=“text” name=“email” <input type=“text” name=“email” tabindex=“1”>=“1”>

If you need a shortcut key to take you to that If you need a shortcut key to take you to that particular input element…particular input element…

<input type=“text” name=“email” <input type=“text” name=“email” accesskeyaccesskey=“E”>=“E”>

Page 15: Tables and Forms HTML5 Tables and Forms. Table Overview table element ( ) Attributes: align (left, right, center), bgcolor, border, cellpadding, cellspacing,

Styling a FormStyling a Form

Using table structuresUsing table structures

Transitional Approach: code the form into a Transitional Approach: code the form into a table, but use CSS to style the tabletable, but use CSS to style the table

Pure CSS: style your form (labels, text boxes, Pure CSS: style your form (labels, text boxes, buttons, etc…) with nothing but CSSbuttons, etc…) with nothing but CSS

Page 16: Tables and Forms HTML5 Tables and Forms. Table Overview table element ( ) Attributes: align (left, right, center), bgcolor, border, cellpadding, cellspacing,

After the Form After the Form SubmissionSubmission

What do we do with the user’s data once the What do we do with the user’s data once the form is submitted?form is submitted?

We need server-side scripting/processingWe need server-side scripting/processing

CGI (Common Gateway Interface)CGI (Common Gateway Interface)

PHP (Hypertext Pre-Processor)PHP (Hypertext Pre-Processor)

How?...Remote Hosted Form ProcessingHow?...Remote Hosted Form Processing

FormBuddy.com, FormMail, ExpressDB, Master.comFormBuddy.com, FormMail, ExpressDB, Master.com

Write our own PHP or CGI script?Write our own PHP or CGI script?

We must ensure our scripts are secure, so we’ll use PHP (which is We must ensure our scripts are secure, so we’ll use PHP (which is what I’m familiar with). We’ll cover this in Lecture 5.what I’m familiar with). We’ll cover this in Lecture 5.

Page 17: Tables and Forms HTML5 Tables and Forms. Table Overview table element ( ) Attributes: align (left, right, center), bgcolor, border, cellpadding, cellspacing,

HTML5 Form ControlsHTML5 Form Controls

Email Address Input (must be in Email Address Input (must be in [email protected] format) format)<input type=“email” name=“myemail” id=“myemail”><input type=“email” name=“myemail” id=“myemail”>

URL Input (looks for website URLs)URL Input (looks for website URLs)<input type=“url” name=“myurl” id=“myurl”><input type=“url” name=“myurl” id=“myurl”>

Telephone Number Input (555-555-5555 format)Telephone Number Input (555-555-5555 format)<input type=“tel” name=“mobile” id=“mobile”><input type=“tel” name=“mobile” id=“mobile”>

Search Field InputSearch Field Input<input type=“search” name=“mysearch” id=“mysearch”><input type=“search” name=“mysearch” id=“mysearch”>

Page 18: Tables and Forms HTML5 Tables and Forms. Table Overview table element ( ) Attributes: align (left, right, center), bgcolor, border, cellpadding, cellspacing,

More HTML5 Form More HTML5 Form ControlControl

Datalist Form Control (allows input and list choice)Datalist Form Control (allows input and list choice)<input type=“text” name=“color” id=“color” list=“colors”><input type=“text” name=“color” id=“color” list=“colors”>

<datalist id=“colors”><datalist id=“colors”><option value=“red”><option value=“red”><option value=“blue”><option value=“blue”>

</datalist></datalist>

Slider Form Control (uses a slider to control value)Slider Form Control (uses a slider to control value)<input type=“range” name=“mychoice” id=“mychoice”><input type=“range” name=“mychoice” id=“mychoice”>

Calendar Form Control (presents a calendar for date configurations)Calendar Form Control (presents a calendar for date configurations)<input type=“date” name=“calendar” id=“calendar”><input type=“date” name=“calendar” id=“calendar”>

Color-well Form Control (gives a color choice map)Color-well Form Control (gives a color choice map)<input type=“color” name=“mycolor” id=“mycolor”><input type=“color” name=“mycolor” id=“mycolor”>