Skip to content
Related Articles

Related Articles

How to Shift Inline Elements When Text Bold on Hover using CSS ?

View Discussion
Improve Article
Save Article
  • Last Updated : 08 Feb, 2022

When we will use a:hover pseudo-class to add a bold effect to the inline elements then we observe that whenever we hover over elements with the mouse, the elements to the right side of the mouse gets shifted to the right. This is not a good user experience thus needs to be removed. 
We can use the letter-spacing CSS property to fix this issue and make non-shifting inline elements. The letter-spacing is a CSS property that is used to increase or decrease the space between characters in a text. This CSS property can be used to prevent the shifting of the inline elements which get bold when we hover over them. Below is the working example of the problem and solution to it.

  • Syntax: 
 .class_name { letter-spacing: value }
  • Example: 


<!DOCTYPE html>
        li {
            list-style: none;
            display: inline;
        .nav a {
            letter-spacing: 0.36px;
        li a:link,
        li a:visited {
            text-decoration: none;
            color: #000;
        li a:hover {
            text-decoration: none;
            font-weight: bold;
        .nav li a:hover {
            text-decoration: none;
            font-weight: bold;
            letter-spacing: 0;
        <li><a href="#">GeeksforGeeks 1</a></li>
        <li><a href="#">GeeksforGeeks 2</a></li>
        <li><a href="#">GeeksforGeeks 3</a></li>
    <ul class="nav">
        <li><a href="#">GeeksforGeeks 4</a></li>
        <li><a href="#">GeeksforGeeks 5</a></li>
        <li><a href="#">GeeksforGeeks 6</a></li>

  • Output: 


My Personal Notes arrow_drop_up
Recommended Articles
Page :

Start Your Coding Journey Now!