Hypertext Markup Language (HTML)

Web Architecture [./]
Fall 2008 — INFO 290-03 (CCN 42584)

Erik Wilde, UC Berkeley School of Information
2008-10-02

Creative Commons License [http://creativecommons.org/licenses/by/3.0/]

This work is licensed under a CC
Attribution 3.0 Unported License
[http://creativecommons.org/licenses/by/3.0/]

Contents E. Wilde: Hypertext Markup Language (HTML)

Contents

E. Wilde: Hypertext Markup Language (HTML)

(2) Abstract

The Hypertext Markup Language (HTML) is the most important content type on the Web. Even though it is primarily intended for humans (by presenting formatted pages of textual content), it also has facets that are important for machine-based processing. HTML can be use in a variety of ways, and this lecture looks at some of the important rules that should be observed when creating HTML, for example how to use HTML markup in general and how to create accessible forms.



E. Wilde: Hypertext Markup Language (HTML)

(3) HTML and WYSIWYG



E. Wilde: Hypertext Markup Language (HTML)

(4) Layout Engine Usage

Usage share of Layout Engines

HTML and Structure

Outline (HTML and Structure)

  1. HTML and Structure [2]
  2. HTML Forms [15]
  3. XHTML [3]
  4. Conclusions [1]
HTML and Structure E. Wilde: Hypertext Markup Language (HTML)

(6) All-Purpose Elements



HTML and Structure E. Wilde: Hypertext Markup Language (HTML)

(7) Retain Content Structures



HTML Forms

Outline (HTML Forms)

  1. HTML and Structure [2]
  2. HTML Forms [15]
  3. XHTML [3]
  4. Conclusions [1]
HTML Forms E. Wilde: Hypertext Markup Language (HTML)

(9) HTTP Web Services



HTML Forms E. Wilde: Hypertext Markup Language (HTML)

(10) Forms Mechanics

form-mechanics.png

HTML Forms E. Wilde: Hypertext Markup Language (HTML)

(11) Forms Markup



HTML Forms E. Wilde: Hypertext Markup Language (HTML)

(12) Forms Elements (User View)


Text:
Password:
Checkbox:
Radio Button:
Submit:
File Upload:
Text Areas:
Selection:
Multiple Selection:


HTML Forms E. Wilde: Hypertext Markup Language (HTML)

(13) Forms Elements (Source View)

<form action="http://stevex.net/dump.php" method="POST" enctype="multipart/form-data"><table>

<tr><td>Text:</td><td><input type="text" name="text" value="text input"/></td></tr>

<tr><td>Password:</td><td><input type="password" name="password" value="hidden text"/></td></tr>

<tr><td>Checkbox:</td><td><input type="checkbox" name="check" value="1"/> <input type="checkbox" name="check" value="2"/> <input type="checkbox" name="check" value="3"/></td></tr>

<tr><td>Radio Button:</td><td><input type="radio" name="radio" value="1"/> <input type="radio" name="radio" value="2"/> <input type="radio" name="radio" value="3"/></td></tr>

<tr><td>Submit:</td><td><input name="submit" type="submit"/></td></tr>

<tr><td>File Upload:</td><td><input name="file" type="file"/></td></tr>

<tr><td>Text Areas:</td><td><textarea name="textarea" rows="2" cols="20"/></td></tr>

<tr><td>Selection:</td><td><select name="select"><option selected="selected">XML</option><option>SGML</option></select></td></tr>

<tr><td>Multiple Selection:</td><td><select name="mselect" multiple="multiple"><option>242</option><option>290-3</option><option>290-13</option></select>

</table></form>


HTML Forms E. Wilde: Hypertext Markup Language (HTML)

(14) Forms and GET



HTML Forms E. Wilde: Hypertext Markup Language (HTML)

(15) Forms and POST



HTML Forms E. Wilde: Hypertext Markup Language (HTML)

(16) POST Form Processing



HTML Forms E. Wilde: Hypertext Markup Language (HTML)

(17) Processing of Form Data

Query Parameter Test:
<?php
import_request_variables("gP", "form_");
echo $form_test;
?> 


HTML Forms E. Wilde: Hypertext Markup Language (HTML)

(18) Structuring Forms



HTML Forms E. Wilde: Hypertext Markup Language (HTML)

(19) Labels

<tr><td>Text:</td><td><input type="text" name="text"/></td></tr>
<tr><td>Password:</td><td><input type="password" name="password"/></td></tr>
<tr>
  <td><label for="textctrl">Text:</label></td>
  <td><input type="text" name="text" id="textctrl"/></td>
</tr>
<tr>
  <td><label for="pwdctrl">Password:</label></td>
  <td><input type="password" name="password" id="pwdctrl"/></td>
</tr>


HTML Forms E. Wilde: Hypertext Markup Language (HTML)

(20) Fieldsets

<fieldset><legend>Billing</legend>billing form controls …</fieldset>
<fieldset><legend>Shipping</legend> shipping form controls … </fieldset>
Billingbilling form controls …
Shippingshipping form controls …


HTML Forms E. Wilde: Hypertext Markup Language (HTML)

(21) Tabbing in Forms



HTML Forms E. Wilde: Hypertext Markup Language (HTML)

(22) Disabled and Readonly Controls



HTML Forms E. Wilde: Hypertext Markup Language (HTML)

(23) Disabled and Readonly Controls Display

Normal Control Disabled Control Readonly Control
Text:
Password:
Checkbox: !
Radio Button: !
File Upload: !
Text Areas:
Selection:[ not supported ]
Multiple Selection:


XHTML

Outline (XHTML)

  1. HTML and Structure [2]
  2. HTML Forms [15]
  3. XHTML [3]
  4. Conclusions [1]
XHTML E. Wilde: Hypertext Markup Language (HTML)

(25) XHTML and HTML

Relationship of HTML, SGML, XHTML, and XML

XHTML E. Wilde: Hypertext Markup Language (HTML)

(26) Why XHTML?



XHTML E. Wilde: Hypertext Markup Language (HTML)

(27) HTML → XHTML

<P>Paragraphs often are not closed properly.
<IMG WIDTH=200 HEIGHT=300 SRC="test.png">
<P>And images by definition are always empty elements.
<p>Paragraphs often are not closed properly.</p>
<img width="200" height="300" src="test.png" />
<p>And images by definition are always empty elements.</p>


Conclusions

Outline (Conclusions)

  1. HTML and Structure [2]
  2. HTML Forms [15]
  3. XHTML [3]
  4. Conclusions [1]
Conclusions E. Wilde: Hypertext Markup Language (HTML)

(29) HTML Matters



2008-10-02 Web Architecture [./]
Fall 2008 — INFO 290-03 (CCN 42584)