How to Create a Border with CSS
Three properties work together to make borders: border-style
, border-color
, and border-width
. In addition, each side of an element can also have a different border style. These are indicated by the following properties:
- border-top
- border-right
- border-bottom
- border-left
Learn how to use these CSS properties to add a border to an element by following the steps below.
- The
border-style
property is used to specify whether an element has a border or not and, if it does, how that border should appear. Possible values are:- none
- dashed
- dotted
- double
- groove
- inset
- outset
For example:
<div style="border-style: dashed;">border-style: dashed;</div>
- The
border-color
property is used withborder-style
to specify the color of the border. Its value can be any valid color. For example:<div style="border-color: red">border-color: red</div>
- The
border-width
property is used withborder-style
to specify the width of the border on all four sides of an element. All the units of measurement can be used. In addition, the border width can be defined using the following relative terms:- thin
- medium
- thick
The
border-width
property will have no effect unless the element has aborder-style
defined either in a style sheet or by the user agent (e.g., browser).div { border-width: 4px; }
- The following code sets a border-width of 4px for the entire document and then changes the border styles and colors throughout. The first example shows the border top color changed to blue.
<!DOCTYPE HTML> <html> <head> <meta charset="UTF-8"> <title>CSS Border Styles</title> <style type="text/css"> hr { width: 50%; margin-top: 10px; margin-bottom: 10px; } div { border-width: 4px; } </style> </head> <body> <h1>CSS Border Styles</h1> <div style="border-style: dashed; border-color: red; border-top-color: blue ">border-style: dashed; border-color: red; border-top-color: blue</div> <hr> <div style="border-style: dotted; border-color: blue">border-style: dotted; border-color: blue</div> <hr> <div style="border-style: double; border-color: green">border-style: double; border-color: green</div> <hr> <div style="border-style: none;">border-style: none;</div> <hr> <div style="border-style: groove; border-color: red">border-style: groove; border-color: red</div> <hr> <div style="border-style: hidden;">border-style: hidden;</div> <hr> <div style="border-style: inset; border-color: blue">border-style: inset; border-color: blue</div> <hr> <div style="border-style: outset; border-color: green">border-style: outset; border-color: green</div> <hr> <div style="border-style: ridge; border-color: red">border-style: ridge; border-color: red</div> <hr> <div style="border-style: solid; border-color: blue">border-style: solid; border-color: blue</div> </body> </html>
This code renders the following: