An open API service indexing awesome lists of open source software.

https://github.com/dinanathsj29/html5-essentials-tutorial

A HTML5 tutorials for beginners, An introduction to HTML5 building blocks, step-by-step guide to HTML5
https://github.com/dinanathsj29/html5-essentials-tutorial

html html-document html-element html-forms html-layout html-tables html-tag html5 html5-semantic-tags hypertext-markup-language semantic web-design web-development web-techonology webtechnologies xhtml

Last synced: about 1 month ago
JSON representation

A HTML5 tutorials for beginners, An introduction to HTML5 building blocks, step-by-step guide to HTML5

Awesome Lists containing this project

README

          


HTML5 (HyperText Markup Language) Essentials logo

HTML5 Essentials
=====================

HTML is the language that powers the web. With HTML you can create your web pages/website. This course provides an in-depth look at the essentials: the syntax of HTML and best practices for writing and editing your code. Will learn HTML, Document structure, block and inline-level tags, floating images, controlling white space, phrase and font markup, list, links, and tables.

### Prerequisites for current course / What you need to know
There are no prerequisites as such for current courses/lessons. It's an added advantage if you know basic concepts like Web, Internet, web page, URL, images, etc. It's advisable to view [Web Design Development Foundations-Web Technology Fundamentals](https://github.com/dinanathsj29/web-design-development-fundamentals) before dive deeper into HTML5 content.

Topics include
=====================

1. [Course Introduction](#section-1-course-introduction)
2. [Introducing HTML](#section-2-introducing-html)
- 2a. [Introducing XHTML](#section-2a-introducing-xhtml)
- 2b. [Introducing HTML5](#section-2b-introducing-html5)
3. [Basic page structure](#section-3-basic-page-structure)
4. [Formatting page content](#section-4-formatting-page-content)
5. [Structuring content](#section-5-structuring-content)
6. [List - Creating Lists](#section-6-creating-lists)
7. [Link - Creating Links](#section-7-creating-links)
8. [Table - Working with Table](#section-8-working-with-table)
9. [Form - Dealing with Forms](#section-9-dealing-with-forms)
10. [HTML Layout](#section-10-html-layout)
11. [What's the next step?](#section-11-whats-the-next-step)

Section 1. Course Introduction
=====================

### 1.1. Welcome
Hi All, I'm **`Dinanath Jayaswal, Senior UI/Web Developer and Adobe Certified Expert Professional`**, I wanna welcome you to HTML5 Essentials. This course will take an in-depth look at HTML/HTML5, will learn Syntax and Semantics of HTML. Will also focus on best practices to implement while writing and editing HTML. Here will start by learning what is HTML, Basic HTML Document/Page structure, How to write and format page content, creating a list, link, table, and many more things.

Section 2. Introducing HTML
=====================

### 2.1. Importance

### 3 pillars / core Languages/Technologies used for Front End Web Design/Development:

1. **`HTML (HyperText Markup Language) - Markup language, essential page structure/content, readable and convey structure to the user, text layout model, page mark-up, text, tags, data, details for pages, images, tables, anchor links, forms`**
- HTML is an acronym that stands for `HyperText Markup Language` which is used for creating `web pages and web applications
- HTML is not a programming language; it is a markup language that defines the structure of your content ie. document

2. **CSS (Cascading Style Sheet)** - Style Sheet language, page design / presentation / layouts / styling / formattings, look and feel, creative part of web pages
- CSS is a stylesheet language that allows you to control the appearance (look and feel) of your webpages

3. **JavaScript (JS)** - Scripting language, dynamic page behavior, logics, conditions and validations, events (mouse click, hover), interactivity with the user/events, dynamic updates in a web page
- JavaScript is a `scripting language of the web that allows you to do interactivity with the user, implement conditions and validations, dynamic updates in a web page, etc.

> **Syntax & Example**:
```html


02.01.intro.html


This is Intro HTML file


This line will displayed on browser / web page.

```

### 2.2. HTML (HyperText Markup Language)
- HTML stands for `HyperText Markup Language`
- The Standard/foundation/gateway/most widely used language used for developing/creating/structuring content on the web
- We can create a static website by HTML only
- Technically, HTML is a `Markup language` rather than a programming language
- HTML describes the structure of Web pages using `markup`
- HTML `elements/tags` are the building blocks of HTML pages, which represented by `content`
- NO HTML = NO WEB PAGE :)
- HyperText Markup Language, used to MARK the content what exactly it is ie `

= Paragraph, = Header, = table` etc..

### 2.3. What is HTML?
- HTML is an acronym that stands for `HyperText Markup Language` which is used for creating `web pages and web applications`.
- HTML is not a programming language; it is a markup language that defines the structure of your content
- **Hyper Text**:
- HyperText simply means `"Text within Text."` A text that has a link within it, is a hypertext. HyperText is a way to link two or more web pages (HTML documents) with each other.
- Hypertext refers to the way in which/how `Web pages (HTML documents) are linked together. Thus, the link available on a webpage is called Hypertext.
- **Markup language**:
- A markup language is a computer language that is used to `apply layout and formatting conventions to a text document`. Markup language makes the text more interactive and dynamic. It can turn text into images, tables, links, lists, headings, etc.
- HTML is a Markup Language which means you use HTML to simply "mark-up" a text document with tags that tell a Web browser how to structure it to display.
- **Web Page**:
- A web page is a document that is commonly written in HTML and translated by a web browser. A web page can be identified by entering an URL. A Web page can be of the static or dynamic type. With the help of HTML only, we can create static web pages.

### 2.4. Prerequisites of using HTML (HyperText Markup Language)
#### Tools for building web sites-web pages/writing HTML

1. **Text Editor/HTML Editor** - `NotePad, NotePad++, SublimeText, Atom, Brackets, Coda, Visual Studio Code, DreamWeaver` etc.
- An HTML file (.html / .htm) is a text file itself consists of HTML tags/elements, so to create/modify an HTML file we can use any text editors.
2. **Browsers To view output of .html pages** - `Google Chrome, Mozilla Firefox, Internet Explorer, Safari` etc.
- Once the .html/.htm file is created and saved, we can see its output in any latest web browser.



    Widely used modern browsers image
    Image - Widely used modern browsers

### 2.5. Basic HTML Document
> **Syntax & Example**:
```html


02.05.basic.html


Heading: Welcome Welcome to HTML


Paragraph: This is my first HTML page

  • Bullet List Item


  • Click me

    ```

    ### 2.6 Building blocks of HTML (Tag Attribute Element)
    An HTML document consist of its basic building blocks:

    | Name / Item | Description |
    | ----------------|-----------------------------------------|
    | Tags | An HTML tag surrounds the content and applies meaning to it. It is written between `< and > brackets.` |
    | Attribute | An attribute in HTML provides extra information about the element, and it is applied within the start tag. An HTML attribute contains two fields: `name & value / key & value` |
    | Elements | An HTML element is an individual component of an HTML file. In an HTML file, everything `written within tags` is termed as HTML elements |

    > **Syntax & Example**:
    ```html
    content: whole together is an element
    ```

    > **Syntax & Example**:
    ```html

    Heading 1 aligned to right


    ```

    ### 2.7 Tag
    - HTML tags are like keywords which defines that how web browser will format and display the content `

    ,

    ,

    , `
    - HTML is a markup language and makes use of various tags to format the content
    - Tags are enclosed within angle braces ``
    - Except few tags, most of the tags have their corresponding closing tags. ``` , ,

    ,

    ,
    ,
    ```
    - When a web browser reads an HTML document, browser reads it from top to bottom and left to right
    - HTML tags are used to create HTML documents and render their properties

    > **Syntax & Example**:
    ```html
    content
    ```

    > **Syntax & Example**:
    ```html

    HTML Tags: Various tags used to develope web page.


    Heading: Welcome Welcome to HTML


    Paragraph: This is my first HTML page



    Horizontal Rules

    Line Break
    Bold Strong Text
  • list item bulletted list

  • ```

    ### 2.8 Attribute
    - HTML attributes are special words that `provide additional information about the elements` or attributes are the modifier of the HTML element
    - Each element or tag can have attributes, which defines the `characteristics/behavior` of that element
    - Attributes should always be applied with start-tag
    - All attributes are made up of two parts − a name and a value, Attributes usually come in name/value pairs like `name="value"`
    - Attribute names and attribute values are case-insensitive

    > **Syntax & Example**:
    ```html
    content
    ```

    > **Syntax & Example**:
    ```html

    Heading 1


    Paragraphic text



    Horizontal Rules

    Line Break
    Bold Strong Text

    Heading 2: Hover Me


    ```

    ### 2.9 Element
    - An HTML file is made of elements
    - Elements are responsible for creating web pages and define content in that webpage
    - An element in HTML usually consist of a `start tag , close tag ` and content inserted between them

    > **Syntax & Example**:
    ```html
    content: whole together is an element
    ```

    > **Syntax & Example**:
    ```html

    Heading 1 aligned to right


    ```

    ### 2.10. HTML Syntax
    - HTML Syntax is very simple easy to learn
    - HTML Contents/Documents ie files are nothing but a simple text files only with `.htm` or `.html` extention
    - HTML page consists of `DTD & TAGS` for different visual aspects
    - HTML uses `TAGS` to markup and identify page content
    - ` Some content here ` **Example**: `

    p is paragraph tag used to create paragraphics text.

    `
    - An HTML Element = ` content: whole together is an element `
    - We can create contents with `nested elements` like `Some Content ` **Example**: `

    I am bold paragraphic text

    `

    #### **Types of Attributes**
    1. **Informative Attribute** - gives extra information about an element. **Example**: lang="en", class="header", id="container1"
    2. **Functional Attribute** - very important who perform some activities. **Example**: href="index.html", src="script.js"

    ### 2.11. State (Evolution of HTML)
    The Web is changing very fast and so HTML
    #### History of HTML

    | Year | History |
    | ------------- |---------------|
    | 1990 | Specification Drafted in Mid 90s by Tim Berners Lee |
    | 1991 | Tim Berners Lee published document called "HTML Tags" |
    | 1995 | HTML 2.0 ('standard' HTML) |
    | 1997 | HTML 3.2 (proprietary browser companies developed many features) |
    | 1999 | HTML 4.0 W3C Web standards support |
    | 2000 | XHTML 1.0 (HTML move towards XML)-Extensible Markup Language |
    | 2001 | 2009 - XHTML 2.0 |
    | 2004 | WHATWG formed (Web HyperText Application Technology Working Group, they continued with development of HTML 5.0) |
    | 2007 | 2008 - W3C adopts WHATWG's HTML5 Web Application 1.0 specification and drafts |
    | 2009 | XHTML 2.0 drops/stops |
    | 2014 | W3C Recommendation: HTML5 |

    #### The Current State of HTML
    **There are two specifications of HTML: (*Not much changes with syntax*)**
    1. W3C (World Wide Web Consortium)
    2. WHATWG (Web Hypertext Application Technology Working Group)

    #### What should you focus on?
    There is no good reason not to learn the HTML5 syntax. Focus on learning the elements and syntax first. Gradually learn the new capabilities in HTML5, once you become comfortable with writing clean HTML.

    ### 2.12. Reference
    Some important and valuable references / resorces:
    - https://www.w3.org/TR/html53/
    - https://www.w3.org/TR/2010/WD-html5-20100624/
    - https://html.spec.whatwg.org/multipage/
    - https://webplatform.github.io/docs/html/
    - https://developer.mozilla.org/en-US/

    ### 2.13. Editor
    #### Choosing a Code/HTML/Text Editor
    - Any modern Text Editor can work (Not a word editor)
    > **Note**: A good code/HTML/text editor can speed up the process of writing and editing code, also highlights syntax errors.

    **Code/HTML/Text Editor Features:** The latest text editors must-have features like:
    - auto-text
    - auto type of code
    - Indentation style
    - syntax highlighting,
    - auto code completion (Intelligent code completion)
    - Spell checker
    - autosave
    - live preview etc.

    #### text editor VS visual editor (WYSIWYG - (wizzy-wig or What You See Is What You Get))
    The web development world has two types of HTML editing programs:
    1. **Text-based HTML editor**
    - Text editors are more often used for writing code
    - Developer Prefers
    - It is better to have little programming to knowledge to type code
    - Initially, more coding needed
    - **Example**: Adobe Brackets, SublimeText, Atom, Notepad, Notepad++

    2. **Visual WYSIWYG, wizzy-wig OR What You See Is What You Get editor**
    - Visual editors tend to be used for quick content creation, editing, and styling
    - Designer Prefers
    - Programming knowledge is not required, anyone can create web content/web pages
    - Faster so helps to publish content at high speed
    - **Example**: Adobe DreamWeaver, WordPress editor

    Section 2a. Introducing XHTML
    =====================

    XHTML is HTML written/defined as an XML application. XHTML stands for Extensible Hypertext Markup Language.

    #### Prerequisite
    Before learning XHTML, you must have a basic knowledge of HTML.

    ### 2a.1. What is XHTML?
    - XHTML stands for Extensible Hypertext Markup Language
    - XHTML is almost identical/similar/same as HTML but it is more important to create your code correctly, because XHTML is stricter than HTML in syntax and case sensitivity
    - XHTML is introduced to set Browser Compatibility and display similar O/P in various browsers as per Web 2.0 standards. Also to create and follow stricter/standard/well-formed code standards
    - XHTML 1.0 became a World Wide Web Consortium (W3C) Recommendation on January 26, 2000
    - XHTML is HTML redesigned as XML. It helps you to create better formatted code on your site

    ### 2a.2. HTML vs XHTML?
    There are some changes in XHTML as compared to HTML. These changes can be categorized in below parts (The Most Important Differences from HTML):
    1. Changes in Document Structure
    - All documents must have a DOCTYPE (XHTML DOCTYPE is mandatory)
    2. Changes in XHTML Tags (XHTML Elements)
    - XHTML documents must have one root element
    - XHTML elements must always be **closed/properly nested**
    - XHTML elements must be in lowercase
    3. Changes in XHTML Attributes
    - All XHTML attributes must be **quoted and added properly**

    ### 2a.3. XHTML
    > **Syntax & Example**:
    ```html


    xhtml document


    some xhtml content

    ```

    Section 2b. Introducing HTML5
    =====================

    HTML5 is the next generation of HTML.

    #### Prerequisite
    Before learning HTML5, you must have a basic knowledge of HTML, XHTML, CSS.

    ### 2b.1. What is HTML5?
    HTML5 is the latest version of Hypertext Markup Language, the code that describes web pages. HTML5 is a co-operation of W3C (World Wide Web Consortium) and WHATWG(Web Hypertext Application Technology Working Group).

    ### 2b.2. Why HTML5?
    There are many features related to DTD, Tags, Elements, attributes, APIs introduced in HTML:
    - It allows you to play a video and audio file
    - It facilitates you to design better forms (form 2.0)
    - Reduce the usage of the external plugin (Features added in the browser so that no need to use external plugins like SWF player, java applets or so)

    #### New HTML5 Tags/Elements
    - HTML5 Semantic elements: `, , , , , `
    - Graphic elements: `, `
    - Multimedia/Interactive elements: `, `

    #### New HTML5 Form attributes
    - New Form 2.0 attributes: number, date, time, calendar, color, file, range

    #### New HTML5 API's (Application Programming Interfaces)
    - HTML Geolocation
    - HTML Local Storage
    - HTML Application Cache
    - HTML Drag and Drop
    - HTML Web Workers

    ### 2b.3. HTML5
    > **Syntax & Example**:
    ```html




    HTML5 document


    some HTML5 content


    ```

    Section 3. Basic Page Structure
    =====================

    ### 3.1. Explore
    Let's have a look and observe an HTML source code in the browser:
    1. Open any existing .html file in the browser, in our case open `structure.html`
    2. Check the page source or Inspect page with Debugger utilities like: `FireBug, Inspect/ Inspect Element` (in browser -> Right Click on page -> choose Inspect Element -> Check/observe actual HTML code/tags).

    #### Doctype DTD (Document Type Declaration OR Document Type Definition)
    - First line of an HTML document - `!DOCTYPE html`
    - It instructs Browsers/User Agents which version of html used for rendering

    #### HEAD Section
    - All external references in the form of styles, scripts, and third-party plug-ins themes, etc.
    - Also consists of additional instructions on how the document will render on different devices
    - HEAD section contains non-visible instructions, non-visual elements

    #### BODY Section
    - All page contents which are visible on the page in the browser
    - Body section consists of visible instructions, visual elements
    - Example: paragraph, images, list, tables, links, etc.

    ### 3.2. Doctype DTD (Document Type Declaration OR Document Type Definition)
    - Usually the first line of an HTML page, its an instruction to the web browser about what version of HTML the page is written and rules to parse/render.
    - Browsers use a DOCTYPE at the beginning of the document to decide whether to handle it in quirks mode (non-standard behavior in the browser)or standards mode (supports all behavior).
    - The declaration is *not case sensitive*.
    - **Different Doctype Declarations:**

    | HTML Version | DTD |
    | ------------- |---------------|
    | HTML5 | Document Type Declaration (``) |
    | XHTML | Document Type Definition (.DTD file) `` |
    | HTML4 | Document Type Definition (.DTD file) `` |

    ### 3.3. Head
    - `` section of document contains functional information which is not visible on document.
    - The `` element contains meta information about the document
    > **Syntax & Example**:
    ```html



    page title here


    ```

    ### 3.4. Body
    `` section/element contains all contents visible in browser window/ on web page.
    > **Syntax & Example**:
    ```html

    Basic HTML Page Structure

    Lets have a look and observe different section/parts of HTML page:


    • 1. Doctype

    • 2. HEAD

    • 3. BODY

    ```

    ### 3.5. Model
    #### Different Tag/Element category
    Tags are divided into different categories based on:
    1. **`Output`**
    1. **Block Level elements** -
    - Block level element own next line, always shows output on next line
    - Block level element starts on a new line, and create a line break before and after the element
    - Example Tags: `

    ,


    , , , ,