Easy-to-follow video tutorials help you learn software, creative, and business skills.Become a member

Sizing fonts

From: CSS Web Site Design

Video: Sizing fonts

In this video we're going to talk about sizing fonts and this is a subject that could rightfully occupy it's own book probably or an entire video title, just talking about fonts and font sizing and all of the ins and outs, but the basics are really very simple. You can make an element have a font size that's either a specific length, let's say 12 pixels or is related to its parent element. That's a good starting point. Let's take the h1 in the content area and the content, main content, of the document, give it a font let's say 200 pixels and what this means is the font size of this h1 should be 200% the font size of that h1's parent element.

Sizing fonts

In this video we're going to talk about sizing fonts and this is a subject that could rightfully occupy it's own book probably or an entire video title, just talking about fonts and font sizing and all of the ins and outs, but the basics are really very simple. You can make an element have a font size that's either a specific length, let's say 12 pixels or is related to its parent element. That's a good starting point. Let's take the h1 in the content area and the content, main content, of the document, give it a font let's say 200 pixels and what this means is the font size of this h1 should be 200% the font size of that h1's parent element.

If we scroll down a bit we see this h1 right here. Its parent element is actually the div with the id of content, so the font size of the h1 will be 200% the font size of the div with the id of content. And if we load, there you go, it's twice the size, 200% or twice the size. What I just didn't in CSS terms is exactly functionally equivalent to saying 2em, 2em, 200% either way it's twice the size of the parent element. So I could do content h2, font size 1.5em or 150%.

And then there we go that's the h2's parent element again is that div with the id of content. So the h2 will be half again as big or 1 1/2 times the font size for that div. Now, you are not constrained to ems and percentages, you could for example say I want font size of paragraphs to be smaller, and that would make them smaller. Again, this is related to the parent elements, so if these paragraphs whose parent is that content div the font size of the paragraphs is smaller than that of the content div, but how much smaller isn't explicitly defined by the CSS specification is simply has to be smaller, it could be just a little tiny bit smaller, it could be a whole lot smaller. In practice, smaller usually comes out to be around 0.85em but it's not always precisely equivalent and I would be nice if at this point I could say and here are the situations in which there are differences, but it's not quite that simple.

The algorithms don't seem to be that easily analyzable. So, you just sort of taken off if the font size is around 0.85em in terms of its effects and you say things like smaller because you don't really care exactly how much smaller the paragraph's font size is going to be or whatever element, you don't care how much smaller is going to be, it just needs to be smaller. There's also larger, not bigger, but larger which is the opposite effect, it's larger than it's parent element's font size. How much larger? Not really specified.

usually in the vicinity of around 1 1/4 to 1.2em 120% to 125%, but that's not guaranteed, it could be 133% in some obscure browser you never heard of. So, using things like smaller and larger again only if you don't care to be very precise about how much smaller or larger a font size should be because we can see here, let's say font size 85%. That's very similar to smaller, but did you notice there was a slight difference there, very slight.

If we go from smaller back to 85% I'm going to hit Reload and watch right in the first paragraph right sort of near the fourth line or so. See that, is this tiny little change. That's what I mean, it's very difficult to analyze exactly what's going on there. There are other keywords besides larger and smaller. There's also just plain old small font size small, which you might say okay, that's exactly the same as smaller but not really because suppose instead of making the paragraph font size small I just make the body font size small and you'll notice everything sort of skills in relation to that.

Basically there are seven keywords they go X.X.small for extra extra small, x.small, small, medium, large, x.large and x.x.large, and exactly what those correspond to is left up to each individual browser. Every browser could do x.x.large as a completely different size, as long as x.x.large was larger than x.large which was in turn larger than large, which was larger than medium and so on. The default, according to CSS for font size, is medium that should give you whatever the default is for your browser and small should be smaller than that.

You can use keywords, you can use percentages, you can use ems if you like. There's one thing to watch out for though. I'm going to back to same body font size small and I'm going to say paragraph font size 85%. Notice that the paragraphs have gotten tinier. Here is the reason, because the body has been set to a font size off small. Alright, and so that gets inherited by it's descended elements, so the content div inherits the font size of small and then the h1 sets itself to be twice whatever small means and the h2 sets itself to be 150% whatever small means. The paragraphs sets itself to be 85% of small so what I've really done I've said ok, make the body small but then make the paragraph smaller than that.

Alright, if I were to take this even further and do something you know, potentially disastrous like content font-size smaller the paragraphs get teeny teeny tiny and nobody can read them. This is entirely possible, so one of the things you want to watch out for with font sizes is it if you have situations where you're accidentally nesting changes in font size you can get these sort of runaway effects. Now there are some web browsers that will enforce minimum font sizes. Safari, for example, on the Macintosh has a- will let you stop smallest of text, basically you can say it 9 pixels or 8 pixels or whatever size. Don't make text any smaller. I don't care what the CSS says, but other browsers for example Firefox here don't have those kinds of limits so, if we squint really hard and we pretend that that this was all written by houseflies, we can sort of make out that it says the history of tea extends so far into the past that it's very origins are shrouded by legend, but of course part of that is the fact that I'm very familiar with this text and so I can't make out what it says, you would never ever want to present this to a user.

So, there's no particular fix for this, necessarily, except being careful and not nesting relative changes in font size. You might think to yourself, well geez, why would I ever do that? Who would ever get caught by that? That's actually easier than you think because suppose you had a series of nested lists, lists inside of lists inside of lists and an outline of something like a core syllabus and you said all unordered lists should be a font size of smaller or an unordered list should have a font size of 85%. Well, a third level nested list would be 85% of 85% of 85%, which is teeny tiny and basically unreadable.

So that's something you want to watch out for font sizing. So, like I say, I mean the basic of font sizing are very simple. But sort of these combinations of being careful about nesting and the fact that if you have things get smaller and smaller and smaller things can become unreadable. That's where there's really no substitute except a lot of experience at doing this sort of things and there can be an entire training course and book just about fonts and font sizing and so, absent that, making mistakes is actually the best way to learn and believe me I have made many many font sizing mistakes in my career and still do on occasion, it can be easy, even if you're someone who's done it for very long time to forget that Oh that's right, I do have three levels of nested lists and so when I made this font size change I didn't really think about what the effect would be.

There is a, I'll just give you a quick tip. Suppose you want your list to be smaller for some reason. But you want all your lists to be the same size, right now they're just getting smaller and smaller and smaller the further you nest them, but with the descendent selector you can do this. So, any unordered list should have a font-size as smaller, but any unordered list that's inside an unordered list should have a font size of 1em, which basically stops that whole smaller thing so the top-level unordered list becomes smaller within any nested lists inside of it with the font size 1em, basically pick-up what smaller meant and they all stay the same size consistently.

So just a little tip there, something that I picked up through years and years of font sizing mistakes and hopefully will allow you to avoid making many of the same mistakes.

Show transcript

This video is part of

Image for CSS Web Site Design
CSS Web Site Design

73 video lessons · 60924 viewers

Eric Meyer
Author

 
Expand all | Collapse all
  1. 14m 34s
    1. Welcome
      28s
    2. What is CSS?
      5m 34s
    3. Design tour
      2m 38s
    4. Using the exercise files
      1m 20s
    5. Installing the Web Developer toolbar
      4m 34s
  2. 25m 56s
    1. XHTML essentials
      3m 55s
    2. CSS essentials
      5m 17s
    3. Embedded style sheets
      2m 20s
    4. Linking a style sheet
      2m 19s
    5. Linking to multiple style sheets
      2m 20s
    6. Using linked and embedded style sheets together
      4m 21s
    7. Using imported style sheets
      5m 24s
  3. 57m 48s
    1. ID selector essentials
      6m 38s
    2. Class selector essentials
      4m 9s
    3. Best practices for classes
      4m 52s
    4. Grouped selection
      4m 2s
    5. Descendant selectors
      6m 44s
    6. The sources of style
      6m 38s
    7. Specificity
      8m 21s
    8. Making things important
      4m 32s
    9. Inheritance essentials
      5m 12s
    10. Making things really unstyled
      4m 2s
    11. User style sheets
      2m 38s
  4. 39m 3s
    1. Box model essentials
      7m 35s
    2. Simple floating
      5m 3s
    3. Using float for layout
      5m 5s
    4. Fixing column drop
      5m 35s
    5. Clearing essentials
      4m 20s
    6. Float containment
      6m 35s
    7. Creating a navbar from a list
      4m 50s
  5. 38m 3s
    1. Coloring text
      4m 13s
    2. Defining color in CSS
      8m 12s
    3. Coloring backgrounds
      6m 35s
    4. Applying background images
      4m 19s
    5. Manipulating the direction of background images
      2m 52s
    6. Positioning backgrounds
      7m 23s
    7. Background shorthand
      4m 29s
  6. 58m 28s
    1. Altering line height
      7m 32s
    2. Font style and weight
      5m 45s
    3. Sizing fonts
      9m 59s
    4. Using font families
      10m 38s
    5. Font shorthand
      6m 5s
    6. Justifying text
      4m 56s
    7. Vertically aligning text
      4m 22s
    8. Transforming text
      3m 49s
    9. Text decoration
      5m 22s
  7. 44m 40s
    1. Margin essentials
      14m 21s
    2. Adding borders
      6m 52s
    3. Padding
      9m 17s
    4. Using negative margins
      7m 19s
    5. Margin collapsing
      6m 51s
  8. 20m 38s
    1. Styling tables and captions
      5m 23s
    2. Styling table cells
      6m 30s
    3. Styling a column with classes
      4m 51s
    4. Styling links inside table cells
      3m 54s
  9. 30m 40s
    1. Styling for specific mediums
      4m 3s
    2. Creating a print style sheet
      6m 35s
    3. Hiding layout for print
      4m 11s
    4. Styling for print
      6m 34s
    5. Complex styling for print
      4m 37s
    6. Creating a footer
      4m 40s
  10. 37m 23s
    1. Getting started
      1m 11s
    2. Setting global styles
      4m 4s
    3. Defining masthead and navbar colors
      3m 27s
    4. Layout of the navlink bar
      3m 38s
    5. Using columns
      4m 49s
    6. Setting content styles
      1m 53s
    7. Creating the sidebar boxes
      5m 42s
    8. Creating the sidebar form
      3m 23s
    9. Completing the sidebar
      3m 29s
    10. Making a table
      3m 12s
    11. Creating a footer
      2m 35s
  11. 1m 28s
    1. Goodbye
      1m 28s

Start learning today

Get unlimited access to all courses for just $25/month.

Become a member
Sometimes @lynda teaches me how to use a program and sometimes Lynda.com changes my life forever. @JosefShutter
@lynda lynda.com is an absolute life saver when it comes to learning todays software. Definitely recommend it! #higherlearning @Michael_Caraway
@lynda The best thing online! Your database of courses is great! To the mark and very helpful. Thanks! @ru22more
Got to create something yesterday I never thought I could do. #thanks @lynda @Ngventurella
I really do love @lynda as a learning platform. Never stop learning and developing, it’s probably our greatest gift as a species! @soundslikedavid
@lynda just subscribed to lynda.com all I can say its brilliant join now trust me @ButchSamurai
@lynda is an awesome resource. The membership is priceless if you take advantage of it. @diabetic_techie
One of the best decision I made this year. Buy a 1yr subscription to @lynda @cybercaptive
guys lynda.com (@lynda) is the best. So far I’ve learned Java, principles of OO programming, and now learning about MS project @lucasmitchell
Signed back up to @lynda dot com. I’ve missed it!! Proper geeking out right now! #timetolearn #geek @JayGodbold
Share a link to this course

What are exercise files?

Exercise files are the same files the author uses in the course. Save time by downloading the author's files instead of setting up your own files, and learn by following along with the instructor.

Can I take this course without the exercise files?

Yes! If you decide you would like the exercise files later, you can upgrade to a premium account any time.

Become a member Download sample files See plans and pricing

Please wait... please wait ...
Upgrade to get access to exercise files.

Exercise files video

How to use exercise files.

Learn by watching, listening, and doing, Exercise files are the same files the author uses in the course, so you can download them and follow along Premium memberships include access to all exercise files in the library.


Exercise files

Exercise files video

How to use exercise files.

For additional information on downloading and using exercise files, watch our instructional video or read the instructions in the FAQ.

This course includes free exercise files, so you can practice while you watch the course. To access all the exercise files in our library, become a Premium Member.

Join now "Already a member? Log in

Are you sure you want to mark all the videos in this course as unwatched?

This will not affect your course history, your reports, or your certificates of completion for this course.


Mark all as unwatched Cancel

Congratulations

You have completed CSS Web Site Design.

Return to your organization's learning portal to continue training, or close this page.


OK
Become a member to add this course to a playlist

Join today and get unlimited access to the entire library of video courses—and create as many playlists as you like.

Get started

Already a member?

Become a member to like this course.

Join today and get unlimited access to the entire library of video courses.

Get started

Already a member?

Exercise files

Learn by watching, listening, and doing! Exercise files are the same files the author uses in the course, so you can download them and follow along. Exercise files are available with all Premium memberships. Learn more

Get started

Already a Premium member?

Exercise files video

How to use exercise files.

Ask a question

Thanks for contacting us.
You’ll hear from our Customer Service team within 24 hours.

Please enter the text shown below:

The classic layout automatically defaults to the latest Flash Player.

To choose a different player, hold the cursor over your name at the top right of any lynda.com page and choose Site preferencesfrom the dropdown menu.

Continue to classic layout Stay on new layout
Exercise files

Access exercise files from a button right under the course name.

Mark videos as unwatched

Remove icons showing you already watched videos if you want to start over.

Control your viewing experience

Make the video wide, narrow, full-screen, or pop the player out of the page into its own window.

Interactive transcripts

Click on text in the transcript to jump to that spot in the video. As the video plays, the relevant spot in the transcript will be highlighted.

Are you sure you want to delete this note?

No

Your file was successfully uploaded.

Thanks for signing up.

We’ll send you a confirmation email shortly.


Sign up and receive emails about lynda.com and our online training library:

Here’s our privacy policy with more details about how we handle your information.

Keep up with news, tips, and latest courses with emails from lynda.com.

Sign up and receive emails about lynda.com and our online training library:

Here’s our privacy policy with more details about how we handle your information.

   
submit Lightbox submit clicked
Terms and conditions of use

We've updated our terms and conditions (now called terms of service).Go
Review and accept our updated terms of service.