border
border
shorthand CSS 屬性可用來設定元素的邊框。它可以設定以下的值 border-width
(en-US)、border-style
(en-US) 以及 border-color
。
嘗試一下
As with all shorthand properties, any omitted sub-values will be set to their initial value (en-US). Importantly, border
cannot be used to specify a custom value for border-image
, but instead sets it to its initial value, i.e., none
.
The border
shorthand is especially useful when you want all four borders to be the same. To make them different from each other, however, you can use the longhand border-width
(en-US), border-style
(en-US), and border-color
properties, which accept different values for each side. Alternatively, you can target one border at a time with the physical (e.g., border-top
(en-US) ) and logical (e.g., border-block-start
(en-US)) border properties.
Borders vs. outlines
Borders and outlines (en-US) are very similar. However, outlines differ from borders in the following ways:
- Outlines never take up space, as they are drawn outside of an element's content.
- According to the spec, outlines don't have to be rectangular, although they usually are.
Syntax
/* style */
border: solid;
/* width | style */
border: 2px dotted;
/* style | color */
border: outset #f33;
/* width | style | color */
border: medium dashed green;
/* Global values */
border: inherit;
border: initial;
border: unset;
The border
property may be specified using one, two, or three of the values listed below. The order of the values does not matter.
備註: The border will be invisible if its style is not defined. This is because the style defaults to none
.
Values
<line-width>
-
Sets the thickness of the border. Defaults to
medium
if absent. Seeborder-width
(en-US). <line-style>
-
Sets the style of the border. Defaults to
none
if absent. Seeborder-style
(en-US). <color>
(en-US)-
Sets the color of the border. Defaults to
currentcolor
if absent. Seeborder-color
.
Formal syntax
border =
<line-width> || (en-US)
<line-style> || (en-US)
<color> (en-US)
<line-width> =
<length [0,∞]> (en-US) | (en-US)
thin | (en-US)
medium | (en-US)
thick
<line-style> =
none | (en-US)
hidden | (en-US)
dotted | (en-US)
dashed | (en-US)
solid | (en-US)
double | (en-US)
groove | (en-US)
ridge | (en-US)
inset | (en-US)
outset
Example
HTML
<div>I have a border, an outline, AND a box shadow! Amazing, isn't it?</div>
CSS
div {
border: 0.5rem outset pink;
outline: 0.5rem solid khaki;
box-shadow: 0 0 0 2rem skyblue;
border-radius: 12px;
font: bold 1rem sans-serif;
margin: 2rem;
padding: 1rem;
outline-offset: 0.5rem;
}
Result
Specifications
Specification |
---|
CSS Backgrounds and Borders Module Level 3 # propdef-border |
預設值 (en-US) | as each of the properties of the shorthand:
|
---|---|
Applies to | all elements. It also applies to ::first-letter . |
繼承與否 | no |
Computed value (en-US) | as each of the properties of the shorthand:
|
Animation type | as each of the properties of the shorthand:
|
Browser compatibility
BCD tables only load in the browser