飞道的博客

html+css实现一个响应式管理平台架构模板

263人阅读  评论(0)

文本将会带你使用html+css实现一个响应式的管理平台架构模板,目前来说市面上的管理平台架构模板大同小异,文本的知识点都会符合场景所需。

目录

1、管理平台的架构内容 

2、顶部的布局

3、下半部分布局

4、左侧菜单区域实现 

5、右侧主体区域实现 

6、calc属性注意项 

7、完整源代码

8、结语 


1、管理平台的架构内容 

管理平台的架构内容一般包含顶部,用来布局Logo,广告语,右侧用于布局登录信息,如头像,用户名等,可能还会有一个下拉小三角,用于展示用于的一些快捷入口;

然后是左侧,用于布局一级和二级菜单(有一部分平台会有三级菜单);

然后是右侧主体部分,在采用vue react技术栈之前,大家采用jquery技术栈比较多,那个时候左侧的菜单点击后,会触发所属链接,然后右侧的主体部分是一个隐藏边框的iframe。当点击左侧菜单,便把链接赋值给iframe容器,产生不同的页面;而现在使用了v / r 技术栈呢,左侧点击菜单,调用了不同的路由,而路由的指向就是当前所需展示的组件。

2、顶部的布局

顶部一般设置height为60px,设定一个蓝色背景,并且当网页滚动的时候,顶部是吸到浏览器顶部的,不会随着纵向滚动条而滚动,代码如下:


  
  1. <div class= "top">顶部区域</div>
  2. .top {
  3. position: fixed;
  4. width: 100%;
  5. height: 60px;
  6. background: #0269b7;
  7. }

3、下半部分布局

下半部分的特点是距离顶部正好60px,但为了自适应,高度通过calc计算实现,当前浏览器高度减去顶部的60px高度,

为了满足左右布局的场景,之前是采用float布局方式,但容易造成的问题是,一旦右侧宽度超出,可能会使左右2个div纵向布局,不易管理;实现代码如下:


  
  1. <div class="body-box"> </div>
  2. .body-box {
  3. position: absolute;
  4. margin-top: 60px;
  5. width: 100%;
  6. height: calc(100vh - 60px);
  7. background: #AAA;
  8. display: flex;
  9. }

4、左侧菜单区域实现 

左侧菜单区域可以设定一个宽度200px,不过有些UI组件会使左侧可以拉伸,或者实现隐藏,而高度为了达到自适应目的,可以设定100%,满足body-box的高度填满,代码如下:


  
  1. <div class="left-nav">菜单区域 </div>
  2. .left-nav {
  3. width: 200px;
  4. height: 100%;
  5. background: yellow;
  6. }

5、右侧主体区域实现 

右侧主体区域的实现特点是高度自适应父容器高度,宽度自适应与浏览器宽度减去200,再减去一个边距,并且管理系统,一定会遇到高度超出的情况,所以,给此区域设定overflow-y: auto的属性值,代码如下:


  
  1. <div class="right-content">
  2. 主体 <br/>主体 <br/>主体 <br/>主体 <br/>
  3. 主体 <br/>主体 <br/>主体 <br/>主体 <br/>
  4. 主体 <br/>主体 <br/>主体 <br/>主体 <br/>
  5. 主体 <br/>主体 <br/>主体 <br/>主体 <br/>
  6. 主体 <br/>主体 <br/>主体 <br/>主体 <br/>
  7. 主体 <br/>主体 <br/>主体 <br/>主体 <br/>
  8. 主体 <br/>主体 <br/>主体 <br/>主体 <br/>
  9. 区域 </div>
  10. .right-content {
  11. width: calc(100vw - 200px - 20px);
  12. height: 100%;
  13. margin-left: 20px;
  14. background: #FFF;
  15. overflow-y: auto;
  16. }

6、calc属性注意项 

calc是css的一项非常大的进步创新项,证明css已经可以做一些简单的计算了,而通过sass等css辅助,甚至可以在css中做一些稍微复杂的计算。我一直畅享某一天css能发ajax了,然后再通过一些DOM操作优化,妥妥的将什么V/R全部颠覆了。

而calc有个注意项,就是括号内的计算符号左右一定要有空格,不带空格就不起作用,例如 calc(x - y),而不是calc(x-y)

7、完整源代码


  
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="utf-8" />
  5. <title>管理平台架构 </title>
  6. <style>
  7. html, body, * {
  8. margin: 0;
  9. padding: 0;
  10. }
  11. body {
  12. overflow-y: hidden;
  13. }
  14. .top {
  15. position: fixed;
  16. width: 100%;
  17. height: 60px;
  18. background: #0269b7;
  19. }
  20. .body-box {
  21. position: absolute;
  22. margin-top: 60px;
  23. width: 100%;
  24. height: calc( 100vh - 60px);
  25. background: #AAA;
  26. display: flex;
  27. }
  28. .left-nav {
  29. width: 200px;
  30. height: 100%;
  31. background: yellow;
  32. }
  33. .right-content {
  34. width: calc( 100vw - 200px - 20px);
  35. height: 100%;
  36. margin-left: 20px;
  37. background: #FFF;
  38. overflow-y: auto;
  39. }
  40. </style>
  41. </head>
  42. <body>
  43. <div class="top">顶部区域 </div>
  44. <div class="body-box">
  45. <div class="left-nav">菜单区域 </div>
  46. <div class="right-content">
  47. 主体 <br/>主体 <br/>主体 <br/>主体 <br/>
  48. 主体 <br/>主体 <br/>主体 <br/>主体 <br/>
  49. 主体 <br/>主体 <br/>主体 <br/>主体 <br/>
  50. 主体 <br/>主体 <br/>主体 <br/>主体 <br/>
  51. 主体 <br/>主体 <br/>主体 <br/>主体 <br/>
  52. 区域 </div>
  53. </div>
  54. </body>
  55. </html>

实现结果如图:

8、结语 

其实一套管理系统内部肯定内容很丰富,而很多同学的毕业设计可能就是一套什么什么管理系统,所以这只是一个开始,一个管理系统架构的开始。

例如顶部的用户信息交互,左侧的菜单级别如何展示,当前是某一个页面,如何使当前菜单处于高亮选中状态,菜单的权限问题;右侧的检索区域,表格区域,表单区域,等等,当然,为了快速产出项目,人们更习惯于引入成熟的组件库。

记得曾经2个同事在食堂吃饭,A问B,你用过elementui没,B说没用过。A说,连elementui都没用过,咋给了你一个高级,给了我一个中级呢。B说:那些组件我都是自己写的,不太喜欢用。


转载:https://blog.csdn.net/xingyu_qie/article/details/128623338
查看评论
* 以上用户言论只代表其个人观点,不代表本网站的观点或立场