CSS Padding and Margin

The padding and margin properties are used to control space. The margin controls the outside space of an element and the padding controls the inside space.

Padding

The padding will specify the space inside an element. If you increase the space it will be further away from the border, and if you decrease it the opposite will happen. Take this example with no padding:

t cursus. Proin pellentesque nunc sit amet mi tincidunt non imperdiet lorem accumsan. Nunc quam diam, tempor vitae mollis eget, mattis sit amet tellus. Aliquam nec dui nulla, id hendrerit erat. Etiam facilisis congue nisi, id cursus sapien imperdiet in. Fusce ac arcu lectus, ut iaculis urna. Vestibulum orci massa, sollicitudin consectetur condimentum id, imperdiet non ligula. Maecenas gravida tristique lacus imperdiet sagittis. Donec semper, lorem at semper tincidunt, orci neque adipiscing metus, et congue massa libero quis turpis. Nulla eget pharetra arcu. Vestibulum ac sodales nunc. Duis dictum tortor sit amet dolor iaculis ut tempor leo congue. Aenean an

You can see how the content touches the border.

Syntax

selector {padding:integer px or %}

It is preferable to use px or %.

Example

div {padding:10px;}

Output

t cursus. Proin pellentesque nunc sit amet mi tincidunt non imperdiet lorem accumsan. Nunc quam diam, tempor vitae mollis eget, mattis sit amet tellus. Aliquam nec dui nulla, id hendrerit erat. Etiam facilisis congue nisi, id cursus sapien imperdiet in. Fusce ac arcu lectus, ut iaculis urna. Vestibulum orci massa, sollicitudin consectetur condimentum id, imperdiet non ligula. Maecenas gravida tristique lacus imperdiet sagittis. Donec semper, lorem at semper tincidunt, orci neque adipiscing metus, et congue massa libero quis turpis. Nulla eget pharetra arcu. Vestibulum ac sodales nunc. Duis dictum tortor sit amet dolor iaculis ut tempor leo congue. Aenean an

Here you can see how the content is more spaced out and is not touching the border. This padding property applies the padding all over: top, bottom, right and left. You can avoid this and only apply it to the top or bottom.

Example

div {padding-left:10px;}

This applies the padding to the left only, and you can do the same for the top, bottom and right. Simply change padding-left to padding-top, right or bottom.

Output

t cursus. Proin pellentesque nunc sit amet mi tincidunt non imperdiet lorem accumsan. Nunc quam diam, tempor vitae mollis eget, mattis sit amet tellus. Aliquam nec dui nulla, id hendrerit erat. Etiam facilisis congue nisi, id cursus sapien imperdiet in. Fusce ac arcu lectus, ut iaculis urna. Vestibulum orci massa, sollicitudin consectetur condimentum id, imperdiet non ligula. Maecenas gravida tristique lacus imperdiet sagittis. Donec semper, lorem at semper tincidunt, orci neque adipiscing metus, et congue massa libero quis turpis. Nulla eget pharetra arcu. Vestibulum ac sodales nunc. Duis dictum tortor sit amet dolor iaculis ut tempor leo congue. Aenean an

You can see the content does not touch the left border but is still very close to the top and bottom.

Margin

The margin will specify the space outside of an element and how far or near it is to surrounding elements. Take this  example:

t cursus. Proin pellentesque nunc sit amet mi tincidunt non imperdiet lorem accumsan. Nunc quam diam, tempor vitae mollis eget, mattis sit amet tellus. Aliquam nec dui nulla, id hendrerit erat. Etiam facilisis congue nisi, id cursus sapien imperdiet in. Fusce ac arcu lectus, ut iaculis urna. Vestibulum orci massa, sollicitudin consectetur condimentum id, imperdiet non ligula. Maecenas gravida tristique lacus imperdiet sagittis. Donec semper, lorem at semper tincidunt, orci neque adipiscing metus, et congue massa libero quis turpis. Nulla eget pharetra arcu. Vestibulum ac sodales nunc. Duis dictum tortor sit amet dolor iaculis ut tempor leo congue. Aenean an

You can see how the black div is touching the red div. They are both close to each other, however we can apply a margin to the black div and make some space.

Example

div {margin:10px;}

Output

t cursus. Proin pellentesque nunc sit amet mi tincidunt non imperdiet lorem accumsan. Nunc quam diam, tempor vitae mollis eget, mattis sit amet tellus. Aliquam nec dui nulla, id hendrerit erat. Etiam facilisis congue nisi, id cursus sapien imperdiet in. Fusce ac arcu lectus, ut iaculis urna. Vestibulum orci massa, sollicitudin consectetur condimentum id, imperdiet non ligula. Maecenas gravida tristique lacus imperdiet sagittis. Donec semper, lorem at semper tincidunt, orci neque adipiscing metus, et congue massa libero quis turpis. Nulla eget pharetra arcu. Vestibulum ac sodales nunc. Duis dictum tortor sit amet dolor iaculis ut tempor leo congue. Aenean an

They are clearly separated now, and we also applied a padding to the black div of 10 pixels. Like before, you can also have margin-left, right, top or bottom.

Short-Hand

You can use CSS short-hand to type fewer properties. For example, take something something like this:

padding-left:10px;
padding-right:10px;
padding-top:2px;

You can instead do this:

Example 1

padding: 2px 10px 0 10px;

The order is top, right, bottom left. You can do the same for the margin property.

Example 2

margin: 5px 10px;

This applies 5px to margin top and bottom and 10px to margin left and right. The same can be done for padding.