3.使用ElementUI搭建側邊欄及頂部欄

1. 安裝ElementUI

ElementUI是基于 Vue 2.0 的桌面端組件庫。使用之前,需要在項目文件夾中安裝ElementUI,在終端中輸入以下命令,進行安裝。

npm i element-ui -S

并在main.js中引入ElementUI
在這里插入圖片描述

2. 使用elmentUI組件進行頁面布局

2.1 清空原有頁面樣式

App.vue

<template><div id="app"><router-view/></div>
</template>

HomeView.vue

<template><div class="home"></div>
</template>
<script>export default {name: 'HomeView',}
</script>

Aboutview.vue

<template><div class="about"></div>
</template>

2.2 拷貝elmentUI布局樣式到App.vue

在 ElementUI上找到下面的實例以及對應的代碼。
在這里插入圖片描述

<el-container style="height: 500px; border: 1px solid #eee"><el-aside width="200px" style="background-color: rgb(238, 241, 246)"><el-menu :default-openeds="['1', '3']"><el-submenu index="1"><template slot="title"><i class="el-icon-message"></i>導航一</template><el-menu-item-group><template slot="title">分組一</template><el-menu-item index="1-1">選項1</el-menu-item><el-menu-item index="1-2">選項2</el-menu-item></el-menu-item-group><el-menu-item-group title="分組2"><el-menu-item index="1-3">選項3</el-menu-item></el-menu-item-group><el-submenu index="1-4"><template slot="title">選項4</template><el-menu-item index="1-4-1">選項4-1</el-menu-item></el-submenu></el-submenu><el-submenu index="2"><template slot="title"><i class="el-icon-menu"></i>導航二</template><el-menu-item-group><template slot="title">分組一</template><el-menu-item index="2-1">選項1</el-menu-item><el-menu-item index="2-2">選項2</el-menu-item></el-menu-item-group><el-menu-item-group title="分組2"><el-menu-item index="2-3">選項3</el-menu-item></el-menu-item-group><el-submenu index="2-4"><template slot="title">選項4</template><el-menu-item index="2-4-1">選項4-1</el-menu-item></el-submenu></el-submenu><el-submenu index="3"><template slot="title"><i class="el-icon-setting"></i>導航三</template><el-menu-item-group><template slot="title">分組一</template><el-menu-item index="3-1">選項1</el-menu-item><el-menu-item index="3-2">選項2</el-menu-item></el-menu-item-group><el-menu-item-group title="分組2"><el-menu-item index="3-3">選項3</el-menu-item></el-menu-item-group><el-submenu index="3-4"><template slot="title">選項4</template><el-menu-item index="3-4-1">選項4-1</el-menu-item></el-submenu></el-submenu></el-menu></el-aside><el-container><el-header style="text-align: right; font-size: 12px"><el-dropdown><i class="el-icon-setting" style="margin-right: 15px"></i><el-dropdown-menu slot="dropdown"><el-dropdown-item>查看</el-dropdown-item><el-dropdown-item>新增</el-dropdown-item><el-dropdown-item>刪除</el-dropdown-item></el-dropdown-menu></el-dropdown><span>王小虎</span></el-header><el-main><el-table :data="tableData"><el-table-column prop="date" label="日期" width="140"></el-table-column><el-table-column prop="name" label="姓名" width="120"></el-table-column><el-table-column prop="address" label="地址"></el-table-column></el-table></el-main></el-container>
</el-container><style>.el-header {background-color: #B3C0D1;color: #333;line-height: 60px;}.el-aside {color: #333;}
</style><script>export default {data() {const item = {date: '2016-05-02',name: '王小虎',address: '上海市普陀區金沙江路 1518 弄'};return {tableData: Array(20).fill(item)}}};
</script>

**注意:**把代碼放在的上面。
在這里插入圖片描述

運行樣式效果如下:
在這里插入圖片描述

2.3 創建全局樣式文件并引入

2.3.1 創建global.css文件

上面的樣式與瀏覽器有間隙,需要創建一個global.css用于寫全局樣式。截圖如下:
在這里插入圖片描述
global.css代碼如下:

body {/*設置距離屏幕的邊距*/margin: 0;padding: 0;/*    隱藏溢出 清除浮動*/overflow: hidden;
}
/*把所有的元素變成盒狀模型:應用“box-sizing: border-box;”樣式后,盒子border和padding的參數值是被包含在width和height之內的。*/
* {/*外邊距不會額外占用1px的像素*/box-sizing: border-box;}

2.3.2 在main.js中引入這個css文件

在這里插入圖片描述

import '@/assets/global.css'

在這里插入圖片描述

2.3.3 調試側邊欄、頭部、表格組件樣式

(1)去掉默認展開第1和第3個菜單欄的樣式(藍色選中)
在這里插入圖片描述
(2)左側側邊欄向下拉滿
添加紅框內的代碼
在這里插入圖片描述
(3)去布局組件的邊框
刪除藍色選中的代碼,使上下左右都完全貼屏。
在這里插入圖片描述
(4)創建一個manager.css文件
用于寫頁面樣式,同樣main.js中引入這個css文件。
在這里插入圖片描述

2.3.4 更換側邊欄圖標(可選)

在ElementUI icon中找到喜歡的圖標
在這里插入圖片描述
復制圖標類名 更換下圖紅色框框的值
在這里插入圖片描述

最終樣式:
在這里插入圖片描述
最終代碼:
App.vue

<template><div><el-container style="height: 500px;"><!--      側邊欄--><el-aside  class="m-aside"><!--        logo和系統名稱--><div class="m-sysName" ><img src="@/assets/logo.png" alt="" width="10%"><span class="m-nameText">xxx系統</span></div><!--        側邊菜單欄--><el-menu class="el-menu" ><el-submenu index="1"><template slot="title"><i class="el-icon-user"></i>用戶管理</template><el-menu-item index="1-1">選項1</el-menu-item><el-menu-item index="1-2">選項2</el-menu-item></el-submenu><el-submenu index="2"><template slot="title"><i class="el-icon-news"></i>信息管理</template><el-menu-item index="2-1">選項1</el-menu-item><el-menu-item index="2-2">選項2</el-menu-item></el-submenu><el-submenu index="3"><template slot="title"><i class="el-icon-set-up"></i>系統設置</template><el-menu-item index="3-1">選項1</el-menu-item><el-menu-item index="3-2">選項2</el-menu-item></el-submenu></el-menu></el-aside><!--      右側--><el-container class="right-container"><!--        頂部菜單欄--><el-header class="top-header"><img src="@/assets/avtar.jpg" alt="" style="width: 40px;border-radius: 50%;margin-right: 10px;"><span style="color: #4c5a73;font-weight: bold;font-size: 14px;margin-right: 20px">王小虎</span><el-dropdown><i class="el-icon-setting" style="margin-right: 15px"></i><el-dropdown-menu slot="dropdown"><el-dropdown-item>個人中心</el-dropdown-item><el-dropdown-item>退出登錄</el-dropdown-item></el-dropdown-menu></el-dropdown></el-header><!--表單--><el-main ><el-table :data="tableData"><el-table-column prop="date" label="日期" width="140"></el-table-column><el-table-column prop="name" label="姓名" width="120"></el-table-column><el-table-column prop="address" label="地址"></el-table-column></el-table></el-main></el-container></el-container><router-view/></div>
</template><script>export default {data() {const item = {date: '2016-05-02',name: '王小虎',address: '上海市普陀區金沙江路 1518 弄'};return {tableData: Array(20).fill(item)}}};
</script>

manager.css

/*左側邊欄*/
.m-aside{width:270px;background-color: #39465C;overflow: hidden;min-height: 100vh;
}
/*側邊欄上面logo*/
.m-sysName{height:70px;display:flex;align-items: center;padding-left: 20px;border-bottom: 1px solid #4c5a73;
}
/*側邊欄上面的文字*/
.m-nameText{color: #e4e7e6;margin-left: 10px;font-size: 18px;font-weight: bold;
}
/*側邊欄菜單欄*/
.el-menu{background-color: #39465C;border-right:none !important;
}
/*頭部欄樣式*/
.el-header {background-color: #ffffff;border-bottom: 1px solid gainsboro;color: #333;height: 70px !important;line-height: 70px;
}
/* 右側背景顏色*/
.right-container{background-color: #EFF3F6;height: 100vh;
}
/*頂部居中*/
.top-header{font-size: 12px;/*設置垂直居中 先display:flex;在設置垂直居中,水平居右*/display: flex;align-items: center;justify-content: right;
}
/*側邊欄菜單一級字體顏色*/
.el-submenu__title{color: #e9e9e9;
}
/*側邊欄菜單懸浮背景顏色*/
.el-menu-item:hover, .el-submenu__title:hover {background: rgba(92, 113, 147, 0.24);}
/*側邊欄二級字體顏色*/
.el-menu-item {color: #e9e9e9;
}
/*二級菜單選中背景和顏色設置*/
.el-menu-item.is-active {color: #11cfd2;font-size: 14px;background: rgba(92, 113, 147, 0.24);
}

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/72761.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/72761.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/72761.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

C++并發以及多線程的秘密

1.基礎概念 并發&#xff08;Concurrency&#xff09; 并發是指在同一時間段內&#xff0c;多個任務看起來像是同時執行的。并發并不一定意味著真正的同時執行&#xff0c;它可以是通過時間片輪轉等方式在多個任務之間快速切換&#xff0c;讓用戶感覺多個任務在同時進行。并發…

從零開始實現大語言模型(十四):高階訓練技巧

1. 前言 預訓練大語言模型的流程與訓練普通神經深度網絡模型本質上并沒有任何不同。可以使用深度學習實踐中已經被證明非常有效的高階訓練技巧&#xff0c;優化大語言模型預訓練流程&#xff0c;使大語言模型預訓練效率更高&#xff0c;訓練過程更穩定。 本文介紹深度學習領域…

利用EasyCVR平臺打造化工園區視頻+AI智能化監控管理系統

化工園區作為化工產業的重要聚集地&#xff0c;其安全問題一直是社會關注的焦點。傳統的人工監控方式效率低下且容易出現疏漏&#xff0c;已經難以滿足日益增長的安全管理需求。 基于EasyCVR視頻匯聚平臺構建的化工園區視頻AI智能化應用方案&#xff0c;能夠有效解決這些問題&…

GB28181視頻監控流媒體平臺LiveGBS如何自定義收流端口區間以便減少收流端口數或解決端口沖突問題

LiveGBS GB28181流媒體服務在接收視頻的時候默認是使用30000-30249&#xff0c; webrtc流播放端口區間默認是UDP的30250-30500區間。有些網絡環境不方便開放這么大的端口區間&#xff0c;下面介紹下如何修改配置這個區間。 從頁面上修改這個區間&#xff0c;端口區間盡量設置大…

Qt:事件

目錄 處理事件 鼠標事件 鍵盤事件 定時器事件 窗口事件 雖然 Qt 是跨平臺的 C 開發框架&#xff0c;Qt 的很多能力其實是操作系統提供的 只不過 Qt 封裝了系統的 API 事件 前面學習過信號槽&#xff1a; 用戶進行的各種操作&#xff0c;就可能會產生出信號&#xff0c;可以…

責任鏈模式:優雅處理復雜流程的設計藝術

引言 在軟件設計中&#xff0c;我們經常會遇到需要按特定順序處理請求的場景。例如&#xff0c;一個訂單處理系統可能需要經過驗證、付款、物流安排和客戶通知等多個步驟。如果我們將這些步驟硬編碼在一個方法中&#xff0c;代碼將變得臃腫且難以維護。這時&#xff0c;責任鏈…

【STM32】玩轉IIC之驅動MPU6050及姿態解算

目錄 前言 一.MPU6050模塊介紹 1.1MPU6050簡介 1.2 MPU6050的引腳定義 1.3MPU6050寄存器解析 二.MPU6050驅動開發 2.1 配置寄存器 2.2對MPU6050寄存器進行讀寫 2.2.1 寫入寄存器 2.2.2讀取寄存器 2.3 初始化MPU6050 2.3.1 設置工作模式 2.3.2 配置采樣率 2.3.3 啟…

【ThreeJS Basics 09】Debug

文章目錄 簡介從 dat.GUI 到 lil-gui例子安裝 lil-gui 并實例化不同類型的調整改變位置針對非屬性的調整復選框顏色 功能/按鈕調整幾何形狀文件夾調整 GUI寬度標題關閉文件夾隱藏按鍵切換 結論 簡介 每一個創意項目的一個基本方面是能夠輕松調整。開發人員和參與項目的其他參與…

【Pandas】pandas Series explode

Pandas2.2 Series Computations descriptive stats 方法描述Series.argsort([axis, kind, order, stable])用于返回 Series 中元素排序后的索引位置的方法Series.argmin([axis, skipna])用于返回 Series 中最小值索引位置的方法Series.argmax([axis, skipna])用于返回 Series…

電腦網絡出現問題!簡單的幾種方法解除電腦飛行模式

在某些情況下&#xff0c;您可能需要關閉電腦上的飛行模式以便重新連接到 Wi-Fi、藍牙或其他無線網絡。本教程中簡鹿辦公將指導您如何在 Windows 和 macO S操作系統上解除飛行模式。 一、Windows 系統下解除飛行模式 通過快捷操作中心 步驟一&#xff1a;點擊屏幕右下角的通知…

nature genetics | SCENT:單細胞多模態數據揭示組織特異性增強子基因圖譜,并可識別致病等位基因

–https://doi.org/10.1038/s41588-024-01682-1 Tissue-specific enhancer–gene maps from multimodal single-cell data identify causal disease alleles 研究團隊和單位 Alkes L. Price–Broad Institute of MIT and Harvard Soumya Raychaudhuri–Harvard Medical S…

MyBatis-Plus 與 Spring Boot 的最佳實踐

在現代 Java 開發中,MyBatis-Plus 和 Spring Boot 的結合已經成為了一種非常流行的技術棧。MyBatis-Plus 是 MyBatis 的增強工具,提供了許多便捷的功能,而 Spring Boot 則簡化了 Spring 應用的開發流程。本文將探討如何將 MyBatis-Plus 與 Spring Boot 進行整合,并分享一些…

uploadlabs通關思路

目錄 靶場準備 復現 pass-01 代碼審計 執行邏輯 文件上傳 方法一&#xff1a;直接修改或刪除js腳本 方法二&#xff1a;修改文件后綴 pass-02 代碼審計 文件上傳 1. 思路 2. 實操 pass-03 代碼審計 過程&#xff1a; 文件上傳 pass-04 代碼審計 文件上傳 p…

AI編程工具節選

1、文心快碼 百度基于文心大模型推出的一款智能編碼助手&#xff0c; 官網地址&#xff1a;文心快碼(Baidu Comate)更懂你的智能代碼助手 2、通義靈碼 阿里云出品的一款基于通義大模型的智能編碼輔助工具&#xff0c; 官網地址&#xff1a;通義靈碼_你的智能編碼助手-阿里云 …

目錄掃描工具深度對比:Dirb、Dirsearch、DirBuster、Feroxbuster 與 Gobuster

? 前言 在網絡安全測試與滲透測試中&#xff0c;目錄掃描&#xff08;又稱目錄枚舉&#xff09;是一項至關重要的技術。它用于發現 Web 服務器上未公開的隱藏目錄和文件&#xff0c;這些資源可能包含敏感數據、配置文件甚至潛在漏洞&#xff0c;因而成為攻擊者與安全研究人員…

“雙碳”背景下,企業應該如何提升能源效率?

在當今競爭激烈的市場環境中&#xff0c;企業不僅需要優化成本&#xff0c;還需積極響應國家的能源政策&#xff0c;減少對環境的影響。提升工業能源效率正是實現這一雙重目標的關鍵。中國近年來大力推進“雙碳”目標&#xff08;碳達峰、碳中和&#xff09;&#xff0c;并出臺…

無人機擴頻技術對比!

一、技術原理與核心差異 FHSS&#xff08;跳頻擴頻&#xff09; 核心原理&#xff1a;通過偽隨機序列控制載波頻率在多個頻點上快速跳變&#xff0c;收發雙方需同步跳頻序列。信號在某一時刻僅占用窄帶頻譜&#xff0c;但整體覆蓋寬頻帶。 技術特點&#xff1a; 抗干擾…

當AI開始“思考“:拆解大模型訓練與推理的秘密(以DeepSeek為例)

如果你用過deepseek&#xff0c;可能體驗過它在幾秒內編故事、寫代碼的震撼。但你是否想過&#xff0c;這種"智能輸出"背后存在兩種完全不同的底層機制&#xff1f;就像人類需要先學習知識&#xff08;訓練&#xff09;才能考試答題&#xff08;推理&#xff09;&…

永洪科技深度分析實戰,零售企業的銷量預測

隨著人工智能技術的不斷發展&#xff0c;智能預測已經成為各個領域的重要應用之一。現在&#xff0c;智能預測技術已經廣泛應用于金融、零售、醫療、能源等領域&#xff0c;為企業和個人提供決策支持。 智能預測技術通過分析大量的數據&#xff0c;利用機器學習和深度學習算法…

Vue項目通過內嵌iframe訪問另一個vue頁面,獲取token適配后端鑒權(以內嵌若依項目舉例)

1. 改造子Vue項目進行適配(ruoyi舉例) (1) 在路由文件添加需要被外鏈的vue頁面配置 // 若依項目的話是 router/index.js文件 {path: /contrast,component: () > import(/views/contrast/index),hidden: true },(2) 開放白名單 // 若依項目的話是 permission.js 文件 cons…