border-radius

要素の角を丸くして角丸にします。
CSS3より追加された属性です。
border-radius: 10px;
■ 表示される内容
これは要素の4隅を半径10ピクセルの曲線で丸くする記述です。

また、border-radiusは4隅の角にそれぞれ別の大きさの角丸を設定することができます。
border-radius: 5px 10px 15px 20px;
border-radius: 5px 10px 15px;
border-radius: 5px 10px;
border-radius: 10px;
値を4つ設定した場合はそれぞれ「左上」「右上」「右下」「左下」に設定されます。
値を3つ設定した場合はそれぞれ「左上」「右上・左下」「右下」に設定されます。
値を2つ設定した場合はそれぞれ「左上・右下」「右上・左下」に設定されます。
値が1つの場合は4隅同じ大きさの角丸になります。

このほか、パラメータをスラッシュで区切って指定することで、角丸の水平半径と垂直半径を別々に設定するといった細かな設定もできます。
border-radius: 30px / 10px;
■ 表示される内容
これは要素の4隅の水平半径を30ピクセル、垂直半径を10ピクセルの曲線で丸くする記述です。
スラッシュの左側が水平半径、右側が垂直半径を表しています。

もちろん4隅の水平半径・垂直半径を個別に設定することもできます。
border-radius: 5px 10px 15px 20px / 5px 10px;
border-radius: 10px / 5px 10px 15px;

パラメータの設定

角丸の半径の大きさ
半径の長さは数値もしくはパーセンテージで指定します。
border-radius: 10px;
border-radius: 5em;
border-radius: 15%;
入力する数値には、後ろに必ず「単位」をつける必要があります。単位を付け忘れると設定が反映されないので注意してください。

CSSで使用する長さの単位は色々ありますが、よく使用されるのは下記の2つです。
px ピクセル。ディスプレイの点を基準とした長さ。
em 要素に設定されたフォントのサイズを基準とする長さ。
フォントサイズが変わるとそれに合わせた長さとなる。
パーセンテージで指定した場合は、要素の幅・高さの指定割合を半径とした角丸になります。
角丸の半径と境界線の太さの関係
設定した角丸の半径は「境界線の幅も含めた値」と解釈されます。
そのため境界線の幅が角丸の半径より大きい場合は、境界線の部分のみが丸くなります。
border-radius: 10px;
border: 20px solid black;
■ 表示される内容
あいうえお

利用例

4隅を同じ大きさの角丸にする
border-radius: 10px;
■ 表示される内容
あいうえお
半径をパーセンテージで指定
border-radius: 30%;
■ 表示される内容
あいうえお
要素の幅・高さの30%の長さを半径として描写します。
水平半径・垂直半径を別々に設定する
border-radius: 30px / 10px;
■ 表示される内容
あいうえお
スラッシュの左側が水平半径、右側が垂直半径です。
4隅に個別の大きさを設定する
border-radius: 5px 10px 15px 20px;
■ 表示される内容
あいうえお
左上が5px、右上が10px、右下が15px、左下が20pxの半径の曲線になります。
4隅に水平半径・垂直半径を個別に設定する
border-radius: 5px 10px / 8px 12px 16px;
■ 表示される内容
あいうえお
水平半径にパラメータを2つ、垂直半径にパラメータを3つ設定した場合の例。
水平半径は左上・右下が5px、右上・左下が10pxとなり、垂直半径は左上が8px、右上・左下が12px、右下が16pxとなります。

関連する属性