Join MDN and developers like you at Mozilla's View Source conference, 12-14 September in Berlin, Germany. Learn more at https://viewsourceconf.org

Summary

The padding property sets the padding space on all sides of an element. The padding area is the space between the content of the element and its border. Negative values are not allowed.

The padding property is a shorthand to avoid setting each side separately (padding-top, padding-right, padding-bottom, padding-left).

Initial valueas each of the properties of the shorthand:
Applies toall elements, except table-row-group, table-header-group, table-footer-group, table-row, table-column-group and table-column. It also applies to ::first-letter.
Inheritedno
Percentagesrefer to the width of the containing block
Mediavisual
Computed valueas each of the properties of the shorthand:
  • padding-bottom: the percentage as specified or the absolute length
  • padding-left: the percentage as specified or the absolute length
  • padding-right: the percentage as specified or the absolute length
  • padding-top: the percentage as specified or the absolute length
Animatableyes, as a length
Canonical orderthe unique non-ambiguous order defined by the formal grammar

Syntax

/* Apply to all four sides */
padding: 1em;

/* vertical | horizontal */
padding: 5% 10%;

/* top | horizontal | bottom */
padding: 1em 2em 2em; 

/* top | right | bottom | left */
padding: 2px 1em 0 1em;

/* Global values */
padding: inherit;
padding: initial;
padding: unset;

Values

Specifies one, two, three or four of the following values:

<length>
Specifies a non-negative fixed width. See <length> for details.
<percentage>
With respect to the width of the containing block.
  • One single value applies to all 4 sides
  • Two values apply to 1. top and bottom and 2. to the left and right side
  • Three values apply to 1. top, 2. right and left and 3. to the bottom side
  • Four values apply to 1. top, 2. right, 3. bottom and 4. to the left side

Formal syntax

[ <length> | <percentage> ]{1,4}

Examples

 padding: 5%;                /* on all sides 5% padding */
 padding: 10px;              /* on all sides 10px padding */
 padding: 10px 20px;         /*  top and bottom 10px padding  */
                             /*  left and right 20px padding  */
 padding: 10px 3% 20px;      /*  top 10px padding          */
                             /*  left and right 3% padding */
                             /*  bottom 20px padding       */
 padding: 1em 3px 30px 5px;  /*  top    1em  padding  */
                             /*  right  3px  padding  */
                             /*  bottom 30px padding  */
                             /*  left   5px  padding  */

border:outset; padding:5% 1em;

Live Sample

HTML

<h4>Hello world!</h4>
<h3>The padding is different in this line.</h3>

CSS

h4{
  background-color: green;
  padding: 50px 20px 20px 50px;
}

h3{
  background-color: blue;
  padding: 400px 50px 50px 400px;
}

Live Sample Link

Specifications

Specification Status Comment
CSS Basic Box Model
The definition of 'padding' in that specification.
Working Draft No change
CSS Level 2 (Revision 1)
The definition of 'padding-top' in that specification.
Recommendation No change
CSS Level 1
The definition of 'padding' in that specification.
Recommendation Initial definition

Browser compatibility

Feature Chrome Firefox (Gecko) Internet Explorer Opera Safari (WebKit)
Basic support 1.0 1.0 (1.0) 4.0 3.5 1.0 (85)
Feature Android Firefox Mobile (Gecko) IE Phone Opera Mobile Safari Mobile
Basic support ? ? ? ? ?

See also