如何使用 Bootstrap 创建一个简单的仪表板

2023-12-25 23:30

本文主要是介绍如何使用 Bootstrap 创建一个简单的仪表板,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

您想从现成的元素创建网站吗?Bootstrap是最流行的CSS框架之一。它允许我们从现成的组件(如导航栏或窗体)构建漂亮的 UI。Bootstrap 还提供响应式设计,因此,在正确使用网格的同时,您不必为移动视图执行额外的样式设置。

对于高级开发人员来说,CSS 框架似乎很简单,因为它主要是阅读文档,但初学者有时可能会在从 Bootstrap 组件构建项目时遇到问题。这就是为什么我决定创建本教程并构建一个简单的仪表板,并附有分步说明。

在本文中,我将创建一个带有导航栏、侧菜单、一些卡片和表格的响应式仪表板。我将使用Bootstrap,没有任何额外的插件。在本教程中,我将完成以下步骤:

  1. 创建初学者模板
  2. 创建导航栏
  3. 自定义样式
  4. 创建侧边菜单
  5. 创建表
  6. 创建卡片

让我们开始吧!

1. 创建入门模板

一开始,我们必须创建一个简单的HTML文件来启动我们的项目。我将调用我的仪表板.html。

在文件中,我不打算创建基本结构。我将使用添加了所有 CDN 链接的引导程序启动器模板。如果您想从引导页面获取它,请使用搜索表单并键入“入门模板”。让我们从下面的代码开始:

<!doctype html>
<html lang="en"><head><!-- Required meta tags --><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"><!-- Bootstrap CSS --><link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.4.1/css/bootstrap.min.css" integrity="sha384-Vkoo8x4CGsO3+Hhxv8T/Q5PaXtkKtu6ug5TOeNV6gBiFeWPGFN9MuhOf23Q9Ifjh" crossorigin="anonymous"><title>Hello, world!</title></head><body><h1>Hello, world!</h1><!-- Optional JavaScript --><!-- jQuery first, then Popper.js, then Bootstrap JS --><script src="https://code.jquery.com/jquery-3.4.1.slim.min.js" integrity="sha384-J6qa4849blE2+poT4WnyKhv5vZF5SrPo0iEjwBvKU7imGFAV0wwj1yYfoRSJoZ+n" crossorigin="anonymous"></script><script src="https://cdn.jsdelivr.net/npm/popper.js@1.16.0/dist/umd/popper.min.js" integrity="sha384-Q6E9RHvbIyZFJoft+2mJbHaEWldlvI9IOYy5n3zV9zzTtmI3UksdQRVvoxMfooAo" crossorigin="anonymous"></script><script src="https://stackpath.bootstrapcdn.com/bootstrap/4.4.1/js/bootstrap.min.js" integrity="sha384-wfSDF2E50Y2D1uUdj0O3uMBJnjuUD4Ih7YwaYd1iqfktj0Uod8GCExl3Og8ifwB6" crossorigin="anonymous"></script></body>
</html>

接下来,如果您将在浏览器中运行该文件,您可以看到 Hello world 标头!现在,让我们创建第一个组件,即导航栏。

2. 创建导航栏

在设置容器和网格之前,我将添加一个导航栏,该导航栏将采用窗口的整个宽度。为此,如果您希望看到所有导航栏组件在 Bootstrap 网站上搜索它,我将使用导航栏组件。

我将使用以下代码。

<nav class="navbar navbar-dark fixed-top bg-primary flex-md-nowrap p-0 shadow"></nav>

你可能意识到我添加了一些额外的类,如 bg-primary 或 fixed-top。它们将作为粘性标题和蓝色的结果给出。

我的导航栏中将包含三个元素:项目名称、搜索栏和注销链接。让我们添加它们。

<a class="navbar-brand col-sm-3 col-md-2 mr-0" href="#">Duomly Dashboard</a>
<input type="text" class="form-control form-control-primary w-100" placeholder="Search..." >
<ul class="navbar-nav px-3"><li class="nav-item text-nowrap"><a class="nav-link" href="#">Logout</a></li>
</ul>

在搜索栏中,我添加了一个自定义类,因为我想稍微设置元素的样式,但我将在下一步中执行此操作。

3. 自定义样式

要为引导元素添加自定义样式,我需要一个 CSS 文件,所以让我们创建一个。我将调用我的文件仪表板.css以与项目保持一致。要使此文件在 HTML 结构中可读,您必须在文档头部的引导链接下方添加一个链接。

<link rel="stylesheet" href="./dashboard.css" >

现在,您可以在新CSS文件中的搜索栏中添加一些样式。

.form-control-primary {margin: 10px;opacity: 0.2;border-radius: 2px;
}

太好了,第一个元素已经准备好了;我们可以看到它现在的样子。

4. 创建侧边菜单

我想每个人都知道大多数仪表板是什么样子的,它们通常有一个侧边菜单,这就是我们现在要做的。但首先,让我们添加容器。

<div class="container-fluid"><div class="row"><!-- Sidear --></div>
</div>

如果容器准备好了,我们需要腾出一些空间来构建侧边栏,因为 Bootstrap 没有提供现成的侧边栏。但不用担心,在我们的例子中,这只是设置列样式并添加菜单的问题。让我们先在行 div 中使用以下代码为侧边栏创建一个空格。

<div class="col-md-2 bg-light d-none d-md-block sidebar"><div class="left-sidebar"></div>
</div>

是时候在我们的侧边菜单中添加一些真正的菜单了。让我们看一下您应该使用的 Bootstrap 网站上的垂直导航。除了纯菜单,我还在每个菜单项中使用了图标。图标将添加为 SVG。

<ul class="nav flex-column sidebar-nav"><li class="nav-item"><a class="nav-link active" href="#"><svg class="bi bi-chevron-right" width="16" height="16" viewBox="0 0 20 20" fill="currentColor" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M6.646 3.646a.5.5 0 01.708 0l6 6a.5.5 0 010 .708l-6 6a.5.5 0 01-.708-.708L12.293 10 6.646 4.354a.5.5 0 010-.708z" clip-rule="evenodd"/></svg>Candidates</a></li><li class="nav-item"><a class="nav-link" href="#"><svg class="bi bi-chevron-right" width="16" height="16" viewBox="0 0 20 20" fill="currentColor" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M6.646 3.646a.5.5 0 01.708 0l6 6a.5.5 0 010 .708l-6 6a.5.5 0 01-.708-.708L12.293 10 6.646 4.354a.5.5 0 010-.708z" clip-rule="evenodd"/></svg>Jobs</a></li><li class="nav-item"><a class="nav-link" href="#"><svg class="bi bi-chevron-right" width="16" height="16" viewBox="0 0 20 20" fill="currentColor" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M6.646 3.646a.5.5 0 01.708 0l6 6a.5.5 0 010 .708l-6 6a.5.5 0 01-.708-.708L12.293 10 6.646 4.354a.5.5 0 010-.708z" clip-rule="evenodd"/></svg>Orders</a></li><li class="nav-item"><a class="nav-link" href="#"><svg class="bi bi-chevron-right" width="16" height="16" viewBox="0 0 20 20" fill="currentColor" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M6.646 3.646a.5.5 0 01.708 0l6 6a.5.5 0 010 .708l-6 6a.5.5 0 01-.708-.708L12.293 10 6.646 4.354a.5.5 0 010-.708z" clip-rule="evenodd"/></svg>Invoices</a></li><li class="nav-item"><a class="nav-link" href="#"><svg class="bi bi-chevron-right" width="16" height="16" viewBox="0 0 20 20" fill="currentColor" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M6.646 3.646a.5.5 0 01.708 0l6 6a.5.5 0 010 .708l-6 6a.5.5 0 01-.708-.708L12.293 10 6.646 4.354a.5.5 0 010-.708z" clip-rule="evenodd"/></svg>Reports</a></li>
</ul>

太好了,现在我们需要添加一些样式。

.sidebar {position: fixed;left: 0;bottom: 0;top: 0;z-index: 100;padding: 70px 0 0 10px;border-right: 1px solid #d3d3d3;
}.left-sidebar {position: sticky;top:0;height: calc(100vh - 70px)
}.sidebar-nav li .nav-link {color: #333;font-weight: 500;
}

现在,我们可以检查结果了!

5. 创建表节

在此步骤中,我们将在仪表板中创建主空间,并向该部分添加一个响应式表格。
为了创建主要部分,我们将在侧菜单后使用以下代码。

<main role="main" class="col-md-9 ml-sm-auto col-lg-10 px-4"></main>

太好了,现在我们可以添加标题和表格了。我选择了一个深色表并添加了一些假数据。此外,为了使它愉快,我在标题和表格之间添加了一个分隔线。让我们创建它。

<h3>Candidates</h3>
<hr>
<div class="table-responsive"><table class="table table-dark"><thead><tr><th scope="col">#</th><th scope="col">First</th><th scope="col">Last</th><th scope="col">Position</th></tr></thead><tbody><tr><th scope="row">1</th><td>Mark</td><td>Otto</td><td>Project Manager</td></tr><tr><th scope="row">2</th><td>Jacob</td><td>Thornton</td><td>JS developer</td></tr><tr><th scope="row">3</th><td>Larry</td><td>Bird</td><td>Back-end developer</td></tr><tr><th scope="row">4</th><td>Martin</td><td>Smith</td><td>Back-end developer</td></tr><tr><th scope="row">5</th><td>Kate</td><td>Mayers</td><td>Scrum master</td></tr></tbody></table>
</div>

可能现在你看到它有点坏了,我这里有一个解决方案,作为一小段 CSS 代码。

main {padding-top: 90px;
}

6. 创建卡片部分

现在,让我们添加另一个部分,其中包含几张代表发票的卡片。让我们添加另一个标题和分隔符以保持一致。

<h3>Invoice</h3>
<hr>

完成后,让我们使用两张卡片,每张卡片为半列,我将使用它两次。

<div class="row"><div class="col-sm-6"><div class="card"><div class="card-body"><h5 class="card-title">Invoice #184382</h5><p class="card-text">Donec nec justo eget felis facilisis fermentum. Aliquam porttitor mauris sit amet orci. Aenean dignissim pellentesque felis.</p><a href="#" class="btn btn-primary">Print</a></div></div></div><div class="col-sm-6"><div class="card"><div class="card-body"><h5 class="card-title">Invoice #184386</h5><p class="card-text">Donec nec justo eget felis facilisis fermentum. Aliquam porttitor mauris sit amet orci. Aenean dignissim pellentesque felis.</p><a href="#" class="btn btn-primary">Print</a></div></div></div>
</div><div class="row"><div class="col-sm-6"><div class="card"><div class="card-body"><h5 class="card-title">Invoice #184389</h5><p class="card-text">Donec nec justo eget felis facilisis fermentum. Aliquam porttitor mauris sit amet orci. Aenean dignissim pellentesque felis.</p><a href="#" class="btn btn-primary">Print</a></div></div></div><div class="col-sm-6"><div class="card"><div class="card-body"><h5 class="card-title">Invoice #184391</h5><p class="card-text">Donec nec justo eget felis facilisis fermentum. Aliquam porttitor mauris sit amet orci. Aenean dignissim pellentesque felis.</p><a href="#" class="btn btn-primary">Print</a></div></div></div>
</div>

要使其看起来漂亮,必须做的最后一件事是为行添加一点边距。让我们去做吧。

main .card {margin-bottom: 20px;
}

呜呼。它准备好了。让我们检查一下结果。另外,请随时检查响应能力。

结论

在本教程中,您可以学习如何使用 Bootstrap 构建一个简单的仪表板,而无需使用其他样式。使用 CSS 框架是在短时间内制作完全响应的简单布局的好方法。

凭借大量的现成组件和基于弹性框的网格,Bootstrap 是一个方便的工具。初学者可以非常快速地完成更高级的事情,但对于不想花费很长时间为每个项目构建可重用 CSS 基础的高级开发人员也是如此。

这篇关于如何使用 Bootstrap 创建一个简单的仪表板的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!


原文地址:https://blog.csdn.net/allway2/article/details/127816343
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.chinasem.cn/article/537348

相关文章

鸿蒙中@State的原理使用详解(HarmonyOS 5)

《鸿蒙中@State的原理使用详解(HarmonyOS5)》@State是HarmonyOSArkTS框架中用于管理组件状态的核心装饰器,其核心作用是实现数据驱动UI的响应式编程模式,本文给大家介绍... 目录一、@State在鸿蒙中是做什么的?二、@Spythontate的基本原理1. 依赖关系的收集2.

Python基础语法中defaultdict的使用小结

《Python基础语法中defaultdict的使用小结》Python的defaultdict是collections模块中提供的一种特殊的字典类型,它与普通的字典(dict)有着相似的功能,本文主要... 目录示例1示例2python的defaultdict是collections模块中提供的一种特殊的字

C++ Sort函数使用场景分析

《C++Sort函数使用场景分析》sort函数是algorithm库下的一个函数,sort函数是不稳定的,即大小相同的元素在排序后相对顺序可能发生改变,如果某些场景需要保持相同元素间的相对顺序,可使... 目录C++ Sort函数详解一、sort函数调用的两种方式二、sort函数使用场景三、sort函数排序

Java String字符串的常用使用方法

《JavaString字符串的常用使用方法》String是JDK提供的一个类,是引用类型,并不是基本的数据类型,String用于字符串操作,在之前学习c语言的时候,对于一些字符串,会初始化字符数组表... 目录一、什么是String二、如何定义一个String1. 用双引号定义2. 通过构造函数定义三、St

Pydantic中Optional 和Union类型的使用

《Pydantic中Optional和Union类型的使用》本文主要介绍了Pydantic中Optional和Union类型的使用,这两者在处理可选字段和多类型字段时尤为重要,文中通过示例代码介绍的... 目录简介Optional 类型Union 类型Optional 和 Union 的组合总结简介Pyd

Vue3使用router,params传参为空问题

《Vue3使用router,params传参为空问题》:本文主要介绍Vue3使用router,params传参为空问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录vue3使用China编程router,params传参为空1.使用query方式传参2.使用 Histo

使用Python自建轻量级的HTTP调试工具

《使用Python自建轻量级的HTTP调试工具》这篇文章主要为大家详细介绍了如何使用Python自建一个轻量级的HTTP调试工具,文中的示例代码讲解详细,感兴趣的小伙伴可以参考一下... 目录一、为什么需要自建工具二、核心功能设计三、技术选型四、分步实现五、进阶优化技巧六、使用示例七、性能对比八、扩展方向建

使用Python实现一键隐藏屏幕并锁定输入

《使用Python实现一键隐藏屏幕并锁定输入》本文主要介绍了使用Python编写一个一键隐藏屏幕并锁定输入的黑科技程序,能够在指定热键触发后立即遮挡屏幕,并禁止一切键盘鼠标输入,这样就再也不用担心自己... 目录1. 概述2. 功能亮点3.代码实现4.使用方法5. 展示效果6. 代码优化与拓展7. 总结1.

使用Python开发一个简单的本地图片服务器

《使用Python开发一个简单的本地图片服务器》本文介绍了如何结合wxPython构建的图形用户界面GUI和Python内建的Web服务器功能,在本地网络中搭建一个私人的,即开即用的网页相册,文中的示... 目录项目目标核心技术栈代码深度解析完整代码工作流程主要功能与优势潜在改进与思考运行结果总结你是否曾经

Linux中的计划任务(crontab)使用方式

《Linux中的计划任务(crontab)使用方式》:本文主要介绍Linux中的计划任务(crontab)使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、前言1、linux的起源与发展2、什么是计划任务(crontab)二、crontab基础1、cro