GeezerVisonThe World Wide Web, restored to 800 pixels of glory. | |||||||||||||||||||||||||||||||||||
| Home|About|Gaming cabinet|Archives|How it works|Starter sites | |||||||||||||||||||||||||||||||||||
GeezerVison is showing developer.mozilla.org — border-radius CSS property - CSS | MDN
|
| radius | ![]() |
Is a <length> or a
<percentage> denoting a radius to use
for the border in each corner of the border. It is used only in the
one-value syntax.
|
| top-left-and-bottom-right |
|
Is a <length> or a
<percentage> denoting a radius to use
for the border in the top-left and bottom-right corners of the element's
box. It is used only in the two-value syntax.
|
| top-right-and-bottom-left |
|
Is a <length> or a
<percentage> denoting a radius to use
for the border in the top-right and bottom-left corners of the element's
box. It is used only in the two- and three-value syntaxes.
|
| top-left | ![]() |
Is a <length> or a
<percentage> denoting a radius to use
for the border in the top-left corner of the element's box. It is used
only in the three- and four-value syntaxes.
|
| top-right | ![]() |
Is a <length> or a
<percentage> denoting a radius to use
for the border in the top-right corner of the element's box. It is used
only in the four-value syntax.
|
| bottom-right | ![]() |
Is a <length> or a
<percentage> denoting a radius to use
for the border in the bottom-right corner of the element's box. It is
used only in the three- and four-value syntaxes.
|
| bottom-left | ![]() |
Is a <length> or a
<percentage> denoting a radius to use
for the border in the bottom-left corner of the element's box. It is
used only in the four-value syntax.
|
<length>Denotes the size of the circle radius, or the semi-major and semi-minor axes of the ellipse, using length values. Negative values are invalid.
<percentage>Denotes the size of the circle radius, or the semi-major and semi-minor axes of the ellipse, using percentage values. Percentages for the horizontal axis refer to the width of the box; percentages for the vertical axis refer to the height of the box. Negative values are invalid.
For example:
border-radius: 1em / 5em;
/* It is equivalent to: */
border-top-left-radius: 1em 5em;
border-top-right-radius: 1em 5em;
border-bottom-right-radius: 1em 5em;
border-bottom-left-radius: 1em 5em;
border-radius: 4px 3px 6px / 2px 4px;
/* It is equivalent to: */
border-top-left-radius: 4px 2px;
border-top-right-radius: 3px 4px;
border-bottom-right-radius: 6px 2px;
border-bottom-left-radius: 3px 4px;
The radius applies to the whole background, even if the element has no border; the exact position of the clipping is defined by the background-clip property.
The border-radius property does not apply to table elements when border-collapse is collapse.
Note:
As with any shorthand property, individual sub-properties cannot inherit, such as in border-radius:0 0 inherit inherit, which would partially override existing definitions. Instead, the individual longhand properties have to be used.
| Initial value | as each of the properties of the shorthand: |
|---|---|
| Applies to | all elements; but User Agents are not required to apply to table and inline-table elements when border-collapse is collapse. The behavior on internal table elements is undefined for the moment.. It also applies to ::first-letter. |
| Inherited | no |
| Percentages | refer to the corresponding dimension of the border box |
| Computed value | as each of the properties of the shorthand:
|
| Animation type | as each of the properties of the shorthand:
|
border-radius =
<length-percentage [0,∞]>{1,4} [ / <length-percentage [0,∞]>{1,4} ]?
<length-percentage> =
<length> |
<percentage>
The following example has seven <pre> elements, each of which demonstrates combinations of border and border-radius styles.
The styles applied to each <pre> element are included as the element's contents, so you can see the CSS declarations necessary to create the associated border style:
<pre id="example-1">
border: solid 10px;
border-radius: 10px 40px 40px 10px;
</pre>
<pre id="example-2">
border: groove 1em red;
border-radius: 2em;
</pre>
<pre id="example-3">
background: gold;
border: ridge gold;
border-radius: 13em / 3em;
</pre>
<pre id="example-4">
border: none;
border-radius: 40px 10px;
background: gold;
</pre>
<pre id="example-5">
border: none;
border-radius: 50%;
background: burlywood;
</pre>
<pre id="example-6">
border: dotted;
border-width: 10px 4px;
border-radius: 10px 40px;
</pre>
<pre id="example-7">
border: dashed;
border-width: 2px 4px;
border-radius: 40px;
</pre>
pre {
margin: 20px;
padding: 20px;
width: 80%;
height: 50px;
}
pre#example-1 {
border: solid 10px;
border-radius: 10px 40px 40px 10px;
}
pre#example-2 {
border: groove 1em red;
border-radius: 2em;
}
pre#example-3 {
background: gold;
border: ridge gold;
border-radius: 13em / 3em;
}
pre#example-4 {
border: none;
border-radius: 40px 10px;
background: gold;
}
pre#example-5 {
border: none;
border-radius: 50%;
background: burlywood;
}
pre#example-6 {
border: dotted;
border-width: 10px 4px;
border-radius: 10px 40px;
}
pre#example-7 {
border: dashed;
border-width: 2px 4px;
border-radius: 40px;
}
corner-shape with border-radiusWhen a non-0 border-radius value is applied to a box corner, you can use the corner-shape property (or one of its longhands and shorthands) to apply custom shapes to that corner, such as a bevel, notch, or squircle. This example demonstrates corner-shape usage.
The markup for this example contains a single <div> element.
<div></div>
We give the box some basic styles, which we've hidden for brevity. We also apply a box-shadow, a border-radius of 0 20% 50px 30%, and a corner-shape of superellipse(0.5) bevel notch squircle.
body {
font-family: "Helvetica", "Arial", sans-serif;
width: 240px;
margin: 20px auto;
}
div {
width: 100%;
height: 180px;
display: flex;
justify-content: center;
align-items: center;
background-color: green;
background-image: linear-gradient(
to bottom,
rgb(255 255 255 / 0),
rgb(255 255 255 / 0.5)
);
}
div {
box-shadow: 1px 1px 3px gray;
border-radius: 0 20% 50px 30%;
corner-shape: superellipse(0.5) bevel notch squircle;
}
The rendered result looks like this:
Note how no corner shape is applied to the top-left corner, because it has a border-radius of 0 set.
| Specification |
|---|
| CSS Backgrounds and Borders Module Level 3 # propdef-border-radius |
border-top-left-radius, border-top-right-radius, border-bottom-right-radius, border-bottom-left-radius, border-start-start-radius, border-start-end-radius, border-end-start-radius, border-end-end-radius