后台管理系统中常见的三栏布局总结:使用element ui构建

使用的element ui中el-menu
在这里插入图片描述

  • vue2 使用 el-menu构建的列表布局: 列表可以折叠展开
<template><div class="home"><header><el-button type="primary" @click="handleClick">切换</el-button></header><div class="content"><el-scrollbar class="sidebar"><el-menuclass="menubox":collapse="this.$store.state.isCollapse"background-color="#25D083":class="{ collapse: this.$store.state.isCollapse }"><!-- 注意:这里是有扩展的子列表 , title放名称, el-men-item放的是具体内容 ! --><el-submenu index="1"><template slot="title"><i class="el-icon-location icon"></i><span slot="title">导航一</span></template><el-menu-item index="1-4-1"><i class="el-icon-location icon"></i><span>选项1</span></el-menu-item><el-menu-item index="1-4-1"><i class="el-icon-location icon"></i><span>选项2</span></el-menu-item></el-submenu><el-menu-itemindex="2"><i class="el-icon-menu icon"></i><span slot="title">导航二</span></el-menu-item><el-menu-item index="3"><i class="el-icon-document icon"></i><span slot="title">导航三</span></el-menu-item><el-menu-item index="4"><i class="el-icon-setting icon"></i><span slot="title">导航四</span></el-menu-item></el-menu></el-scrollbar><div class="mainbox"></div></div></div>
</template><script>
// @ is an alias to /srcexport default {name: "HomeView",data() {return {isCollapse: true,};},methods: {handleClick() {this.$store.dispatch("change");},},
};
</script>
<style lang="scss">
$topHeight: 60px;
$minWidth: 50px;
$maxWidth: 160px;
.border {border: 1px solid blue;
}
.home {box-sizing: border-box;overflow: hidden;height: 100vh;header {height: $topHeight;line-height: $topHeight;background: pink;}.content {display: flex;height: calc(100vh - $topHeight);// 侧边滚动条.sidebar {height: 100%;background: #25d083;// 设置最大高度,当高度超出时候滚动.menubox {width: $maxWidth;max-height: calc(100vh - $topHeight);transition: all 0.3s; // 设置过渡效果// 自定义修改el-menu的布局, 标题对应关系.el-submenu__title 和 el-menu-item.el-submenu > .el-submenu__title,.el-menu-item {margin: 20px auto;display: flex;flex-direction: column;justify-content: center;align-items: center;height: 70px;  // 默认的高度是56px, line-height也是56px, 根据需要修改line-height: 40px !important; .icon {font-size: 25px;}span {font-size: 14px;}}// 折叠后,el-menu-item的图标距离左边很远,发现是padding导致的,要!important.el-menu-item {.el-tooltip {padding: 0 !important;}}// 当el-menu折叠的时候&.collapse {width: $minWidth;}}}.mainbox {flex: 1;background: rgb(217, 236, 171);}}
}</style>

涉及到的知识点整理

  1. el-scrollbar 是element ui中的内置组件,没有官方文档。

    • 使用场景: 当只需要某一部分高度超出滚动,而不影响整体的布局时,将该部分用el-scrollbar包裹即可,一般要设置这部分的最大高度。
      <el-scrollbar><box style="max-height: 200px"> </box>
      </el-scrollbar>
      // 有时可能有横向滚动条/* 隐藏横向滚动条 */
      .el-scrollbar__wrap{overflow-x: hidden;
      }
      
  2. 将控制折叠展开的变量放在store中,防止跨组件通信比较麻烦

  3. 修改el-submenu 和 el-menu-item的样式(css基础不好,这块整理了好久才明白):自定义修改el-menu的布局, 标题对应关系.el-submenu__title 和 el-menu-item (牢记这两个位置)

    • 问题: 折叠后,发现自定义的宽度导致图标并没有居中
    • 解决方法:!important
        .el-menu-item {.el-tooltip {padding: 0 !important;}
      }
      
  4. 小建议: 可以使用scss先定义好 变量(侧边栏)的宽度,如200 -> 60, 在最外层加过渡效果,视觉更友好

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/73308.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

PHP手术麻醉信息系统的功能作用

手术麻醉信息系统源码 手术麻醉信息系统的使用&#xff0c;很大程度上方便了麻醉科医生的日常工作&#xff0c;使麻醉工作流程更规范&#xff0c;为麻醉医生工作提供了一个新平台。下面简述一下该系统在日常麻醉工作中的作用。 (一) 及时合理地安排手术 麻醉信息系统与医院现…

大数据-Spark批处理实用广播Broadcast构建一个全局缓存Cache

1、broadcast广播 在Spark中&#xff0c;broadcast是一种优化技术&#xff0c;它可以将一个只读变量缓存到每个节点上&#xff0c;以便在执行任务时使用。这样可以避免在每个任务中重复传输数据。 2、构建缓存 import org.apache.spark.sql.SparkSession import org.apache.s…

25.9 matlab里面的10中优化方法介绍—— 惩罚函数法求约束最优化问题(matlab程序)

1.简述 一、算法原理 1、问题引入 之前我们了解过的算法大部分都是无约束优化问题&#xff0c;其算法有&#xff1a;黄金分割法&#xff0c;牛顿法&#xff0c;拟牛顿法&#xff0c;共轭梯度法&#xff0c;单纯性法等。但在实际工程问题中&#xff0c;大多数优化问题都属于有约…

华为云CodeArts产品体验的心得体会及想法

文章目录 前言CodeArts 的产品优势一站式软件开发生产线研发安全Built-In华为多年研发实践能力及规范外溢高质高效敏捷交付 功能特性说明体验感受问题描述完结 前言 华为云作为一家全球领先的云计算服务提供商&#xff0c;致力于为企业和个人用户提供高效、安全、可靠的云服务。…

网络编程、网络编程的三要素、TCP/UDP通信、三次握手和四次挥手

&#x1f40c;个人主页&#xff1a; &#x1f40c; 叶落闲庭 &#x1f4a8;我的专栏&#xff1a;&#x1f4a8; c语言 数据结构 javaweb 石可破也&#xff0c;而不可夺坚&#xff1b;丹可磨也&#xff0c;而不可夺赤。 网络编程 一、初始网络编程1.1什么是网络编程1.2BS/CS的优…

OpenMMLab【超级视客营】——把类别信息加入可视化结果中(MMSegmentation的第二个PR)

文章目录 1. 任务说明1.0 新手指引1.1 任务目标1.2 提交格式 2. 实施2.1 可视化的形式2.2 拉分支和提交PR2.2.1 拉分支2.2.2 提交PR 2.3 MMSegmentation中关于可视化的内容2.3.1 文档说明2.3.2 相关PR&#xff08;确定要修改的文件&#xff09;2.3.3 提交时的代码测试 2.4 发现…

item_get-小红薯-商品详情

一、接口参数说明&#xff1a; item_get-获得小红薯商品详情&#xff0c;点击更多API调试&#xff0c;请移步注册API账号点击获取测试key和secret 公共参数 名称类型必须描述keyString是调用key&#xff08;http://o0b.cn/iimiya&#xff09;secretString是调用密钥api_nameS…

中国农村程序员学习此【ES6】购买大平层,开上帕拉梅拉,迎娶白富美出任CEO走上人生巅峰

注&#xff1a;最后有面试挑战&#xff0c;看看自己掌握了吗 文章目录 比较 var 和 let 关键字的作用域--var可能被随时覆盖-全局变量for循环全局作用域函数作用域块作用域循环作用域HTML 中的全局变量提升改变一个用 const 声明的数组防止对象改变使用箭头函数编写简洁的匿名函…

CPU密集型和IO密集型任务的权衡:如何找到最佳平衡点

关于作者&#xff1a;CSDN内容合伙人、技术专家&#xff0c; 从零开始做日活千万级APP。 专注于分享各领域原创系列文章 &#xff0c;擅长java后端、移动开发、人工智能等&#xff0c;希望大家多多支持。 目录 一、导读二、概览三、CPU密集型与IO密集型3.1、CPU密集型3.2、I/O密…

list遍历添加条件同时修改元素

list遍历添加条件同时修改元素 方式一 // 遍历list同时修改元素List<Person> list new ArrayList(16);list.add(new Person("小王", 18));list.add(new Person("小三", 17));list.stream().filter(item -> item.getAge() > 17).forEach(item…

Linux系统使用(超详细)

目录 Linux操作系统简介 Linux和windows区别 Linux常见命令 Linux目录结构 Linux命令提示符 常用命令 ls cd pwd touch cat echo mkdir rm cp mv vim vim的基本使用 grep netstat Linux面试题 Linux操作系统简介 Linux操作系统是和windows操作系统是并列…

docker 安装 字体文件

先说一下我当前的 场景 及 环境&#xff0c;这样同学们可以先评估本篇文章是否有帮助。 环境&#xff1a; dockerphp8.1-fpmwindows 之所以有 php&#xff0c;是因为这个功能是使用 php 开发的&#xff0c;其他语言的同学&#xff0c;如果也有使用到 字体文件&#xff0c;那么…

uniapp echarts 点击失效

这个问题网上搜了一堆&#xff0c;有的让你降版本&#xff0c;有的让你改源码。。。都不太符合预期&#xff0c;目前我的方法可以用最新的echarts。 这个方法就是由npm安装转为CDN&#xff0c;当然你可能会质疑用CDN这样会不稳定&#xff0c;那如果CDN的地址是本地呢&#xff1…

Stable Diffusion - Stable Diffusion WebUI 支持 SDXL 1.0 模型的环境配置

欢迎关注我的CSDN&#xff1a;https://spike.blog.csdn.net/ 本文地址&#xff1a;https://spike.blog.csdn.net/article/details/132056980 SDXL 1.0 版本 是 Stable Diffusion 的最新版本&#xff0c;是基于潜在扩散模型的文本到图像生成技术&#xff0c;能够根据输入的任何文…

uniapp小程序自定义loding,通过状态管理配置全局使用

一、在项目中创建loding组件 在uniapp的components文件夹下创建loding组件&#xff0c;如图&#xff1a; 示例代码&#xff1a; <template><view class"loginLoading"><image src"../../static/loading.gif" class"loading-img&q…

《ChatGPT原理最佳解释,从根上理解ChatGPT》

【热点】 2022年11月30日&#xff0c;OpenAI发布ChatGPT&#xff08;全名&#xff1a;Chat Generative Pre-trained Transformer&#xff09;&#xff0c; 即聊天机器人程序 &#xff0c;开启AIGC的研究热潮。 ChatGPT是人工智能技术驱动的自然语言处理工具&#xff0c;它能够…

make/makefile的使用

make/makefile 文章目录 make/makefile初步认识makefile的工作流程依赖关系和依赖方法make的使用 总结 make是一个命令&#xff0c;是一个解释makefile中指令的命令工具&#xff0c;makefile是一个文件&#xff0c;当前目录下的文件&#xff0c;两者搭配使用&#xff0c;完成项…

6.物联网操作系统信号量

一。信号量的概念与应用 信号量定义 FreeRTOS信号量介绍 FreeRTOS信号量工作原理 1.信号量的定义 多任务环境下使用&#xff0c;用来协调多个任务正确合理使用临界资源。 2.FreeRTOS信号量介绍 Semaphore包括Binary&#xff0c;Count&#xff0c;Mutex&#xff1b; Mutex包…

【Spring Boot】单元测试

单元测试 单元测试在日常项目开发中必不可少&#xff0c;Spring Boot提供了完善的单元测试框架和工具用于测试开发的应用。接下来介绍Spring Boot为单元测试提供了哪些支持&#xff0c;以及如何在Spring Boot项目中进行单元测试。 1.Spring Boot集成单元测试 单元测试主要用…