最新CSS3纵向菜单的实现

纵向菜单

通过下面例子,你会知道把列表转换成菜单的关键技术

a中的#是URL的占位符可以点击,真正用途中写实际URL

html 复制代码
<nav class="list1">
    <ul>
        <li><a href="#">Alternative</a></li>
        <li><a href="#">Country</a></li>
        <li><a href="#">Jazz</a></li>
        <li><a href="#">Rock</a></li>
    </ul>
</nav>
  1. 新建HTML页面,并初始化上面的内容
  2. 去掉默认的内边距和外边距
  3. 设置菜单位置外边框50px,宽度150px
  4. 给菜单加上边框1px,固态,#f00,圆角3px,内边距上5px,左右10px,下3px
  5. 去掉项目符号并添加链接间距上下3px,左右10px
  6. 非首位选择器设置上边框1px,实线,#f00
  7. 链接添加样式,去掉下划线,字体大小20px,字体为Exo, helvetica,arial, sans-serif,字体粗细400,字体颜色#000,背景颜色#ffed53
  8. 悬停到a上高亮,字体变为#069
  9. 目前只有文本可以点击(a是行内元素收缩包住了文本),为了用户体验整行都能点击,将li的内边距移到a内部,上边框红线给非首位li中的a加上,a为了撑满显示为块级元素。

案例源码如下:

html 复制代码
<!DOCTYPE html>
<html>
    <head>
    <meta charset="utf-8">
    <title></title>
    <style>
        * {
            margin: 0;
            padding: 0;
        }
        nav {
            margin: 50px;
            width: 150px;
        }
        .list1 ul {
            border: 1px solid #f00;
            border-radius: 3px;
            padding: 5px 10px 3px;
        }
        .list1 li {
            list-style-type: none;
        }
        .list1 li+li a {
            border-top: 1px solid #f00;
        }
        
        .list1 a {
            display: block;
            padding: 3px 10px;
            text-decoration: none;
            font: 20px Exo, helvetica, arial, sans-serif;
            font-weight: 400;
            color: #000;
            background: #ffed53;
        }
        .list1 a:hover {
            color: #069;        
        }
    </style>
    </head>
    <body>
    <nav class="list1">
        <ul>
            <li><a href="#">Alternative</a></li>
            <li><a href="#">Country</a></li>
            <li><a href="#">Jazz</a></li>
            <li><a href="#">Rock</a></li>
        </ul>
    </nav>
    </body>
</html>
相关推荐
薛定猫AI15 小时前
【深度解析】Gemma Chat 本地 AI 编程 Agent:Electron + MLX + 开源模型的离线 Vibe Coding 实战
javascript·人工智能·electron
kyriewen15 小时前
Webpack vs Vite:一个是“老黄牛”,一个是“猎豹”,你选谁?
前端·webpack·vite
打小就很皮...15 小时前
html2canvas + jsPDF 生成 PDF 的踩坑与解决方案总结
前端·pdf
全栈前端老曹15 小时前
【前端地图】多地图平台适配方案——高德、百度、腾讯、Google Maps SDK 差异对比、封装统一地图接口
前端·javascript·百度·dubbo·wgs84·gcj-02·bd09
笑虾15 小时前
Win10 修改注册表 让鼠标悬停PNG上时 tip 始终显示分辨率
开发语言·javascript·ecmascript
雾岛听风69115 小时前
JavaScript基础语法速查手册
开发语言·前端·javascript
遇见~未来15 小时前
第三篇_现代布局_从弹性到网格
前端·css3
前端那点事15 小时前
Vue前端SEO优化全攻略(实操落地版,新手也能上手)
前端·vue.js
Dxy123931021616 小时前
HTML 如何使用 SVG 画曲线
前端·算法·html
用户23678298016816 小时前
从零实现 GIF 制作工具:LZW 压缩与 Median Cut 色彩量化
前端·javascript