Tikson
@Tikson

Как избежать сдвига блоков при использовании :hover?

При наведении курсора на блок, остальные чуть чуть разъезжаются, как это отменить?
Вот мой код -https://dabblet.com/gist/659edef9f6d13affa8eb17429...
<!doctype html>
<html lang="en">
  <head>
    <!-- Required meta tags -->
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1">

    <!-- Bootstrap CSS -->
    <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.0.2/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-EVSTQN3/azprG1Anm3QDgpJLIm9Nao0Yz1ztcQTwFspd3yD65VohhpuuCOmLASjC" crossorigin="anonymous">
    <link rel="stylesheet" href="style.css">
    <title>Hello, world!</title>
  </head>
  <body>
    <h1>Анализы и симптомы пациента</h1>
    <div class="container-fluid">
        <div class="row">
            <div class="col-md-6">
                <input type="checkbox" id="awesome"  tabindex="1"  />
                <label for="awesome">Гемоглобин</label>
                <br />
                <input type="checkbox" id="awesome2"  tabindex="2"  />
                <label for="awesome2">Гематокрит</label>
                <br />
                <input type="checkbox" id="awesome3"  tabindex="3"  />
                <label for="awesome3">Эритроциты</label>
                <br />
                <input type="checkbox" id="awesome4" tabindex="4"  />
                <label for="awesome4">Awesome!</label>
            </div>
            <div class="col-md-6">
                <p>789101112</p>
            </div>
        </div>
    </div>

    <!-- Optional JavaScript; choose one of the two! -->

    <!-- Option 1: Bootstrap Bundle with Popper -->
    <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.0.2/dist/js/bootstrap.bundle.min.js" integrity="sha384-MrcW6ZMFYlzcLA8Nl+NtUVF0sA7MsXsP1UyJoMp4YLEuNSfAP+JcXn/tWtIaxVXM" crossorigin="anonymous"></script>

    <!-- Option 2: Separate Popper and Bootstrap JS -->
    <!--
    <script src="https://cdn.jsdelivr.net/npm/@popperjs/core@2.9.2/dist/umd/popper.min.js" integrity="sha384-IQsoLXl5PILFhosVNubq5LC7Qb9DXgDA9i+tQ8Zj3iwWAwPtgFTxbJ8NT4GN1R8p" crossorigin="anonymous"></script>
    <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.0.2/dist/js/bootstrap.min.js" integrity="sha384-cVKIPhGWiC2Al4u+LWgxfKTRIcfu0JTxR+EQDz/bgldoEyl4H0zUF0QKbrJ0EcQF" crossorigin="anonymous"></script>
    -->
  </body>
</html>

input[type="checkbox"] + label::before {
    content: '\a0'; /* неразрывный пробел */
    display: inline-block;
    vertical-align: .2em;
    width: .8em;
    height: .8em;
    margin-right: .2em;
    border-radius: .2em;
    background: silver;
    text-indent: .15em;
    line-height: .65;
    }
input[type="checkbox"]:checked + label::before {
    content: '\2713';
    background: yellowgreen;
    }
input[type="checkbox"] {
    position: absolute;
    clip: rect(0,0,0,0);
    }
input[type="checkbox"]:focus + label::before {
    box-shadow: 0 0 .1em .1em #58a;
    }
input[type="checkbox"]:disabled + label::before {
    background: gray;
    box-shadow: none;
    color: #555;
    }
label{
    padding: 3px 3px 3px 10px;
    border-radius: 5px;
    background-color:blanchedalmond;
    margin-bottom: 4px;
    min-width: 145px;
   
}
label:last-of-type{
    margin: 0;
}
label:hover{
    background-color:beige;
    border: 1px solid greenyellow;
    cursor:pointer;
    outline-offset: 0px;
}

Смотрел похожие вопросы (https://qna.habr.com/q/1019118) - но те решения не помогли в моем случае.
  • Вопрос задан
  • 170 просмотров
Пригласить эксперта
Ответы на вопрос 1
@Talim40k
Вместо "border: 1px solid greenyellow" можете использовать "outline: 1px solid greenyellow". Не забудьте про отступ, ouline накладываться на соседние элементы, так как сам не участвует в основном потоке, в отличии от border.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы