Learning Adventure
Learn HTML and CSS
HTML and CSS are the basic building blocks of any website. No matter what kind of website or application you want to build, you'll have to know both of these languages. In this Learning Adventure, we'll start out by building a very simple website for a bakery and then we'll launch it live on the web. After we've built our first website, we'll get a more formal introduction to HTML, or HyperText Markup Language, which forms the structural layer. This is the code that will hold any text and other content. Then we'll take a look at CSS, which is the presentational code that tells web browsers how our HTML should be rendered visually. CSS allows us to change colors, fonts, page layout, and more. After we've covered HTML and CSS, we'll learn how to make our websites responsive, so that they're visible on a wide variety of desktop and mobile devices. Finally, we'll learn about Accessibility, which allows websites to be viewed by people that use assistive devices to browse the web.
- Things You'll Learn
- HTML
- CSS
- Accessibility
- Responsive Web Design
5 badges • 17 videos
-
Overview
Build a Simple Website
Smells Like Bakin' is a cupcake company in need of a website. This project will walk us through the basics of HTML and CSS from the very beginning. HTML and CSS are the structural and presentational building blocks of every website and will serve as the foundation for any web project.
-
Step 1
Website Basics
In this first stage, we'll learn about HTML and CSS, which are the building blocks of every website.
-
Step 2
Text Editors and HTML
One of the primary tools that web designers and developers use all the time is called a text editor. We'll use a text editor to write our HTML code, which will describe the structure of our content.
-
Step 3
Creating a Website Structure
HTML describes the structure of content on a web page, but it's also important to define visual structure. Using a CSS grid system, we'll rearrange page elements into an aesthetically pleasing layout.
-
Step 4
Styling Content
Grid CSS can help layout webpages visually, but to add more customizations like fonts and background colors, we will need to write our own CSS code. CSS also allows for borders, margin, padding, and much more.
-
Step 5
Launching the Website
Now that we're finished coding our website, it's time to deploy it live to the web. This involves several steps, including purchasing a domain and hosting. Then, we'll use the File Transfer Protocol (FTP) to put our files onto our server.
7 badges • 23 videos
-
Overview
HTML
This HTML tutorial helps you master HTML. Mastering HTML and its many elements is critical for any type of web professional. HTML or "Hyper Text Markup Language" describes the basic structure and content of a web page.
-
Step 1
Introduction
This introductory HTML tutorial is a broad overview of the Internet, the web, and markup languages.
-
Step 2
Text
Text in HTML can be structured many different ways. Utilizing text elements can add semantic structure to web pages.
-
Step 3
Lists
Lists in HTML can be used to create an ordered or unordered grouping of list items, such as a grocery list or your top five favorite movies.
-
Step 4
Links
Hyperlinks are the fundamental idea that makes the web great. They allow pages to be linked together so that it's easy to navigate through the sea of information.
-
Step 5
Objects
Objects in HTML include elements like images and multimedia plugins. This class of elements essentially allows for the addition of content that is not text-based.
-
Step 6
Tables
Tables in HTML can be used for structuring and formatting tabular data, similar to the display capabilities of spreadsheet software. Tables are useful for organizing and relating quantitative and qualitative data sets.
-
Step 7
Forms
Forms are a special class of HTML elements that can be combined together to create pages that accept user input. The user input generated by forms can then be processed by software that runs on the server-side.
13 badges • 55 videos
-
Overview
CSS Foundations
Cascading Style Sheets (CSS) is a language used to describe the visual look of a web page. Using CSS, it is possible to change colors, margin, padding, fonts, and much more. This content will consolidate the previously released CSS Foundations and CSS3 in a brand new and updated series.
-
Step 1
Getting Started with CSS
Learn basic CSS concepts and how to add CSS to a page.
-
Step 2
Selectors
Selectors allow for styling to be applied to particular page elements. This critical concept makes it easy to choose a specific page element and assign CSS.
-
Step 3
Advanced Selectors
Many advanced CSS selectors help keep our markup clean, semantic and flexible by targeting specific elements without the need of a class or an ID.
-
Step 4
Values and Units
Every CSS property has a type of value it can accept, such as a predefined keyword, a length unit, or a URL. In this Deep Dive, we'll cover common values and units CSS properties accept.
-
Step 5
Text, Fonts, and Lists
Text has a significant effect on how we view a web page, and CSS has many options for defining text styles. Font properties also enable us to change the appearance of text by assigning a font family, font size, thickness and more. In this Deep Dive, we’ll learn common font properties we can use to enhance our text, along with ways to style our HTML lists.
-
Step 6
The Box Model
Every HTML element, no matter how big or small, can be thought of as a rectangular box made up of content, padding, borders and margins. The Box Model is the basis of CSS layout and positioning, and it dictates how elements are displayed and interact with each other.
-
Step 7
Backgrounds and Borders
With CSS, any element can have a background and border applied, and certain properties affect how they appear. In this Deep Dive, we'll explore common CSS background and border properties, along with ways to add drop shadows and inner shadows to HTML elements.
-
Step 8
Web Typography
Web typography is an exciting and rapidly evolving area of CSS, wherein layout engines like webkit are pushing beyond W3C standards. In this Deep Dive, we’ll cover topics such as best practices for choosing a typeface, text layout, responsive text and vertical rhythm. We'll also explore font resources like the @font-face rule, and other detailed font features and techniques that will enhance our text.
-
Step 9
CSS Gradients
CSS gradients allow us to display smooth transitions between two or more colors. In this Deep Dive, we'll explore linear and radial CSS gradients, along with the differences in browser syntax. Released: March 21, 2013
-
Step 10
Flexbox and Multi-Column Layout
With CSS multi-column layouts, we can easily define multiple columns of text. One of the benefits of using CSS-based columns is flexibility; content flows from one column to another, and the number of columns can vary depending on the size of the device or viewport. The CSS3 Flexible Box, or flexbox, is a powerful new feature that makes CSS more efficient for layout. Elements can be dynamically rearranged on the page, laid out in any direction, have flexible dimensions to adapt to the display space, and much more! Released: April 1, 2013
-
Step 11
Transitions and Transforms
CSS transition properties provide a way to control the animation speed in changing the properties over a given duration. We can also specify time intervals, durations and timing functions that follow a customizable acceleration curve. CSS transforms allow us to change the position of elements without disrupting the normal document flow. Transforms are implemented using a set of CSS properties that let us apply transformations like rotation, skewing, scaling and translation in both the plane and 3D space. Released: May 5, 2013
-
Step 12
CSS Animations
CSS animations make it possible to animate transitions from one CSS style to another. Animations change a CSS property over time using keyframes that indicate the start/end states of the animations, and intermediate points along the way. We can easily control animations by including iteration values, delaying their start time, play states and more.
-
Step 13
Media Queries
Media queries allow designers to apply CSS declarations dynamically based on client conditions. Using media features like width, height, and color, we can tailor our content to a wide range of devices and resolutions without having to change the content itself.
5 badges • 19 videos
-
Overview
Build a Responsive Website
The Smells Like Bakin' cupcake company needs their website to work on tablets and phones. We will modify the code of their pre-existing website so that it is flexible and fits beautifully into a wide variety of screen resolutions and devices.
-
Step 1
Introduction to Responsive Web Design
Some years ago there was a clear differentiation between desktop and mobile. The introduction of tablets and other new web devices brings the challenge of designing for more resolutions and devices than ever before. Fortunately, responsive web design has emerged as a robust solution.
-
Step 2
Creating a Fluid Foundation
The key to a responsive website is building it on a fluid foundation. This defines our website layout in ratios and proportions rather than absolute values. Using the target ÷ context = result formula, we'll convert widths, margins, and padding from pixels to percentages. We'll also learn how to make our images scalable.
-
Step 3
Adaptive Design
Introducing media queries allows us to target specific device resolutions; like an iPad or iPhone, and adjust our website's layout accordingly. This is referred to as an adaptive design approach.
-
Step 4
Responsive Design
Responsive websites are built on a fluid grid and use media queries not to target specific device resolutions, but rather to adjust the design and content as it reaches various breakpoints.
-
Step 5
Advanced Techniques
Responsive web design doesn't stop at creating a fluid foundation and implementing media queries. It's an ongoing process. In this stage, we'll continue to make our typography and media even more responsive. We'll also learn how we should move forward when starting responsive web projects from scratch.
3 badges • 16 videos
-
Overview
Accessibility
Accessibility is the practice of making websites available to all people, regardless of their abilities or disabilities.
-
Step 1
Introduction
A broad definition of accessibility could include mobile devices, software machines, and people with disabilities. However, the more traditional definition of accessibility focuses exclusively on people that access the web in atypical ways.
-
Step 2
Websites
Accessibility on a static website has a lot to do with creating semantic markup. However, creating an aesthetic with CSS is equally important and can help users with various types of vision and motor impairments.
-
Step 3
Web Apps
Dynamic websites often deal with lots of input and output of data. This typically involves the utilization of forms and tables, which can pose some accessibility issues if they're not coded properly.
The Finish Line!
If you've made it this far, congratulations! If you think you're up for it, why not check out the related bonus content or take on another Learning Adventure?
Related Bonus Content
-
Bonus Series
Web Design Q&A with Nick
In this series, Nick Pettit answers your questions about web design, web development, and anything else you're interested in knowing.
-
Bonus Video
HTML5 Boilerplate and Front-End Development - with Paul Irish
27 minutes 40 seconds
-
Bonus Series
In the Wild
Join Allison as she explores the web industry through interviews with web professionals. This is In the Wild.