简约右侧悬浮按钮美化 –第一版
悬浮

简约右侧悬浮按钮美化 –第一版

blogger头像
blogger 博主
2026.05.15 · 约 44 分钟 · 0 评论 · 0 喜爱

这是一款简约侧边的悬浮按钮美化,喜欢的自行部署吧!代码已测试,未加密,可以二次修改 [hidecontent type="reply"] <!-- 右侧悬浮导航 --> <style> :root { --footer-…

这是一款简约侧边的悬浮按钮美化,喜欢的自行部署吧!代码已测试,未加密,可以二次修改

[hidecontent type="reply"]
<!-- 右侧悬浮导航 -->
<style>
:root {
    --footer-text-size: 14px;
    --transition-standard: all 0.3s ease;
    --primary-color: #3b82f6;
    --primary-hover: #2563eb;
    --text-primary: #334155;
    --text-secondary: #64748b;
    --bg-light: #f8fafc;
    --shadow-sm: 0 2px 8px rgba(0,0,0,.05);
    --shadow-md: 0 5px 15px rgba(0,0,0,.08);
    --btn-gradient: linear-gradient(145deg, #ffffff, #f5f5f5);
    --btn-hover-gradient: linear-gradient(145deg, #f8fafc, #eff6ff);
}

/* 核心修改:默认隐藏移动端导航 */
.comfortable-nav{
    position:fixed;
    right:20px;
    top:50%;
    transform:translateY(-50%);
    z-index:9999;
    display:none; /* 默认隐藏 */
    flex-direction:column;
    gap:12px; /* 增加间距更舒适 */
    padding:10px 0;
}

/* 仅在电脑端显示导航 (屏幕宽度>767px) */
@media (min-width:768px) {
    .comfortable-nav {
        display:flex; /* 电脑端显示 */
    }
}

/* 导航按钮统一美化 - 核心修改:所有按钮统一圆角+渐变背景 */
.nav-item{
    width:52px;
    height:52px;
    border-radius:18px; /* 强制统一圆角,包括在线客服按钮 */
    background: var(--btn-gradient); /* 所有按钮统一渐变背景 */
    box-shadow:var(--shadow-sm);
    display:flex;
    align-items:center;
    justify-content:center;
    cursor:pointer;
    position:relative;
    transition:all .3s cubic-bezier(0.4, 0, 0.2, 1);
    border: 1px solid #f0f0f0; /* 细边框更精致 */
    /* 增加背景纹理,提升质感 */
    background-image: radial-gradient(circle at 10% 10%, rgba(255,255,255,0.8) 0%, rgba(245,245,245,0.1) 100%);
}

.nav-item:hover{
    background: var(--btn-hover-gradient); /* 悬浮渐变背景 */
    transform:translateX(-6px) translateY(-2px);
    box-shadow:0 6px 16px rgba(0,0,0,.1);
    border-color: rgba(59, 130, 246, 0.2);
}

/* 重点:强制在线客服按钮容器样式(最高优先级) */
.comfortable-nav .nav-item.service-item {
    width:52px !important;
    height:52px !important;
    border-radius:18px !important; /* 强制圆角 */
    background: linear-gradient(145deg, #ffffff, #f5f5f5) !important;
    background-image: radial-gradient(circle at 10% 10%, rgba(255,255,255,0.8) 0%, rgba(245,245,245,0.1) 100%) !important;
    border: 1px solid #f0f0f0 !important;
    box-shadow:0 2px 8px rgba(0,0,0,.05) !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* 在线客服按钮悬浮样式统一 */
.comfortable-nav .nav-item.service-item:hover {
    background: var(--btn-hover-gradient) !important;
    transform:translateX(-6px) translateY(-2px) !important;
    box-shadow:0 6px 16px rgba(0,0,0,.1) !important;
    border-color: rgba(59, 130, 246, 0.2) !important;
}

.nav-icon{
    font-size:22px;
    color:var(--text-secondary);
    transition:all .2s ease;
}

.nav-item:hover .nav-icon{
    color:var(--primary-color);
}

/* 提示框美化增强 */
.nav-tooltip{
    position:absolute;
    right:60px;
    top:50%;
    transform:translateY(-50%);
    background-color:var(--text-primary);
    color:#fff;
    padding:8px 16px;
    border-radius:10px;
    font-size:13px;
    white-space:nowrap;
    opacity:0;
    pointer-events:none;
    transition:all .25s ease;
    box-shadow:0 4px 12px rgba(0,0,0,.12);
}

/* 提示框小三角优化 */
.nav-tooltip::after{
    content:'';
    position:absolute;
    top:50%;
    right:-4px;
    transform:translateY(-50%);
    width:8px;
    height:8px;
    background-color:var(--text-primary);
    transform: translateY(-50%) rotate(45deg);
    box-shadow: 2px -2px 4px rgba(0,0,0,.05);
}

.nav-item:hover .nav-tooltip{
    opacity:1;
    right:58px;
}

/* VIP项美化增强 - 保持渐变但统一圆角 */
.vip-item-right{
    width:56px;
    height:56px;
    border-radius:18px; /* 和其他按钮完全统一的圆角 */
    background: linear-gradient(135deg, var(--primary-color), #60a5fa);
    position:relative;
    box-shadow:0 8px 20px rgba(59,130,246,.35);
    z-index:2;
    border:none;
    background-image: none; /* 取消纹理,保持纯色渐变 */
}

.vip-item-right .nav-icon{
    color:#fff;
    font-size:24px;
    position:relative;
    z-index:2;
}

.vip-pulse{
    position:absolute;
    width:100%;
    height:100%;
    border-radius:18px; /* 匹配VIP按钮圆角 */
    background-color:rgba(59,130,246,.4);
    animation:pulse 2s infinite ease-in-out;
    z-index:1;
}

@keyframes pulse{
    0%{transform:scale(1);opacity:1}
    100%{transform:scale(2);opacity:0}
}

/* VIP面板美化增强 */
.vip-panel{
    position:absolute;
    right:75px;
    top:50%;
    transform:translateY(-50%);
    background-color:#fff;
    border-radius:14px;
    box-shadow:var(--shadow-md);
    width:290px;
    padding:22px;
    opacity:0;
    pointer-events:none;
    transition:all .3s cubic-bezier(.4,0,.2,1);
}

.vip-panel::after{
    content:'';
    position:absolute;
    top:50%;
    right:-8px;
    transform:translateY(-50%) rotate(45deg);
    width:16px;
    height:16px;
    background-color:#fff;
    box-shadow:3px -3px 8px rgba(0,0,0,.08);
    z-index:-1;
}

.vip-item-right:hover .vip-panel{
    opacity:1;
    pointer-events:all;
    transform: translateY(-50%) translateX(-8px);
}

.vip-panel h4{
    color:var(--text-primary);
    font-size:17px;
    margin-bottom:14px;
    font-weight:600;
    display:flex;
    align-items:center;
    gap:8px;
}

.vip-benefits{
    margin-bottom:20px
}

.vip-benefit{
    display:flex;
    align-items:center;
    gap:10px;
    font-size:14px;
    color:var(--text-secondary);
    margin-bottom:10px;
    padding:4px 0;
}

.vip-benefit i{
    color:var(--primary-color);
    font-size:16px;
}

.vip-pricing{
    background-color:var(--bg-light);
    border-radius:12px;
    padding:16px;
    margin-bottom:20px;
    border:1px solid rgba(59,130,246,0.1);
}

.vip-price .current{
    font-size:24px;
    font-weight:700;
    color:var(--primary-color);
}

.vip-cta{
    width:100%;
    padding:12px 0;
    background: linear-gradient(135deg, var(--primary-color), var(--primary-hover));
    color:#fff;
    border:none;
    border-radius:10px;
    font-size:15px;
    font-weight:600;
    cursor:pointer;
    transition:all .2s ease;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    text-decoration:none;
    box-shadow:0 4px 12px rgba(59,130,246,.2);
}

.vip-cta:hover{
    transform:translateY(-2px);
    box-shadow:0 6px 16px rgba(59,130,246,.3);
    color:#fff;
}

/* 二维码面板美化增强 */
.qrcode-panel{
    position:absolute;
    right:70px;
    top:50%;
    transform:translateY(-50%);
    background-color:#fff;
    border-radius:14px;
    box-shadow:var(--shadow-md);
    width:230px;
    padding:22px;
    text-align:center;
    opacity:0;
    pointer-events:none;
    transition:all .3s cubic-bezier(.4,0,.2,1);
}

.qrcode-panel::after{
    content:'';
    position:absolute;
    top:50%;
    right:-8px;
    transform:translateY(-50%) rotate(45deg);
    width:16px;
    height:16px;
    background-color:#fff;
    box-shadow:3px -3px 8px rgba(0,0,0,.08);
    z-index:-1;
}

.nav-item:hover .qrcode-panel{
    opacity:1;
    pointer-events:all;
    transform: translateY(-50%) translateX(-8px);
}

.qrcode-container{
    background-color:#fff;
    border-radius:12px;
    padding:14px;
    display:inline-block;
    box-shadow:var(--shadow-sm);
    margin-bottom:16px;
    border:1px solid rgba(0,0,0,0.05);
}

.qrcode-img{
    width:140px;
    height:140px;
    border-radius:8px;
}

.qrcode-title{
    color:var(--text-primary);
    font-size:15px;
    font-weight:600;
    margin-bottom:8px;
}

/* 在线状态样式 - 圆角优化 */
.service-item{
    position:relative
}

.service-status{
    position:absolute;
    top:-4px !important; /* 微调位置,避免挤压按钮 */
    right:-4px !important;
    background-color:#10b981;
    color:#fff;
    font-size:11px;
    padding:2px 6px !important; /* 减小内边距,避免过大 */
    border-radius:14px; /* 圆角标签 */
    font-weight:600;
    white-space:nowrap;
    z-index:2;
    animation:pulseOnline 2s infinite;
    box-shadow:0 2px 6px rgba(16,185,129,.2);
}

@keyframes pulseOnline{
    0%{box-shadow:0 0 0 0 rgba(16,185,129,.5)}
    70%{box-shadow:0 0 0 8px rgba(16,185,129,0)}
    100%{box-shadow:0 0 0 0 rgba(16,185,129,0)}
}

/* 返回顶部按钮美化增强 - 统一风格 */
.backtop-item{
    border-radius:18px; /* 和其他按钮统一圆角 */
    background: linear-gradient(135deg, var(--primary-color), var(--primary-hover));
    opacity:0;
    visibility:hidden;
    transition:all .3s ease;
    border-color:transparent;
    background-image: none; /* 取消纹理 */
}

.backtop-item .nav-icon{
    color:#fff;
}

.backtop-item:hover{
    background: linear-gradient(135deg, var(--primary-hover), #1d4ed8);
    border-color:transparent;
}

.backtop-item.visible{
    opacity:1;
    visibility:visible;
}

.checkin-link,.service-button{
    display:flex;
    align-items:center;
    justify-content:center;
    width:100%;
    height:100%;
    position:relative;
    text-decoration:none;
    /* 确保按钮内部元素不影响圆角 */
    border-radius: inherit;
    /* 修复在线客服按钮圆角 - 关键样式 */
    border: none !important;
    background: transparent !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* 全屏按钮激活状态美化 */
.fullscreen-item.active{
    background: var(--btn-hover-gradient);
    border-color: rgba(59, 130, 246, 0.3);
}

/* 移动端完全隐藏导航(优先级最高) */
@media (max-width:767px){
    .comfortable-nav {
        display:none !important; /* 强制隐藏 */
    }
}

/* 底部导航链接样式(补充) */
#footer-bar .footer-bar-link {
    font-size: var(--footer-text-size);
    font-weight: 500;
    white-space: nowrap;
    padding: 8px 16px;
    margin-left: 5px;
    border-radius: 31px;
    line-height: 1.5;
    display: flex;
    align-items: center;
    gap: 8px;
    transition: var(--transition-standard);
    text-decoration: none;
    transform: translateZ(0);
    backface-visibility: hidden;
    touch-action: manipulation;
    outline: none;
}
</style>

<!-- 导航HTML -->
<div class="comfortable-nav">
    <!-- 右侧悬浮导航核心HTML -->
    <div class="nav-item vip-item-right">
        <div class="vip-pulse"></div>
        <div class="vip-pulse"></div>
        <div class="vip-pulse"></div>
        <i class="fa fa-diamond nav-icon"></i>
        <div class="vip-panel">
            <h4><i class="fa fa-diamond"></i> 永久会员新春钜惠</h4>
            <div class="vip-benefits">
                <div class="vip-benefit">
                    <i class="fa fa-check-circle"></i>
                    <span>微信QQ客服一对一</span>
                </div>
                <div class="vip-benefit">
                    <i class="fa fa-check-circle"></i>
                    <span>源码永久免费升级</span>
                </div>
                <div class="vip-benefit">
                    <i class="fa fa-check-circle"></i>
                    <span>大量专属精品源码</span>
                </div>
                <div class="vip-benefit">
                    <i class="fa fa-check-circle"></i>
                    <span>免费下载全站资源</span>
                </div>
            </div>
            <div class="vip-pricing">
                <div class="vip-price">
                    <span class="current">¥118</span>
                    <span class="original">¥298</span>
                </div>
                <div class="vip-period">永久会员 · 立省180元</div>
            </div>
            <a href="/vip-2" class="vip-cta">
                <i class="fa fa-rocket"></i> 立即开通
            </a>
        </div>
    </div>

    <div class="nav-item">
        <a class="initiate-checkin my-custom-checkin checkin-link" href="javascript:;" form-action="user_checkin" ed-text="每日签到">
            <i class="fa fa-calendar-check-o nav-icon"></i>
            <span class="nav-tooltip">每日签到</span>
        </a>
    </div>

    <!-- 在线客服按钮 - 确保继承nav-item的圆角和背景样式 -->
    <div class="nav-item service-item">
        <button data-height="550" 
                data-remote="/wp-admin/admin-ajax.php?action=private_window_modal&receive_user=1"
                class="service-button" 
                data-toggle="RefreshModal">
            <i class="fa fa-comments-o nav-icon"></i>
            <span class="service-status">在线</span>
            <span class="nav-tooltip">在线客服</span>
        </button>
    </div>

    <div class="nav-item">
        <a href="/dashang" 
           class="service-button" 
           target="_blank" 
           rel="noopener noreferrer"
           title="打赏我们">
            <i class="fa fa-gift nav-icon"></i>
            <span class="nav-tooltip">打赏我们</span>
        </a>
    </div>

    <div class="nav-item">
        <i class="fa fa-qrcode nav-icon"></i>
        <div class="qrcode-panel">
            <div class="qrcode-container">
                <img src="https://cs.yykbk.com/wp-content/uploads/2025/03/35.jpg" alt="公众号二维码" class="qrcode-img">
            </div>
            <div class="qrcode-title">扫码关注公众号</div>
            <div class="qrcode-desc">获取更多最新源码或模板</div>
        </div>
    </div>

    <div class="nav-item fullscreen-item">
        <i class="fa fa-expand nav-icon" id="fullscreen-icon"></i>
        <span class="nav-tooltip" id="fullscreen-tooltip">展开全屏</span>
    </div>

    <div class="nav-item backtop-item">
        <i class="fa fa-arrow-up nav-icon"></i>
        <span class="nav-tooltip">返回顶部</span>
    </div>
</div>

<script>
document.addEventListener('DOMContentLoaded', function() {
    // 返回顶部功能
    const backtopBtn = document.querySelector('.backtop-item');

    function checkScroll() {
        if (window.scrollY > 300) {
            backtopBtn.classList.add('visible');
        } else {
            backtopBtn.classList.remove('visible');
        }
    }

    checkScroll();
    window.addEventListener('scroll', checkScroll);

    backtopBtn.addEventListener('click', function() {
        window.scrollTo({
            top: 0,
            behavior: 'smooth'
        });
    });

    // VIP会员跳转
    const vipItem = document.querySelector('.vip-item-right');
    const vipUrl = '/svip'; 
    if (vipItem && vipUrl) {
        vipItem.addEventListener('click', function() {
            window.location.href = vipUrl;
        });
    }

    // 全屏功能(优化兼容性)
    const fullscreenBtn = document.querySelector('.fullscreen-item');
    const fullscreenIcon = document.getElementById('fullscreen-icon');
    const fullscreenTooltip = document.getElementById('fullscreen-tooltip');

    // 兼容不同浏览器的全屏API
    function requestFullscreen(element) {
        if (element.requestFullscreen) {
            return element.requestFullscreen();
        } else if (element.webkitRequestFullscreen) { // Chrome/Safari
            return element.webkitRequestFullscreen();
        } else if (element.msRequestFullscreen) { // IE/Edge
            return element.msRequestFullscreen();
        }
    }

    function exitFullscreen() {
        if (document.exitFullscreen) {
            return document.exitFullscreen();
        } else if (document.webkitExitFullscreen) {
            return document.webkitExitFullscreen();
        } else if (document.msExitFullscreen) {
            return document.msExitFullscreen();
        }
    }

    function getFullscreenElement() {
        return document.fullscreenElement || document.webkitFullscreenElement || document.msFullscreenElement;
    }

    function updateFullscreenState() {
        if (getFullscreenElement()) {
            fullscreenIcon.classList.remove('fa-expand');
            fullscreenIcon.classList.add('fa-compress');
            fullscreenTooltip.textContent = '退出全屏';
            fullscreenBtn.classList.add('active');
        } else {
            fullscreenIcon.classList.remove('fa-compress');
            fullscreenIcon.classList.add('fa-expand');
            fullscreenTooltip.textContent = '展开全屏';
            fullscreenBtn.classList.remove('active');
        }
    }

    updateFullscreenState();

    fullscreenBtn.addEventListener('click', function() {
        if (!getFullscreenElement()) {
            requestFullscreen(document.documentElement).catch(err => {
                console.error(`无法进入全屏模式: ${err.message}`);
            });
        } else {
            exitFullscreen();
        }
    });

    // 监听全屏状态变化(兼容不同浏览器)
    document.addEventListener('fullscreenchange', updateFullscreenState);
    document.addEventListener('webkitfullscreenchange', updateFullscreenState);
    document.addEventListener('MSFullscreenChange', updateFullscreenState);
});
</script>
<!-- 右侧悬浮导航结束 -->
[/hidecontent]
弹幕表态
我的头像
0/300
文明发言,一起守护温柔的评论区

0 条回复

A文章作者 M管理员
这里需要一条查重率 0% 的评论

还没有评论,来说两句吧~

1会员总数
104文章总数
1068浏览总数
0今日发布
277天稳定运行
  • 波浪
  • 波浪
  • 波浪
  • 波浪

Hello World

页面耗时 0.069 秒 | 数据库查询 64 次 | 内存 0.70 MB | 在线人数:1人

104+

精品文章等您来关注

Copyright © 2025 - 2026 Hello World