The border-top
CSS property is a shorthand that sets the values of border-top-color
, border-top-style
, and border-top-width
. These properties describe an element's top border
.
border-top: 1px; border-top: 2px dotted; border-top: medium dashed green;
As with all shorthand properties, border-top
always sets the values of all of the properties that it can set, even if they are not specified. It sets those that are not specified to their default values. This means that ...
border-top-style: dotted; border-top: thick green;
... is actually the same as ...
border-top-style: dotted; border-top: none thick green;
... and the value of border-top-style
given before border-top
is ignored. Since the default value of border-top-style
is none
, not specifying the border-style part results in no border.
Initial value | as each of the properties of the shorthand:
|
---|---|
Applies to | all elements. It also applies to ::first-letter . |
Inherited | no |
Media | visual |
Computed value | as each of the properties of the shorthand:
|
Animation type | as each of the properties of the shorthand:
|
Canonical order | order of appearance in the formal grammar of the values |
Syntax
The three values of the shorthand property can be specified in any order, and one or two of them may be omitted.
Values
<br-width>
- See
border-top-width
. <br-style>
- See
border-top-style
. <color>
- See
border-top-color
.
Formal syntax
<br-width> || <br-style> || <color>where
<br-width> = <length> | thin | medium | thick
<br-style> = none | hidden | dotted | dashed | solid | double | groove | ridge | inset | outset
<color> = <rgb()> | <rgba()> | <hsl()> | <hsla()> | <hex-color> | <named-color> | currentcolor | <deprecated-system-color>where
<rgb()> = rgb( [ [ <percentage>{3} | <number>{3} ] [ / <alpha-value> ]? ] | [ [ <percentage>#{3} | <number>#{3} ] , <alpha-value>? ] )
<rgba()> = rgba( [ [ <percentage>{3} | <number>{3} ] [ / <alpha-value> ]? ] | [ [ <percentage>#{3} | <number>#{3} ] , <alpha-value>? ] )
<hsl()> = hsl( [ <hue> <percentage> <percentage> [ / <alpha-value> ]? ] | [ <hue>, <percentage>, <percentage>, <alpha-value>? ] )
<hsla()> = hsla( [ <hue> <percentage> <percentage> [ / <alpha-value> ]? ] | [ <hue>, <percentage>, <percentage>, <alpha-value>? ] )where
<alpha-value> = <number> | <percentage>
<hue> = <number> | <angle>
Example
<div> This box has a border on the top side. </div>
div { border-top: 4px dashed blue; background-color: gold; height: 100px; width: 100px; font-weight: bold; text-align: center; }
Specifications
Specification | Status | Comment |
---|---|---|
CSS Backgrounds and Borders Module Level 3 The definition of 'border-top' in that specification. |
Candidate Recommendation | No direct changes, though the modification of values for the border-top-color do apply to it. |
CSS Level 2 (Revision 1) The definition of 'border-top' in that specification. |
Recommendation | No significant changes. |
CSS Level 1 The definition of 'border-top' in that specification. |
Recommendation | Initial definition. |
Browser compatibility
Feature | Chrome | Edge | Firefox (Gecko) | Internet Explorer | Opera | Safari (WebKit) |
---|---|---|---|---|---|---|
Basic support | 1.0 | (Yes) | 1.0 (1.7 or earlier) | 4 | 3.5 | 1.0 (85) |
Feature | Android | Edge | Firefox Mobile (Gecko) | IE Phone | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|
Basic support | 1.0 | (Yes) | 1.0 (1.0) | (Yes) | (Yes) | (Yes) |