The past, the present, the future Telerik School Academy HTML, CSS and JavaScript

Preview:

Citation preview

HTML 5The past, the present, the future

Telerik School Academyhttp://academy.telerik.com

HTML, CSS and JavaScript

Table of Contents Hypertext Markup Language HTML Concepts HTML Document Structure HTML Common Elements Section Elements HTML Tables Semantic Structural Tags

2

Hypertext Markup Language

3

Hypertext Markup Language

HTML – Hyper Text Markup Language A notation for describing

document structure (semantic markup)

formatting (presentation markup)

Looks (looked?) like: A Microsoft Word document

The markup tags provide information about the page content structure

A HTML document consists of many tags

4

Creating HTML Pages An HTML document must have an .htm or .html file extension

HTML files can be created with text editors: NotePad, NotePad ++, Sublime Text

Or HTML editors (WYSIWYG Editors): Microsoft WebMatrix Microsoft Expression Web Microsoft Visual Studio Adobe Dreamweaver

5

HTML – Past, Present, Future

1991 – HTML first mentioned – Tim Berners-Lee – HTML tags

1993 – HTML (first public version, published at IETF)

1993 – HTML 2 draft 1995 – HTML 2 – W3C 1995 – HTML 3 draft 1997 – HTML 3.2 – “Wilbur” 1997 – HTML 4 – ”Cougar” – CSS 1999 – HTML 4.01 (final) 2000 – XHTML draft 2001 – XHTML (final) 2008 – HTML5 / XHTML5 draft 2011 – feature complete HTML5 2022 – HTML5 – final specification

6

HTML TerminologyTags, Attributes and Elements

7

HTML Terminology Concepts in HTML

Tags Opening tag and closing tag

The smallest piece in HTML

Attributes Properties of the tag

Size, color, etc…

Elements Combination of opening, closing tag

and attributes

HTML Tags Tags are the smallest piece in HTML Document Start with "<" and end with ">"

Two kinds of tags Opening

Mark the start of an HTML element

Closing Mark the end of an

HTML element

Start in "</"9

<html><body> <h1>Hello Pesho!</h1></body></html>

Opening tag

Closing tag

Opening tag

Opening tag

Closing tag

Closing tag

Attributes Attributes are properties of HTML Elements Used to set size, color, border, etc…

Put directly in the tags

Has value surrounded by " " or ' ' The value is always a string

10

<!-– makes a hyperlink to Google --><a href="http://google.com"> go to Google</a>

<!-– makes a horizontal line --><hr width="95%" size="3px"/>

<!-– adds an image in the web page --><img src="images/SEB-Ninja.png"/>

Some tags don't have closing tag

Some tags don't have closing tag

Most Common Attributes

There are some attributes that are common for every HTML element Id, class, name, style

And some attributes are specific For example the attribute src of the img element Shows the path to the image to be

shown

11

HTML Elements

HTML Elements are combination of tags and attributes Opening tag with some or none

attributes and a closing tag

12

<a href="http://google.com"> go to Google</a>

<html>…</html>

HTML Terminology

Live Demo

13

HTML Document Structure

HTML Document, Doctype, Head, Body

14

HTML Document Structure

Some elements are essential to each HTML Document:

html, head, body, doctype

The html element Used to mark the beginning and

ending of a HTML document

All the content of the web page is inside this tag

15

<html> …</html>

Head Element The head tag contains markup that is not visible to the user (i.e. the person using the browser) But helps the browser to render

correctly the HTML document

What is in there? Styles, scripts

Declare encodings

Etc..

The title tag - the text in the tab of a browser

16

Body Element and Doctype

body element contains all the visible to the user markup Headings, text, hyperlinks, images,

etc…

Textboxes, sliders, buttons…

Doctype is kind of the validator of the page Tells the browser in which version

of HTML the page is written

HTML 5 Doctype17

<!DOCTYPE html>

HTML Document Structure

Live Demo

18

HTML Common Elements

Used in 90% of all the sites

Text Formatting Text formatting tags modify the

text between the opening tag and the closing tag Ex. <b>Hello</b> makes "Hello" bold<b></b> bold

<i></i> italicized

<u></u> underlined

<sup></sup> Samplesuperscript

<sub></sub> Samplesubscript

<strong></strong> strong

<em></em> emphasized

<pre></pre> Preformatted text

20

Many of the formatting tags are deprecated Use CSS instead

Some Simple Tags Hyperlink Tags

Image Tags

Text formatting tags

21

<a href="http://www.telerik.com/" title="Telerik">Link to Telerik Web site</a>

<img src="logo.gif" alt="logo" />

This text is <em>emphasized.</em><br />new line<br />This one is <strong>more emphasized.</strong>

Headings and Paragraphs

Heading Tags (h1 – h6)

Paragraph Tags

Sections: div and span

22

<p>This is my first paragraph</p><p>This is my second paragraph</p>

<h1>Heading 1</h1><h2>Sub heading 2</h2><h3>Sub heading 3</h3>

<div style="background: skyblue;"> This is a div</div>

a. Appleb. Orangec. Grapefruit

Ordered Lists: <ol> Tag Create an Ordered List using <ol></ol>:

Attribute values for type are 1, A, a, I, or i

23

1. Apple2. Orange3. Grapefruit

A. AppleB. OrangeC. Grapefruit

I. AppleII. OrangeIII. Grapefruit

i. Appleii. Orangeiii. Grapefruit

<ol type="1"> <li>Apple</li> <li>Orange</li> <li>Grapefruit</li></ol>

Unordered Lists: <ul> Tag

Create an Unordered List using <ul></ul>:

Attribute values for type are: disc, circle or square

24

• Apple

• Orange

• Pear

o Apple

o Orange

o Pear

Apple

Orange

Pear

<ul type="disc"> <li>Apple</li> <li>Orange</li> <li>Grapefruit</li></ul>

Definition lists: <dl> tag

Create definition lists using <dl> Pairs of text and associated

definition; text is in <dt> tag, definition in <dd> tag

Renders without bullets

Definition is indented 25

<dl><dt>HTML</dt><dd>A markup language …</dd><dt>CSS</dt><dd>Language used to …</dd>

</dl>

HTML Common Elements

Live Demo

Section ElementsThe <div> and The <span>

The <div> Tag <div> creates logical divisions within a page

Block element

Used with CSS

Example:

28

<div style="font-size:24px; color:red">DIV example</div>

<p>This one is <span style="color:red; font-weight:bold">only a test</span>.</p>

<DIV>Live Demo

The <span> Tag Inline style element Useful for modifying a specific portion of text Don't create a separate area

(paragraph) in the document

Mainly used to style parts of a text

30

<p>This one is <span style="color:red; font-weight:bold">only a test</span>.</p>

<p>This one is another <span style="font-size:32px; font-weight:bold">TEST</span>.</p>

<SPAN>Live Demo

HTML Tables

HTML Tables Tables represent tabular data

A table consists of one or several rows

Each row has one or more columns Tables are comprised of several core tags: <table></table>: begin/end table

definition <tr></tr>: create a table row <td></td>: create tabular data (cell)

Tables should not be used for layout Use CSS floats and positioning

styles instead

33

Simple HTML Tables – Example

34

<table cellspacing="0" cellpadding="5"> <tr> <td><img src="ppt.gif"></td> <td><a href="lecture1.ppt">Lecture 1</a></td> </tr> <tr> <td><img src="ppt.gif"></td> <td><a href="lecture2.ppt">Lecture 2</a></td> </tr> <tr> <td><img src="zip.gif"></td> <td><a href="lecture2-demos.zip"> Lecture 2 - Demos</a></td> </tr></table>

Simple HTML TablesLive Demo

Data Cells and Header Cells

Two kinds of cells in HTML tables Data cells – containing the table

data Header cells – used for the column

names or some more important cells

Why two kinds of cells? Used to semantically separate the

cells

<tr> <th>Full Name</th> <th>Mark</th></tr><tr> <td>Doncho Minkov</td> <td>Very good (5)</td></tr><tr> <td>Georgi Georgiev</td> <td>Exellent (6)</td></tr>

Data and Header Cells

Live Demo

Complete HTML TablesWith Header, Footer

and Body

Complete HTML Tables Table rows split into three semantic sections: header, body and footer <thead> denotes table header and

contains <th> elements, instead of <td> elements

<tbody> denotes collection of table rows that contain the very data

<tfoot> denotes table footer but comes BEFORE the <tbody> tag

<colgroup> and <col> define columns (used to set column widths)

39

Complete HTML Table: Example

40

<table><colgroup> <col style="width:100px" /><col /></colgroup><thead> <tr><th>Column 1</th><th>Column 2</th></tr></thead><tfoot> <tr><td>Footer 1</td><td>Footer 2</td></tr></tfoot><tbody> <tr><td>Cell 1.1</td><td>Cell 1.2</td></tr> <tr><td>Cell 2.1</td><td>Cell 2.2</td></tr></tbody>

</table>

header

footer

Last comes the body (data)

th

columns

<table><colgroup> <col style="width:200px" /><col /></colgroup><thead> <tr><th>Column 1</th><th>Column 2</th></tr></thead><tfoot> <tr><td>Footer 1</td><td>Footer 2</td></tr></tfoot><tbody> <tr><td>Cell 1.1</td><td>Cell 1.2</td></tr> <tr><td>Cell 2.1</td><td>Cell 2.2</td></tr></tbody>

</table>

Complete HTML Table:Example (2)

41

table-full.html

Although the footer is before the data in the

code, it is displayed last

Complete HTML TablesLive Demo

Nested TablesTables in Tables in Tables in Tables…

Nested Tables Table "cells" (<td>) can contain

nested tables (tables within tables):

44

<table> <tr> <td>Contact:</td> <td> <table> <tr> <td>First Name</td> <td>Last Name</td> </tr> </table> </td> </tr></table>

nested-

tables.html

Nested TablesLive Demo

Complex TablesWith Padding, Spacing and Stuff

cellpadding

Defines the empty space around the cell content

cellspacing

Defines the empty space between cells

Cell Spacing and Padding

Tables have two attributes related to space

47

cell cell

cell cell

cell

cell

cell

cell

Cell Spacing and Padding – Example

48

<html> <head><title>Table Cells</title></head> <body> <table cellspacing="15" cellpadding="0"> <tr><td>First</td> <td>Second</td></tr> </table> <br/> <table cellspacing="0" cellpadding="10"> <tr><td>First</td><td>Second</td></tr> </table> </body></html>

table-

cells.html

Cell Spacing and Padding – Example (2)

49

<html> <head><title>Table Cells</title></head> <body> <table cellspacing="15" cellpadding="0"> <tr><td>First</td> <td>Second</td></tr> </table> <br/> <table cellspacing="0" cellpadding="10"> <tr><td>First</td><td>Second</td></tr> </table> </body></html>

table-

cells.html

Cell Spacing and

Cell PaddingLive Demo

Row and Column SpansHow to Make a Two-

Cells Column or Row?

rowspan

Defines how many rows the cell occupies

colspan

Defines how many columns the cell occupies

Column and Row Span Cells have two attributes related to merging

52

cell[1,1]

cell[1,2]

cell[2,1]

colspan="1"

colspan="1"

colspan="2"

cell[1,1]

cell[1,2]

cell[2,1]

rowspan="2"

rowspan="1"

rowspan="1"

Column and Row Span – Example

53

<table cellspacing="0"><tr class="1">

<td>Cell[1,1]</td><td colspan="2">Cell[2,1]</td>

</tr><tr class="2">

<td>Cell[1,2]</td><td rowspan="2">Cell[2,2]</td><td>Cell[3,2]</td></tr>

<tr class="3"><td>Cell[1,3]</td><td>Cell[2,3]</td><

/tr></table>

table-colspan-rowspan.html

Column and Row Span – Example (2)

54

<table cellspacing="0"><tr class="1">

<td>Cell[1,1]</td><td colspan="2">Cell[2,1]</td>

</tr><tr class="2">

<td>Cell[1,2]</td><td rowspan="2">Cell[2,2]</td><td>Cell[3,2]</td></tr>

<tr class="3"><td>Cell[1,3]</td><td>Cell[2,3]</td><

/tr></table>

table-colspan-rowspan.html

Cell[2,3]

Cell[1,3]

Cell[3,2]Cell[2,2

]

Cell[1,2]

Cell[2,1]Cell[1,1

]

Row and Column SpansLive Demo

Semantic Structural Tags

The Structure of a Web Page

A sample layout structure of a Web Page

The "HTML 4 and Before" Way

Using divs with IDs The IDs are needed for styling

58

<html><head> … </head><body> <div id="header"> … </div> <div id="navigation"> … </div> <div id="sidebar"> … </div> <div id="content"> … </div> <div id="footer"> … </div></body></html>

The HTML 4 Way

Live Demo

59

The HTML 5 Way In HTML 5 there are semantic tags for layout <nav>, <header>, <footer>, <section>

Work only on newer browsers60

<html><head> … </head><body> <header> … </header> <nav> … </nav> <aside> … </aside> <section> … </section> <footer> … </footer></body></html>

Semantic Structural Tags

Live Demo

Remember It is important to have the correct vision and attitude towards HTML HTML is only about structure, not

appearance

Browsers tolerate invalid HTML code and parse errors – you should not

Always think about semantics

The W3C HTML Validator is a way to validate your HTML http://validator.w3.org/

62

форум програмиране, форум уеб дизайнкурсове и уроци по програмиране, уеб дизайн – безплатно

програмиране за деца – безплатни курсове и уроцибезплатен SEO курс - оптимизация за търсачки

уроци по уеб дизайн, HTML, CSS, JavaScript, Photoshop

уроци по програмиране и уеб дизайн за ученициASP.NET MVC курс – HTML, SQL, C#, .NET, ASP.NET MVC

безплатен курс "Разработка на софтуер в cloud среда"

BG Coder - онлайн състезателна система - online judge

курсове и уроци по програмиране, книги – безплатно от Наков

безплатен курс "Качествен програмен код"

алго академия – състезателно програмиране, състезания

ASP.NET курс - уеб програмиране, бази данни, C#, .NET, ASP.NETкурсове и уроци по програмиране – Телерик академия

курс мобилни приложения с iPhone, Android, WP7, PhoneGap

free C# book, безплатна книга C#, книга Java, книга C#Дончо Минков - сайт за програмиранеНиколай Костов - блог за програмиранеC# курс, програмиране, безплатно

?

? ? ??

?? ?

?

?

?

??

?

?

? ?

Questions?

?

HTML 5

http://html5course.telerik.com

Exercises1. Write an HTML page like the following:

* Use headings, divs, paragraphs and ul

64

Exercises (2)

2. Write an HTML page like the following:

65

Exercises (3)3. Create an user

profile Web page profile.html, friends page named friends.html and info page named home.html. Link them to one another using <a> tag

66

Exercises – Tables

67

1. Create Web Pages like the following using tables:

2. Create a Web Page like the following using forms:

Exercises – Tables (2)

3. Create a Calculator-like table. You should use a HTML 5 form for the Calculator

Buttons for all the numbersand operators (+, -, etc.)

Textbox for the result

Do not make the same stylesas the example

68