可收缩关闭的多个小尺寸对联广告
您想实现一个网页效果:在网页左右两侧放置多个小尺寸的对联广告,并且这些广告可以被用户手动收缩或关闭。
<div class="ad-container left">
<img src="ad1.jpg" alt="广告1">
<span class="close">X</span>
</div>
<div class="ad-container right">
<img src="ad2.jpg" alt="广告2">
<span class="close">X</span>
</div>
position: fixed
将广告固定在页面两侧。transition
或animation
属性为广告的展开和收缩添加动画效果。
.ad-container {
position: fixed;
top: 10px;
width: 100px;
height: 150px;
padding: 10px;
background-color: #f0f0f0;
transition: width 0.3s ease-in-out; /* 添加展开/收缩动画 */
}
/* ... 其他样式 ... */
ad-container
类的元素。
const adContainers = document.querySelectorAll('.ad-container');
const closeButtons = document.querySelectorAll('.close');
closeButtons.forEach(button => {
button.addEventListener('click', () => {
const adContainer = button.parentNode;
adContainer.style.width = '0';
// 使用localStorage或sessionStorage记录状态
localStorage.setItem(adContainer.id, 'closed');
});
});
// 加载页面时恢复广告状态
window.onload = () => {
adContainers.forEach(container => {
if (localStorage.getItem(container.id) === 'closed') {
container.style.width = '0';
}
});
};
通过以上方案,您可以实现多个可收缩关闭的小尺寸对联广告。您可以根据实际需求进行调整和扩展。
关键点:
position
、width
、height
等属性来控制广告的位置和大小。如果您需要更详细的代码示例或有其他问题,欢迎随时提出!
需要我为您提供更详细的代码示例或解释吗?