Duration:
3 Days
Audience:
Employees of federal, state and local governments; and businesses working with the government.
Course Overview
Introduction to HTML5, CSS3 & JavaScript is geared for developers who need to understand the latest web technologies and responsive design practices central to targeting the entire spectrum of user platforms and browsers. This jumpstart style course provides a balanced mixture of theory and practical labs designed to take students through HTML5, CSS3 and JavaScript. Students who attend this course will leave this course armed with the new skills to begin to design, implement, and deploy robust, flexible, and safe web applications.
This ‘skills-focused’ course is approximately 50% hands-on, combining expert lecture, real-world demonstrations and group discussions with machine-based practical labs and exercises. Our instructors are highly experienced practitioners who bring years of current “on-the-job” experience into every classroom. Working within in a hands-on learning environment guided by our expert team, attendees will explore:
HTML5:
- How to effectively meet requirements using the full range of HTML5 semantic and structural elements
- To work with technologies such as web storage, application caching, and cross-domain messaging to improve performance and the user experience
CSS:
- What features CSS3 supports and how they can be effectively used with HTML5 and other technologies
- To adapt to varying degrees of browser support for HTML5 and CSS3
JavaScript:
- What JavaScript is, how it relates to other programming languages, and how to script your web pages with it
- To traverse and manipulate the DOM and handle events in ways that work in all browsers
- To work with closures and prototypes and other exotic features of JavaScript
Debugging
- What is needed to effectively debug these web technologies
- How to use both browser-based and proxy-based debuggers and tools
Course Outline:
Session: HTML Refresher
Lesson: HTML Review
- Define HTML and review its history
- Look at XHTML and its relationship to HTML
- Identify HTML limitations and improvements
Lesson: Introduction to HTML5
- HTML5 Overview
- HTML5 Semantic Structure
- HTML5 Forms
- HTML5 Media Delivery
Session: Introduction to CSS
Lesson: CSS Basics
- Learn the basics of CSS
- Meaning of cascading in CSS
- Declaring CSS within your HTML page
- Creating styles in an external CSS file
- Control how to display and position HTML elements
- Overriding standard tag behavior
- Adding new classes
- Using custom classes in your page
Lesson: CSS3 Overview
- What is new in CSS3
- The Advantages of CSS3
- Browser Support for CSS3
Lesson: CSS3 Advanced Selectors
- Selecting Using Attributes
- Selecting Using DOM Structure
- Complex Selecting using Pseudo-Classes
- Selecting Using UI Components and State
Lesson: CSS3 Visual Effects
- Font Options, Opacity, and Color
- Distributing Content Across Columns
- Working with Borders and Boxes
- Working with Vendor Prefixes
- Functional Techniques
Session: Introduction to JavaScript
Lesson: JavaScript Basics
- JavaScript Defined
- Variables and Operators
- Flow Control and Conditionals
Lesson: Debugging Tools
- Using the strict mode and setting breakpoints
- Browser debugging tools
- Monitoring resource usage and performance
- Emulating devices Exceptions in JavaScript
Lesson: JavaScript Functions
- Functions in JavaScript
- Invoking Functions
- Function Constructor
- Function Scope and Closures
Lesson: JavaScript Arrays, Math and Date
- JavaScript Literals
- JavaScript Arrays
- Working with Numbers and Dates
Lesson: JavaScript Event Handling and the DOM
- Events and Event Handling
- HTML Document Object Model
- Accessing the DOM
- Dynamically Working with the DOM
- DOM Challenges
Lesson: Submitting Form Data to a Server-Side Script
- PHP Quick Review
- A Simple PHP Script
- Setting the Form Action
- Uploading and Testing the Form
Bonus Content / Time Permitting
Lesson: Object-Oriented JavaScript
- JavaScript “Objects” and “Classes”
- Constructors and Prototypes
- Prototypes
- Extending Classes with Prototype
- Reusable, Flexible Classes