简易横向导航制作指南

简易横向导航

概念:

横向导航就是网页顶部水平排列的菜单栏,用户通过它可以在网站的不同页面间跳转。就像书店里的指示牌,告诉你哪个区域有什么书籍。

基本制作方法

HTML+CSS

HTML 结构

HTML 复制代码
<nav class="main-nav">
    <ul>
        <li><a href="#home">首页</a></li>
        <li><a href="#about">关于</a></li>
        <li><a href="#services">服务</a></li>
        <li><a href="#contact">联系</a></li>
    </ul>
</nav>

CSS 样式

css 复制代码
.main-nav {
    background: #333;
    padding: 0 20px;
}

.main-nav ul {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
}

.main-nav li {
    margin: 0;
}

.main-nav a {
    display: block;
    color: white;
    text-decoration: none;
    padding: 15px 20px;
    transition: background 0.3s;
}

.main-nav a:hover {
    background: #555;
}

完整代码示例:

HTML 复制代码
<!DOCTYPE html>
<html lang="zh-CN">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>横向导航示例</title>
    <style>
        * {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
        }

        body {
            font-family: Arial, sans-serif;
            line-height: 1.6;
        }

        /* 导航样式 */
        .main-nav {
            background: #2c3e50;
            position: sticky;
            top: 0;
        }

        .nav-container {
            max-width: 1200px;
            margin: 0 auto;
            display: flex;
            justify-content: space-between;
            align-items: center;
            padding: 0 20px;
        }

        .logo {
            color: white;
            font-size: 24px;
            font-weight: bold;
            text-decoration: none;
        }

        .nav-menu {
            display: flex;
            list-style: none;
        }

        .nav-menu li {
            margin: 0;
        }

        .nav-menu a {
            color: white;
            text-decoration: none;
            padding: 20px 25px;
            display: block;
            transition: all 0.3s;
        }

        .nav-menu a:hover {
            background: #34495e;
        }

        .nav-menu a.active {
            background: #3498db;
        }

        /* 页面内容 */
        .content {
            max-width: 1200px;
            margin: 0 auto;
            padding: 40px 20px;
        }

        section {
            margin-bottom: 60px;
            min-height: 400px;
        }

        h1 {
            margin-bottom: 20px;
            color: #2c3e50;
        }
    </style>
</head>
<body>
    <nav class="main-nav">
        <div class="nav-container">
            <a href="#" class="logo">我的网站</a>
            <ul class="nav-menu">
                <li><a href="#home" class="active">首页</a></li>
                <li><a href="#about">关于我们</a></li>
                <li><a href="#services">服务项目</a></li>
                <li><a href="#products">产品中心</a></li>
                <li><a href="#contact">联系我们</a></li>
            </ul>
        </div>
    </nav>

    <main class="content">
        <section id="home">
            <h1>欢迎来到首页</h1>
            <p>这是一个简单的横向导航示例。</p>
        </section>
        
        <section id="about">
            <h1>关于我们</h1>
            <p>这里可以介绍公司或个人的相关信息。</p>
        </section>
        
        <section id="services">
            <h1>服务项目</h1>
            <p>展示提供的各种服务内容。</p>
        </section>
        
        <section id="products">
            <h1>产品中心</h1>
            <p>介绍主要产品和特色。</p>
        </section>
        
        <section id="contact">
            <h1>联系我们</h1>
            <p>提供联系方式和其他信息。</p>
        </section>
    </main>
</body>
</html>
运行结果如下:

常用 CSS 属性

属性 作用 常用值
display 显示方式 flex
justify-content 水平对齐 space-between
list-style 列表样式 none
text-decoration 文字装饰 none
padding 内边距 10px 20px

移动端适配

css 复制代码
@media (max-width: 768px) {
    .nav-menu {
        flex-direction: column;
        width: 100%;
    }
    
    .nav-menu a {
        padding: 15px;
        text-align: center;
        border-bottom: 1px solid #555;
    }
}

注意事项:

  1. 保持简洁:导航项不要太多,5-7个最合适
  2. 明确标识:让用户清楚知道当前所在位置
  3. 响应式设计:考虑手机等小屏幕设备的显示
  4. 颜色对比:确保文字和背景颜色有足够对比度
  5. 加载速度:避免使用过大的图片或复杂效果

总结

横向导航是网站的基础组件,好的导航应该具备以下几点:

  1. 结构清晰简单
  2. 视觉效果明确
  3. 操作方便直观
  4. 适应各种设备
相关推荐
子兮曰21 小时前
jev-ultrafast 深度解析:7 秒订机票的浏览器 Agent 是如何炼成的
前端·后端·agent
子兮曰21 小时前
Jev 爆发一周:7 秒 Agent 背后的 System One 生态与三场争议
前端·后端·ai编程
前端小万1 天前
写公众号赚了 3000 块后,我做了一款叫 "一键成稿" 的软件
前端·微信小程序
爱勇宝1 天前
ZCode 开源 24 小时:一份没有历史的账本,回答不了"有没有偷代码"
前端·后端·chatglm (智谱)
三十而立洋1 天前
Cookie 详解:从产生到安全,一次讲透
前端·javascript
卡布鲁1 天前
把一个 Vite + Vue3 应用塞进 qiankun (React + Umi3) 主站:十个坑的复盘
前端·javascript·react.js
汉堡大王95271 天前
Jev:不是聊天机器人, 而是一个智能 if 语句
前端·人工智能·后端
梦想很大很大1 天前
从运行事实到回归证据:Workrun 的 Telemetry 与 Evaluation 实践
前端·人工智能·后端
计算机魔术师1 天前
Meta Muse agent 接入 Shopify 的 Shop Pay 实现代理式购物
前端
沙蒿同学1 天前
我用 Go 搭了一条 AI Agent 流水线:从 1 张商品图到一整套淘宝详情页
前端·javascript·后端