Start learning with our library of video tutorials taught by experts. Get started
Viewers: in countries Watching now:
CSS enables you to control the look and layout of a web page much more precisely than you could with HTML alone, but it can be time-consuming to learn. In this workshop, expert developer Candyce Mairs makes styling a quick and easy process, walking you through the process of adding content to a web page and using CSS to position that content. Candyce explains CSS positioning concepts like the CSS box model, floats, and clears and demonstrates how HTML and CSS work together to create the look of your web page. By speaking the same language as the browser, you can learn to work with the browser to place content accurately and easily.
What we're going to take a look at now is the most important concept in CSS Positioning. And that is, the CSS Box Model. Right now, I'm within the Code tab within the Coffee Cup editor. And what I want to do is go back to My Websites. Within the course files, I do have a file that can be used to demonstrate and play with the CSS Box Model. And it's appropriately named the CSS Box Model.
And what I'm going to do is open up this page. And let's take a look at the code within the page, and how it's set up. And then we'll move out to the Firefox browser, and take a look at it and play with it using Firebug. So, right now, down within the body of our page, we have a DIV tag. We have an outer DIV tag and notice this is inside those two tags. So our header box is sitting inside our outer box. Now, that's the HTML side of things.
If I move up to the CSS piece. I have the outer box defined in CSS. It has a width of 700 pixels, a height of 500 pixels, and it is gray. Our header is very similar but it has a light blue background, so you can distinguish between the two. This pound sign in frotn of the name of that ID tells CSS it's an ID we're referencing.
And this entire piece in front of the curly brackets is known as the selector. So let's go take a look at this page in the Firefox browser. And the reason I'm choosing that browser is because I want to use Firebug, which I've installed within Firefox. It's a very handy way to visually demonstrate the CSS Box Model. So here is my header box, which is light blue. And that is located inside my outer box. So I'm going to turn on Firebug.
Now this is a Firefox extension that I installed separately from Firefox. I also put an icon up here. When you first install it, the icon is down in this bottom right corner. And I know its somewhat difficult for you to see that I'm doing that so I moved it up to here. So, click on that. What firebug does is give you some options for working with your web page. So the web page is up at the top and Firebug is down at the bottom. And what I'm going to do is click on the Layout tab over here. And what this does is show me the box model.
The idea behind this is everything is a box in the HTML window. This box has as an interior size, and right now this is showing us that our page width is 1247 pixels. Now if you notice as I move around, things kind of show up differently. I'll explain that in just a minute. The idea behind this is our box is 1247 pixels wide. The box that's being shown is the entire webpage we're looking at because I have the entire body text selected. What I'm going to do is open this up, and if I click on this div tag. Notice my box is now 700 by 500.
Which is the exact size of the outer box div. And you can see when I select that, it shows you it's exactly 700 wide. If you look at the ruler, when I cover over this, you'll see it's out to 700. As I hover over different features in the browser window. This automatically gives me the information for them. And if I click on the word div, or whatever the tag is, it shows me that specific information. So right now my Header Area is 700 pixels wide.
So notice that once I have the Header div selected. It just shows me this tiny little box in the middle. Every box of content on your web page including every HTML tag also has padding features, border features, and margin features. And we refer to those specific features as properties when we're talking about CSS. So my box has a width of 700, padding is 0, border and margin are the same.
Now watch what happens to my box, I can literally edit it right here. So, I'll make my left padding 20. Now notice what Firebug did, it added a style of 20 pixels of padding. And note what happened to my box, it is bigger now than the outer box that contains it. And that's because, padding added 20 pixels of width to the 700 width that my content is. So, if I reset my width here back to 680, in other words, I added 20 pixels of padding.
So, if I want to keep it within a 700 pixel area, I need to subtract that 20 from 700, and now my box still takes up 700 pixels of width, and you can see it does. Now let me reset the content area here, back to 700. And let's take a look at what happens if I add a border of 5. I add a margin here, let me do the left side, and let's do a margin of 20 as well.
I've added a border, looks like my border didn't stick, of 5. Now, how wide is my actual box? And then I could do the same thing over here, border of 5. This one I'll add. Let's see, this one was was 20 on the other side, and I also need a right padding of 20. Now, the width of my box did not change. Notice it still says 700. But it is not taking up 700 anymore, it's taking up a lot more than that. And each one of these colors represents that specific property. You can see as I move around here, it shows me different pieces. So how come my box is now so wide? Anytime you add padding, border, or margin to a box.
You are adding to the width that, that box takes up within the browser window. You are not changing anything with regards to the width. So I have added 20 plus 20, plus 20, plus 20. So I've added 80 pixels of width to my box. So it's actually taking up 780 pixels. Now if I want to make sure. That my header stays within the 700. I have to take that 80 and subtract it from my width here. So if I subtract 80, go down to 620, notice, now my box is contained. Here's my 20 pixels of padding on each side.
What you have to keep in mind when you are planning your pages is if you plan to add padding, border, or margin to any type of content. You must take that into account when you set up your width. And I'll set this back to 700. Whoops don't think we need 7,000. And I'll delete these, set it back to 0. Now I am editing right within the browser here so what that does is allow me to play with this page but it does not affect my actual page within whatever editor I'm working in.
I'm just playing with this version of the page. So if I had kept these with those changes it would not have changed my actual web page. It just allows you to play and visually see what's going on. This is a great debugging tool. In case things are not working the way you want, just open up Firebug and it allows you to help debug what's going on within your CSS. But that is the CSS Box Model, when planning out your webpages, based on your designs, just keep in mind, you have to reduce the width every time you add padding, border or margin.
Or your actual page content will expand beyond the width. So that is the CSS Box Model in action.
There are currently no FAQs about Exploring CSS Positioning.
Access exercise files from a button right under the course name.
Search within course videos and transcripts, and jump right to the results.
Remove icons showing you already watched videos if you want to start over.
Make the video wide, narrow, full-screen, or pop the player out of the page into its own window.
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.