#html #css
#HTML #css
Вопрос:
Я знаю, что заголовок был не очень хорошим, но в моем верхнем меню у меня есть входящие и опции с 3 вертикальными точками, но когда я перемещаю их оба вправо ( float:right;
), входящие находятся в конце, чего я не хочу, я хочу, чтобы входящие были слева от опций. Вот код
.notification {
background-color: #555;
color: white;
text-decoration: none;
padding: 15px 26px;
position: relative;
display: inline-block;
border-radius: 2px;
}
.notification:hover {
background: red;
}
.notification .badge {
position: absolute;
top: -10px;
right: -10px;
padding: 5px 10px;
border-radius: 50%;
background-color: red;
color: white;
}
<div id="topnav">
<a class="active" href="home">Home</a>
<a id="font2" href="contact.php">Contact Us</a>
<a href="#" class="notification">
<span>Inbox</span>
<span class="badge">1</span>
</a>
<button id="options" style="float:right;"><svg xmlns="http://www.w3.org/2000/svg" width="27" height="25" fill="currentColor" class="bi bi-three-dots-vertical" viewBox="0 0 16 16">
<path d="M9.5 13a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0zm0-5a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0zm0-5a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0z"/>
</svg></button>
</div>
Ответ №1:
Порядок с плавающей точкой происходит просто потому, что ваш почтовый ящик появляется первым в коде. Вы указываете ему, чтобы он перемещался вправо, и это происходит. Затем вы указываете своей кнопке, чтобы она перемещалась вправо, и затем она перемещается вправо, но ваш почтовый ящик уже находится в крайнем правом углу, поэтому он отображается слева от него.
Самым простым решением может быть изменение порядка, в котором Входящие и кнопки отображаются в HTML-коде. Итак, сначала поместите кнопку, затем она сначала всплывет вправо. Приведенный ниже фрагмент использует метод float с измененным порядком элементов HTML:
.notification {
float: right;
background-color: #555;
color: white;
text-decoration: none;
padding: 15px 26px;
position: relative;
display: inline-block;
border-radius: 2px;
}
.notification:hover {
background: red;
}
.notification .badge {
position: absolute;
top: -10px;
right: -10px;
padding: 5px 10px;
border-radius: 50%;
background-color: red;
color: white;
}
#options {
float: right;
}
<div id="topnav">
<a class="active" href="home">Home</a>
<a id="font2" href="contact.php">Contact Us</a>
<button id="options"><svg xmlns="http://www.w3.org/2000/svg" width="27" height="25" fill="currentColor" class="bi bi-three-dots-vertical" viewBox="0 0 16 16">
<path d="M9.5 13a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0zm0-5a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0zm0-5a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0z"/>
</svg></button>
<a href="#" class="notification">
<span>Inbox</span>
<span class="badge">1</span>
</a>
</div>