Book Image

The HTML and CSS Workshop

By : Lewis Coulson, Brett Jephson, Matt Park, Marian Zburlea
Book Image

The HTML and CSS Workshop

By: Lewis Coulson, Brett Jephson, Matt Park, Marian Zburlea

Overview of this book

With knowledge of CSS and HTML, you can build visually appealing, interactive websites without relying on website-building tools that come with lots of pre-packaged restrictions. The HTML and CSS Workshop takes you on a journey to learning how to create beautiful websites using your own content, understanding how they work, and how to manage them long-term. The book begins by introducing you to HTML5 and CSS3, and takes you through the process of website development with easy-to-follow steps. Exploring how the browser renders websites from code to display, you'll advance to adding a cinematic experience to your website by incorporating video and audio elements into your code. You'll also use JavaScript to add interactivity to your site, integrate HTML forms for capturing user data, incorporate animations to create slick transitions, and build stunning themes using advanced CSS. You'll also get to grips with mobile-first development using responsive design and media queries, to ensure your sites perform well on any device. Throughout the book, you'll work on engaging projects, including a video store home page that you will iteratively add functionality to as you learn new skills. By the end of this Workshop, you'll have gained the confidence to creatively tackle your own ambitious web development projects.
Table of Contents (15 chapters)
2
2. Structure and Layout
3
3. Text and Typography
5
5. Themes, Colors, and Polish
6
6. Responsive Web Design and Media Queries
7
7. Media – Audio, Video, and Canvas
12
12. Web Components

CSS Paint API

The first API from CSS Houdini to see the light of day, with an actual browser implementation, is the Paint API, which first appeared in Chrome 65 and is now available in Opera with the intent for Firefox, Safari, and Edge to implement it as well.

The Paint API gives us a way to control a 2D rendering context that we can programmatically draw to using JavaScript. This is a lot like the Canvas element we learned about in Chapter 7, Media – Audio, Video, and Canvas.

There are a couple of significant differences between the Paint API and the 2D rendering context of the Canvas:

  • The main difference is that the Paint API allows us to use the 2D image with any CSS property that accepts an image as a value. For example, we can create a 2D image and then use it as the value for a background-image, border-image, or mask-image.
  • The Paint API also makes use of a worklet, which is a bit like a worker, that is, a thread running parallel to the main browser...