1. A Quick Overview of Web Development
A. Client-side Programming
- HTML
- Cascading Style Sheets
- JavaScript 1
- Ajax
- JavaScript Frameworks
B. Server-side Programming
- Java EE
- ASP.NET
- Python
- PHP
- ColdFusion
- Node.js
2. Introduction to HTML
A. Getting Started
B. A Simple HTML Document
C. The HTML Skeleton
- The <head> Element
- The <body> Element
- Whitespace
D. HTML Elements
- Attributes
- Empty vs. Container Tags
- Blocks and Inline Elements
- Comments
E. Special Characters
F. History of HTML
G. lang Attribute
3. Paragraphs, Headings, and Text
A. Paragraphs
B. Breaks and Horizontal Rules
C. Creating an HTML Page
D. Quoted Text
E. Preformatted Text
F. Text-Level Semantic Elements
4. HTML Links
A. Text Links
B. Absolute vs. Relative Paths
- Absolute Paths
- Relative Paths
- Default Pages
C. Targeting New Windows
D. Email Links
E. Adding Links
F. Targeting a Specific Location on the Page
G. The title Attribute
5. HTML Images
A. Inserting Images
- Making Images Accessible
- Alternative Text
- Long Descriptions
- Height and Width Attributes
B. Image Links
C. Adding Images to the Page
6. HTML Lists
A. Unordered Lists
- Nesting Unordered Lists
B. Ordered Lists
- Nesting Ordered Lists
- The type Attribute
- The start Attribute
C. Definition Lists
D. Creating Lists
7. Crash Course in CSS
A. Benefits of Cascading Style Sheets
B. CSS Rules
- CSS Comments
C. Selectors
- Type Selectors
- Class Selectors
- ID Selectors
- Attribute Selectors
- The Universal Selector
- Grouping
D. Combinators
- Descendant Combinators
- Child Combinators
- General Sibling Combinators
- Adjacent Sibling Combinators
E. Precedence of Selectors
F. How Browsers Style Pages
G. CSS Resets
H. CSS Normalizers
I. External Stylesheets, Embedded Stylesheets, and Inline Styles
- External Stylesheets
- Embedded Stylesheets
- Inline Styles
J. Exercise: Creating an External Stylesheet
K. Exercise: Creating an Embedded Stylesheet
L. Exercise: Adding Inline Styles
M. <div> and <spa>
N. Exercise: Divs and Spans
O. Media Types
P. Units of Measurement
- Absolute vs. Relative Units
- Pixels
- Ems and Rems
- Percentages
- Other Units
Q. Inheritance
- The inherit Value
8. CSS Fonts
A. font-family
- Specifying by Font Name
- Specifying Font by Category
B. @font-face
- Getting Fonts
C. font-size
- Relative font-size Terms
- Best Practices
D. font-style
E. font-variant
F. font-weight
G. line-height
H. font
I. Exercise: Styling Fonts
9. Color and Opacity
A. About Color and Opacity
B. Color and Opacity Values
- Color Keywords
- RGB Hexadecimal Notation
- RGB Functional Notation
- HSL Functional Notation
C. color
D. opacity
E. Exercise: Adding Color and Opacity to Text
10. CSS Text
A. letter-spacing
B. text-align
C. text-decoration
D. text-indent
E. text-shadow
F. text-transform
G. white-space
H. word-break
I. word-spacing
J. Exercise: Text Properties
11. JavaScript Basics
A. The Name "JavaScript"
B. What is ECMAScript?
C. The HTML DOM
D. JavaScript Syntax
E. Accessing Elements
- Dot Notation
- Square Bracket Notation
F. Where Is JavaScript Code Written?
G. JavaScript Objects, Methods and Properties
12. Variables, Arrays, and Operators
A. JavaScript Variables
- A Loosely-Typed Language
- Google Chrome DevTools
- Variable Naming
- Storing User-Entered Data
B. Constants
C. Arrays
- Associative Arrays
- Array Properties and Methods
D. Playing with Array Methods
E. JavaScript Operators
F. The Modulus Operator
G. The Default Operator
13. JavaScript Functions
A. Global Objects and Functions
- parseFloat(object)
- parseInt(object)
- isNaN(object)
B. User-defined Functions
Function Syntax
Passing Values to Functions
C. Returning Values from Functions
14. Built-In JavaScript Objects
A. String
B. Math
C. Date
D. Helper Functions
15. Conditionals and Loops
A. Conditionals
B. if - else if - else Conditions
C. Short-circuiting
D. Switch / Case
E. Ternary Operator
F. Truthy and Falsy
G. Loops
- while Loop Syntax
- do while Loop Syntax
- for Loop Syntax
- for of Loop Syntax
- for in Loop Syntax
H. break and continue
I. Array: forEach()
16. Event Handlers and Listeners
A. On-Event Handlers
- The getElementById() Method
B. The addEventListener() Method
C. Capturing Key Events
D. Benefits of Event Listeners
E. Timers