用css制作一个类似IOS悬浮球的样式点击悬浮球会围绕它弹出n个子选项再次点击子选项消失
以下是一个简单的实现:
HTML代码:
<div class="float-button">
<span class="main-button"></span>
<div class="sub-buttons">
<a href="#">选项1</a>
<a href="#">选项2</a>
<a href="#">选项3</a>
<a href="#">选项4</a>
<a href="#">选项5</a>
</div>
</div>
CSS代码:
.float-button {
position: fixed;
bottom: 20px;
right: 20px;
z-index: 999;
}
.main-button {
display: block;
width: 60px;
height: 60px;
border-radius: 50%;
background-color: #007aff;
box-shadow: 0 2px 6px rgba(0, 0, 0, 0.3);
cursor: pointer;
}
.sub-buttons {
position: absolute;
bottom: 70px;
right: -100px;
opacity: 0;
visibility: hidden;
transition: all 0.3s ease-in-out;
}
.sub-buttons a {
display: block;
width: 40px;
height: 40px;
margin-bottom: 10px;
border-radius: 50%;
background-color: #007aff;
color: #fff;
text-align: center;
line-height: 40px;
font-size: 14px;
text-decoration: none;
transition: all 0.3s ease-in-out;
}
.sub-buttons a:hover {
background-color: #fff;
color: #007aff;
border: 2px solid #007aff;
}
.float-button:hover .sub-buttons {
right: 0;
opacity: 1;
visibility: visible;
}
.float-button.active .sub-buttons {
right: 0;
opacity: 1;
visibility: visible;
}
JavaScript代码:
var mainButton = document.querySelector('.main-button');
var floatButton = document.querySelector('.float-button');
mainButton.onclick = function() {
floatButton.classList.toggle('active');
}
效果预览:
![效果预览](https://i.ibb.co/6X7sJ9j/i-OStKd-8-VZb.jpg
原文地址: https://www.cveoy.top/t/topic/g1M4 著作权归作者所有。请勿转载和采集!