用flex,实现多级菜单分类展示,这里记录一下,方便以后查阅.

效果展示如下:

跟上面floor的设计差不多,鼠标hover全部商品分类的时候,将下拉列表展示在指定区域,这个类似鼠标悬浮商品图片期待上线的按钮出现的方式,不过由于一级分类和二级分类没有不是父子关系,在处理一级分类hover对应二级分类改变样式的时候,不得不使用了js改变二级分类的样式

html页面设计如下:

<div class="left-menu">
<div class="left-menu-wrap">
<div class="left-menu-top">
<ul>
<li class="all"><a href="#">全部商品分类</a></li>
<li><a href="#">货比三家</a></li>
<li><a href="#">限时抢购</a></li>
<li><a href="#">平价超市</a></li>
<li><a href="#">实体验店</a></li>
<li><a href="#">溯源</a></li>
<li><a href="#">周期购</a></li>
</ul>
</div>
<div class="left-menu-bottom">
<div class="left-menu-bottom-warp">
<div class="left-menu-bottom-left">
<ul>
<li><a class="one" href="#">原汁原味</a></li>
<li><a class="two" href="#">特色零食</a></li>
<li><a class="three" href="#">高原鲜品</a></li>
<li><a class="four" href="#">生态粮油</a></li>
<li><a class="five" href="#">红茶特饮</a></li>
<li><a class="six" href="#">美酒佳酿</a></li>
<li><a class="seven" href="#">滋补养生</a></li>
<li><a class="eight" href="#">母婴专区</a></li>
<li><a class="nine" href="#">日用百货</a></li>
<li><a class="ten" href="#">生活家电</a></li>
</ul>
</div>
<div class="left-menu-bottom-right">
<ul style="padding-left: 20px;padding-right: 20px">
<li class="onehover"><a href="#">原汁原味</a><a href="#">原汁原味</a><a href="#">原汁原味</a></li>
<li class="twohover"><a href="#">特色零食</a><a href="#">特色零食</a><a href="#">特色零食</a></li>
<li class="threehover"><a href="#">高原鲜品</a><a href="#">高原鲜品</a></li>
<li class="fourhover"><a href="#">生态粮油</a><a href="#">生态粮油</a><a href="#">生态粮油</a><a href="#">生态粮油</a>
</li>
<li class="fivehover"><a href="#">茶特饮</a><a href="#">红茶特饮</a><a href="#">红茶特饮</a><a href="#">红茶特饮</a><a
href="#">红茶特饮</a><a
href="#">红茶特饮</a></li>
<li class="sixhover"><a href="#">美酒佳酿</a><a href="#">美酒佳酿</a><a href="#">美酒佳酿</a></li>
<li class="sevenhover"><a href="#">滋补养生</a><a href="#">滋补养生</a><a href="#">滋补养生</a></li>
<li class="eighthover"><a href="#">母婴专区</a><a href="#">母婴专区</a><a href="#">母婴专区</a><a href="#">母婴专区</a><a
href="#">母婴专区</a>
</li>
<li class="ninehover"><a href="#">日用百货</a><a href="#">日用百货</a><a href="#">日用百货</a></li>
<li class="tenhover"><a href="#">生活家电</a><a href="#">生活家电</a></li>
</ul> </div>
</div>
</div>
</div>
</div>

css:

* {
margin:;
padding:;
list-style: none;
text-decoration: none;
text-outline: none;
background: none;
text-align: justify;
text-outline: none;
line-height: 20px;
text-space: 1px;
} .left-menu {
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
background: #ff260b;
height: 60px;
} .left-menu-wrap {
width: 1200px;
} .left-menu-top > ul {
display: flex;
flex-direction: row;
} .left-menu-top > ul > li {
flex:;
float: left;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
} .left-menu-top > ul > li > a {
font-size: 18px;
flex:;
padding-top: 20px;
padding-bottom: 20px;
color: #FFF;
width: 100%;
text-align: center;
} .left-menu-bottom-warp {
position: absolute;
width: 300px;
height: 813px;
padding: 20px;
background: #f4f4f4;
} .left-menu-bottom {
display: none;
position: relative;
top:;
left:;
z-index:;
transition: 100s;
} .left-menu-bottom-left > ul > li {
display: flex;
flex-direction: row;
justify-content: center;
align-items: center;
} .left-menu-bottom-left > ul > li > a {
text-align: center;
width: 100%;
line-height: 80px;
color: #0C0C0C;
border-bottom: 1px solid #e0e0e0;
border-top: 1px solid #e0e0e0;
margin-top: -1px;
} .left-menu-bottom-right {
position: absolute;
top:;
left: 340px;
width: 500px;
background: rgba(244, 244, 244, 0.91);
padding-top: 20px;
padding-bottom: 20px;
} .left-menu-bottom-right ul li {
padding-left: 20px;
padding-right: 20px;
height: 80px;
display: flex;
flex-direction: row;
flex-wrap: wrap;
border-top: #e0e0e0 1px solid;
border-bottom: #e0e0e0 1px solid;
margin-top: -1px;
justify-content: flex-start;
align-items: center; } .left-menu-bottom-right ul li a {
color: #0C0C0C;
flex:;
} .left-menu-bottom-right ul li a:hover {
color: red;
} .all {
background: #9e0909;
}
.left-menu-bottom-right ul li:hover
{
background: #FFFFFF; }

  javascript:

$(function () {
let bottom = $(".left-menu-bottom");
$(".all").hover(function () {
bottom.css("display", "block")
}, function () {
bottom.css("display", "none")
})
bottom.hover(function () {
bottom.css("display", "block")
}, function () {
bottom.css("display", "none")
})
$(".left-menu-bottom-left>ul li a").hover(function (e) {
$('.' + e.target.className + 'hover').css("background", "#FFFF");
}, function (e) {
$('.' + e.target.className + 'hover').css("background", "none");
});
$(" .left-menu-bottom-right ul li").hover(function (e) {
$(this).css("background", "#FFFFFF");
}, function (e) {
$(this).css("background", "none");
})
});

  

flex 布局 实现电商网页菜单的多级分类展示的更多相关文章

  1. flex 布局 实现电商页面商品展示floor

    有了上一篇,对flex的初次使用,心里痒痒的试着,实现了电商首页,商品展示的floor,先看下效果: 要实现首先是对组件构件的拆解,拆解如下: 页面布局如下: <div class=" ...

  2. UI设计教程分享:电商网页页面设计常见表现手法

    1.手绘插画  场景.人物以及加上故事的创意绘画 会给人梦幻若隐若现的感觉,留下深刻的印象,适合做活动页面以及宣传自已的品牌 2.简约 颜色少于三色,背景以明度偏低的颜色为主,在信息大爆炸的时代,我们 ...

  3. Flutter移动电商实战 --(23)分类页_左侧类别导航制作

    自动生成dart类 https://javiercbk.github.io/json_to_dart/ 生成的代码 class Autogenerated { String code; String ...

  4. Flutter移动电商实战 --(21)分类页_类别信息接口调试

    先解决一个坑 取消上面的GridVIew的回弹效果.就是在拖这个gridview的时候有一个滚动的效果 physics: NeverScrollableScrollPhysics(), 大R刷新后,点 ...

  5. Java生鲜电商平台-App系统架构开发与设计

    Java生鲜电商平台-App系统架构开发与设计 说明:阅读此文,你可以学习到以下的技术分享 1.Java生鲜电商平台-App架构设计经验谈:接口的设计2.Java生鲜电商平台-App架构设计经验谈:技 ...

  6. css3弹性伸缩布局(一)—————flex布局

    CSS3弹性伸缩布局简介 2009年,W3C提出了一种崭新的方案—-Flex布局(即弹性伸缩布局),它可以简便.完整.响应式地实现各种页面布局,包括一直让人很头疼的垂直水平居中也变得很简单地就迎刃而解 ...

  7. 14 微服务电商【黑马乐优商城】:day04-项目搭建(一)

    本项目的笔记和资料的Download,请点击这一句话自行获取. day01-springboot(理论篇) :day01-springboot(实践篇) day02-springcloud(理论篇一) ...

  8. java亿级流量电商详情页系统的大型高并发与高可用缓存架构实战视频教程

    亿级流量电商详情页系统的大型高并发与高可用缓存架构实战 完整高清含源码,需要课程的联系QQ:2608609000 1[免费观看]课程介绍以及高并发高可用复杂系统中的缓存架构有哪些东西2[免费观看]基于 ...

  9. 以太坊开发DApp实战教程——用区块链、星际文件系统(IPFS)、Node.js和MongoDB来构建电商平台(一)

    第一节 简介 欢迎和我们一起来用以太坊开发构建一个去中心化电商DApp!我们将用区块链.星际文件系统(IPFS).Node.js和MongoDB来构建电商平台类似淘宝的在线电商应用,卖家可以自由地出售 ...

随机推荐

  1. Mac OS X 操作系统下JDK安装与环境变量配置

    1. 下载JDK. 去oracle官网的Java SE Downloads页面(如图 1),下载Mac os版本JDK(如图 2): 图 1 图 2   2. 安装JDK. 下载完成后,双击.dmg文 ...

  2. JAVA写接口傻瓜(?)教程(一)

    当一个安卓开发人员/微信小程序开发者想做点什么的时候,如果他发现没有合适的接口,那么单机安卓.本地数据库emmm.没了接口就好像老人没了拐杖.盲人没了墨镜,完全可以称得上是举步维艰.生活艰难到需要自己 ...

  3. Hive - - 分组求最大,最小(加行键)

    Hive - - 分组求最大,最小(加行键) 数据: 1325927 陕西 汉中 084 08491325928 陕西 汉中 084 08491325930 陕西 延安 084 08421325931 ...

  4. ceph使用对象网关

    1.   介绍 三种验证客户端的方式选一种就行了 2.    安装 2.1 创建对象存储网关系统 步骤1:安装文档安装ceph 步骤2:初始化缓存网关 [root@node1 my-cluster]# ...

  5. AngelToken揭秘区块链之四大链

    区块链,有着各种不同,与之相对应的就是内涵和功能.在区块链领域经常出现的四大链有:公有链.私有链.联盟链.许可链,这些链又分别可以为区块链干什么呢? 公有链(Public Blockchain) 是指 ...

  6. java第五次笔记

  7. Django部署以及整合celery

    前言 Djngo部署的结构一般都是nginx+uwsgi+python web 一.新建一个Djang项目并合并celery 项目名随便打的..命名规范驼峰啥的别和我扯犊子哈 跑一下,然后我们就有一个 ...

  8. java完整并发知识结构图

    一张大的java并发知识结构图,梳理清楚知识的脉络,知识不再零散

  9. UVa-156 Ananagrams(map映射)

    #include <iostream> #include <algorithm> #include <cmath> #include <cstdio> ...

  10. PAT B1013

    PAT B1013 标签(空格分隔): PAT 解法:埃氏筛法 注意点: 1. 由于不知道第n个素数有多大,所以要用一个大的数组来储存结果. 2. 注意输出格式,末尾不能有多余空格 #include ...