Styling Links Using CSS.

By | July 6, 2022

Styling Links

Links can be styled with any CSS property (e.g. colorfont-familybackground, etc.).

Example

<!DOCTYPE html>
<html>
<head>
<style>
a {
  color: hotpink;
}
</style>
</head>
<body>
<h2>Style a link with a color</h2>
<p><b><a href="default.asp" target="_blank">This is a link</a></b></p>
</body>
</html>

Result:

Style a link with a color

This is a link

In addition, links can be styled differently depending on what state they are in.

The four links states are:

  • a:link – a normal, unvisited link
  • a:visited – a link the user has visited
  • a:hover – a link when the user mouses over it
  • a:active – a link the moment it is clicked

Example

<!DOCTYPE html>
<html>
<head>
<style>
/* unvisited link */
a:link {
  color: red;
}
/* visited link */
a:visited {
  color: green;
}
/* mouse over link */
a:hover {
  color: hotpink;
}
/* selected link */
a:active {
  color: blue;
}
</style>
</head>
<body>
<h2>Styling a link depending on state</h2>
<p><b><a href="default.asp" target="_blank">This is a link</a></b></p>
<p><b>Note:</b> a:hover MUST come after a:link and a:visited in the CSS definition in order to be effective.</p>
<p><b>Note:</b> a:active MUST come after a:hover in the CSS definition in order to be effective.</p>
</body>
</html>

Result:

Styling a link depending on state

This is a link – Unvisited Link

This is a link – Visited Link

This is a link – Hover Link

This is a link – Active Link

Note: a:hover MUST come after a:link and a:visited in the CSS definition in order to be effective.

Note: a:active MUST come after a:hover in the CSS definition in order to be effective.

Text Decoration

The text-decoration property is mostly used to remove underlines from links:

Example

Text Decoration

The text-decoration property is mostly used to remove underlines from links:

Example

<!DOCTYPE html>
<html>
<head>
<style>
a:link {
  text-decoration: none;
}
a:visited {
  text-decoration: none;
}
a:hover {
  text-decoration: underline;
}
a:active {
  text-decoration: underline;
}
</style>
</head>
<body>
<h2>Styling a link with text-decoration property</h2>
<p><b><a href="default.asp" target="_blank">This is a link</a></b></p>
<p><b>Note:</b> a:hover MUST come after a:link and a:visited in the CSS definition in order to be effective.</p>
<p><b>Note:</b> a:active MUST come after a:hover in the CSS definition in order to be effective.</p>
</body>
</html>

Result:

Styling a link with text-decoration property

This is a link – Link

This is a link – Link

This is a link – Hover Link

This is a link – Active Link

Note: a:hover MUST come after a:link and a:visited in the CSS definition in order to be effective.

Note: a:active MUST come after a:hover in the CSS definition in order to be effective.

Background Color

The background-color property can be used to specify a background color for links:

Example

<!DOCTYPE html>
<html>
<head>
<style>
a {
  color: powderblue;
}
a:link {
  background-color: yellow;
}
a:visited {
  background-color: blue;
}
a:hover {
  background-color: green;
}
a:active {
  background-color: hotpink;
} 
</style>
</head>
<body>
<h2>Styling a link with background-color property</h2>
<p><b><a href="default.asp" target="_blank">This is a link</a></b></p>
<p><b>Note:</b> a:hover MUST come after a:link and a:visited in the CSS definition in order to be effective.</p>
<p><b>Note:</b> a:active MUST come after a:hover in the CSS definition in order to be effective.</p>
</body>
</html>

Result:

Link Buttons

This example demonstrates a more advanced example where we combine several CSS properties to display links as boxes/buttons:

Example

<!DOCTYPE html>
<html>
<head>
<style>
a:link, a:visited {
  background-color: #f44336;
  color: white;
  padding: 14px 25px;
  text-align: center;
  text-decoration: none;
  display: inline-block;
}
a:hover, a:active {
  background-color: red;
}
</style>
</head>
<body>
<h2>Link Button</h2>
<p>A link styled as a button:</p>
<a href="default.asp" target="_blank">This is a link</a>
</body>
</html>

Result:

More Examples

Example

This example demonstrates how to add other styles to hyperlinks:a.one:link {color: #ff0000;}
a.one:visited {color: #0000ff;}
a.one:hover {color: #ffcc00;}

a.two:link {color: #ff0000;}
a.two:visited {color: #0000ff;}
a.two:hover {font-size: 150%;}

a.three:link {color: #ff0000;}
a.three:visited {color: #0000ff;}
a.three:hover {background: #66ff66;}

a.four:link {color: #ff0000;}
a.four:visited {color: #0000ff;}
a.four:hover {font-family: monospace;}

a.five:link {color: #ff0000; text-decoration: none;}
a.five:visited {color: #0000ff; text-decoration: none;}
a.five:hover {text-decoration: underline;}

Example

Another example of how to create link boxes/buttons:a:link, a:visited {
  background-color: white;
  color: black;
  border: 2px solid green;
  padding: 10px 20px;
  text-align: center;
  text-decoration: none;
  display: inline-block;
}

a:hover, a:active {
  background-color: green;
  color: white;
}

Example

This example demonstrates the different types of cursors (can be useful for links):<span style=”cursor: auto”>auto</span><br>
<span style=”cursor: crosshair”>crosshair</span><br>
<span style=”cursor: default”>default</span><br>
<span style=”cursor: e-resize”>e-resize</span><br>
<span style=”cursor: help”>help</span><br>
<span style=”cursor: move”>move</span><br>
<span style=”cursor: n-resize”>n-resize</span><br>
<span style=”cursor: ne-resize”>ne-resize</span><br>
<span style=”cursor: nw-resize”>nw-resize</span><br>
<span style=”cursor: pointer”>pointer</span><br>
<span style=”cursor: progress”>progress</span><br>
<span style=”cursor: s-resize”>s-resize</span><br>
<span style=”cursor: se-resize”>se-resize</span><br>
<span style=”cursor: sw-resize”>sw-resize</span><br>
<span style=”cursor: text”>text</span><br>
<span style=”cursor: w-resize”>w-resize</span><br>
<span style=”cursor: wait”>wait</span>

Category: CSS

Leave a Reply

Your email address will not be published. Required fields are marked *