How using absolute CSS units like 'px' prevents font resizing

Description

Collection: Front End DevelopmentChapter: How CSS Units Work

One of the main arguments against using pixels as a CSS unit is that it freezes the ability to adjust the size of the font, making sites more difficult to use for those who are visually impaired. For those of us who don't adjust the default font size in our browser, it's good to see how it's done and what our site so far will look like to someone who's adjusted their font size.

Transcript

So if we compare using EMs versus pixels for font sizes right now it seems like pixels is going to be a lot easier to work with. Now I'm going to refresh this page in order to reset the styles to what they were. So even though pixels have a lot going for it when it comes to setting font sizes it has one critical weakness which is that if a user of a browser changes their default font size it won't affect text that has its size set in an absolute measurement, like pixels.

So let me demonstrate how we do that. So in Chrome - you can go to Chrome and then preferences - then if we scroll down you may have to click the 'show advanced settings', there's this web content section and you can set the font size. So if we set this to very large for example, which is not an uncommon thing among people ...

When you have an active membership, you will be able to see your progress here.

Skill focus: Theming, Site BuildingSkill level: Beginner - Advanced

The world of front end development has come a long way in the last several years with the addition of responsive design, CSS preprocessors like SASS, and the ever widening range of devices and environments we use to navigate the web. At the same time, many of us are able to generate fully functioning web sites using CMS's like Drupal without ever touching HTML or CSS - the basic building blocks of the web. Because of that, many of us end up floundering when we need to make even minor adjustments to the markup or presentation of a project, since we don't have the experience needed to break down what our CMS is actually doing for us.

If you've found yourself either at a loss to make adjustments to HTML, CSS or JavaScript of a project, or are looking to upgrade outdated front-end skills, this collection is for you.

This collection walks through the process of converting a web page mockup into a fully functioning web page using CSS, HTML and JavaScript, as well as some of the most powerful and commonly used tools and techniques that layer on top of these three technologies.

Here are some of the key points we'll be covering:

How to use basic HTML tags and CSS properties

How to create semantic HTML

How to write more meaningful and sustainable CSS with SASS and SMACSS

How to create a responsive design with media queries

How to work with responsive images

How to improve collaboration and future-proof projects with package managers like Bower and Bundler

How to address accessibility concerns and use tools to audit the accessibility of your site

How to measure and improve front-end performance

How to use automation tools like Grunt

Who this collection is for

If you are seeking to learn modern front end development practices and tools in order to increase your value in the workplace or become more independent with your own projects, this collection was created with you in mind. Front end development is a highly sought-after skill set and is highly portable since it can be coupled with virtually any kind of back-end. Tools like Jekyll allow you to build content-rich sites without the need for a specific backend, and the focus in Drupal 8 on a 'headless Drupal' is allowing developers to leverage Drupal as a back end while still choosing the right tools to generate the HTML and CSS of the front end.

Prerequisites

We don't assume anything about your previous experience with HTML, CSS or JavaScript. We start from the very basics, but that doesn't stop us from exploring more advanced topics that are the staples for any modern front end developer. You should be able to come to the table with only the knowledge you've gained as a user of the web and still understand the steps we take and the rationale behind them.

It looks like there might be an issue playing videos in this browser. We're working on better cross-brower experience, but in the meantime please try the latest Chrome or Firefox browsers. Or, you may be able to watch the video directly without progress tracking or transcript: