初试Bootstrap前端框架

news2024/11/18 18:45:54

文章目录

  • 一、Bootstrap概述
  • 二、Bootstrap实例
    • 1、创建网页
    • 2、编写代码
    • 3、代码说明
    • 4、浏览网页,查看结果
    • 5、登录按钮事件处理
    • 6、浏览网页,查看结果
  • 三、实战小结

在这里插入图片描述

一、Bootstrap概述

大家好,今天我们将一起学习一个非常流行的前端框架——Bootstrap。Bootstrap是一个用于快速开发响应式和移动优先网页的框架。它提供了丰富的CSS类和JavaScript插件,帮助我们简化布局、导航、表单、按钮等常见组件的创建。Bootstrap的核心特点包括易用性、灵活性和广泛的社区支持,这使得开发者能够高效地构建美观且功能强大的网站。


二、Bootstrap实例

1、创建网页

首先,我们将创建一个名为bootstrap_demo.html的网页文件。

2、编写代码

接下来,我们需要导入Bootstrap框架的样式和JavaScript文件,然后编写页面代码。

<!DOCTYPE html>
<html>
<head>
	<meta charset="utf-8">
	<title>演示Bootstrap</title>
	<!-- 导入Bootstrap框架的CSS -->
	<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-QWTKZyjpPEjISv5WaRU9OFeRpok6YctnYmDr5pNlyT2bRjXh0JMhjY6hW+ALEwIH" crossorigin="anonymous">
	<!-- 导入Bootstrap框架的JS -->
	<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-YvpcrYf0tY3lHB60NNkmXc5s9fDVZLESaAA55NDzOxhy9GkcIdslK1eN7N6jIeHz" crossorigin="anonymous"></script>
</head>
<body>
	<div class="container mt-5">
		<div class="row justify-content-center">
			<div class="col-md-6">
				<div class="card">
					<div class="card-header">
						<h3 class="text-center">用户登录</h3>
					</div>
					<div class="card-body">
						<form action="#" method="post">
							<div class="mb-3 row">
								<label for="username" class="col-sm-3 col-form-label">账号</label>
								<div class="col-sm-9">
									<input type="text" class="form-control" id="username" placeholder="请输入用户名" required>
								</div>
							</div>
							<div class="mb-3 row">
								<label for="password" class="col-sm-3 col-form-label">密码</label>
								<div class="col-sm-9">
									<input type="password" class="form-control" id="password" placeholder="请输入密码" required>
								</div>
							</div>
							<div class="d-grid gap-2">
								<button type="submit" class="btn btn-primary btn-block">登录</button>
							</div>
						</form>
					</div>
				</div>
			</div>
		</div>
	</div>
</body>
</html>

3、代码说明

  • container mt-5:创建一个容器,并增加顶部外边距。
  • row justify-content-center:创建一个行,并使列居中对齐。
  • col-md-6:创建一个中等屏幕及以上宽度为6列的列。
  • card:创建一个卡片组件,用于包裹表单。
  • card-header:创建卡片的头部,包含标题。
  • text-center:设置标题居中对齐。
  • card-body:创建卡片的主体,包含表单内容。
  • form:创建一个表单,使用POST方法提交。
  • mb-3 row:创建一个行,并增加底部外边距。
  • col-sm-3 col-form-label:创建一个标签,设置标签宽度为3列。
  • col-sm-9:创建一个列,宽度为9列,用于包含输入框。
  • form-control:应用Bootstrap样式的文本输入框。
  • d-grid gap-2:创建一个网格布局,子元素占满整行,子元素之间添加间距。
  • btn btn-primary btn-block:创建一个按钮,设置按钮样式,并使其占满整行。

4、浏览网页,查看结果

  • 不输入用户名和密码,单击【登录】按钮。
    在这里插入图片描述

  • 输入用户名但不输入密码,单击【登录】按钮。
    在这里插入图片描述

5、登录按钮事件处理

  • 导入jQuery库。
  • 设置登录按钮的id属性为btnLogin
  • 编写脚本代码,处理登录按钮的单击事件。
<!DOCTYPE html>
<html>
<head>
	<meta charset="utf-8">
	<title>演示Bootstrap</title>
	<!-- 导入Bootstrap框架的CSS -->
	<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-QWTKZyjpPEjISv5WaRU9OFeRpok6YctnYmDr5pNlyT2bRjXh0JMhjY6hW+ALEwIH" crossorigin="anonymous">
	<!-- 导入Bootstrap框架的JS -->
	<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-YvpcrYf0tY3lHB60NNkmXc5s9fDVZLESaAA55NDzOxhy9GkcIdslK1eN7N6jIeHz" crossorigin="anonymous"></script>
	<!-- 导入jQuery库 -->
	<script src="https://code.jquery.com/jquery-3.6.0.min.js"></script> 
</head>
<body>
	<div class="container mt-5">
		<div class="row justify-content-center">
			<div class="col-md-6">
				<div class="card">
					<div class="card-header">
						<h3 class="text-center">用户登录</h3>
					</div>
					<div class="card-body">
						<form action="#" method="post">
							<div class="mb-3 row">
								<label for="username" class="col-sm-3 col-form-label">账号</label>
								<div class="col-sm-9">
									<input type="text" class="form-control" id="username" placeholder="请输入用户名" required>
								</div>
							</div>
							<div class="mb-3 row">
								<label for="password" class="col-sm-3 col-form-label">密码</label>
								<div class="col-sm-9">
									<input type="password" class="form-control" id="password" placeholder="请输入密码" required>
								</div>
							</div>
							<div class="d-grid gap-2">
								<button id='btnLogin' type="submit" class="btn btn-primary btn-block">登录</button>
							</div>
						</form>
					</div>
				</div>
			</div>
		</div>
	</div>
	<script>
		$(document).ready(function() {
			// 编写登录按钮单击事件处理代码
			$('#btnLogin').click(function(){
				// 获取用户名和密码数据
				let username = $('#username').val();
				let password = $('#password').val();
				// 判断用户是否登录成功
				if (username == '无心剑' && password == '903213') {
					alert('恭喜,[' + username + '],登录成功~');
				} else {
					alert('遗憾,[' + username + '],登录失败~');
				}
			});
		});
	</script>
</body>
</html>

6、浏览网页,查看结果

  • 输入正确的用户名和密码,单击【登录】按钮。
    在这里插入图片描述

  • 输入错误的用户名或密码,单击【登录】按钮。
    在这里插入图片描述


三、实战小结

通过今天的学习,希望大家能够对Bootstrap有一个基本的了解,并能够运用它来快速开发响应式网页。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

计算物理精解【2】-Julia计算基础

文章目录 Julia的命名规则1. 字符选择2. 大小写敏感3. 禁用字符4. Unicode支持5. 命名约定6. 示例 运算赋值类型String转换类型伴随矩阵Julia 符号计算-SymEngineJulia 符号计算-SymbolicUtils参考文献 Julia的命名规则 相对宽松但也有一些特定的要求&#xff0c;主要包括以下…

PMP和CSPM哪个含金量高?

CSPM 和 PMP 都是非常有价值的证书&#xff0c;都是适用于项目经理岗位的证书&#xff0c;究竟哪个含金量够高&#xff0c;必须结合你的实际情况来进行判断。先说结论:如果你的目标就业单位是外企&#xff0c;或者有海外业务的企业&#xff0c;就考 PMP 证书&#xff0c;反之就…

近万字深入讲解iOS常见锁及线程安全

什么是锁&#xff1f; 在程序中&#xff0c;当多个任务&#xff08;或线程&#xff09;同时访问同一个资源时&#xff0c;比如多个操作同时修改一份数据&#xff0c;可能会导致数据不一致。这时候&#xff0c;我们需要“锁”来确保同一时间只有一个任务能够操作这个数据&#…

2024年CSP-J认证 CCF信息学奥赛C++ 中小学初级组 第一轮真题-完善程序题解析

2024CCF认证第一轮&#xff08;CSP-J&#xff09;真题 三、完善程序题 第一题 判断平方数 问题&#xff1a;给定一个正整数 n&#xff0c;判断这个数 是不是完全平方数&#xff0c;即存在一个正整数 x 使得 x 的平方等于 n 试补全程序 #include<iostream> #include<…

LabVIEW提高开发效率技巧----错误处理机制

在LabVIEW开发中&#xff0c;错误处理机制至关重要&#xff0c;它不仅有助于提升程序的稳定性&#xff0c;还可以简化调试过程。错误线&#xff08;Error Wire&#xff09;是这一机制的核心工具&#xff0c;能够在各个子VI和模块之间传递错误信息。 1. 统一错误处理 在程序的各…

文心智能体AI大师工坊体验记

文心智能体AI大师工坊体验记 首先来说说什么是智能体&#xff0c;智能体&#xff08;Agent&#xff09;就是指能够感知环境并采取行动以实现特定目标的代理体。它可以是软件、硬件或一个系统&#xff0c;具备自主性、适应性和交互能力。智能体通过感知环境中的变化&#xff08;…

Linux之实战命令13:fuser应用实例(四十七)

简介&#xff1a; CSDN博客专家、《Android系统多媒体进阶实战》一书作者 新书发布&#xff1a;《Android系统多媒体进阶实战》&#x1f680; 优质专栏&#xff1a; Audio工程师进阶系列【原创干货持续更新中……】&#x1f680; 优质专栏&#xff1a; 多媒体系统工程师系列【…

微信小程序导出word和Excel文件

在微信小程序中&#xff0c;实现Excel或Word文件的生成与下载功能通常涉及后端与前端的紧密协作。后端服务负责根据业务需求处理数据&#xff0c;将其转换为Excel或Word格式&#xff0c;并以文件流的形式返回。前端微信小程序则通过发送请求到后端获取这个文件流&#xff0c;接…

17121 求二叉树各种节点数

### 思路 1. 使用先序遍历的方式构造二叉树。 2. 使用递归函数 CreateBiTree 来构造二叉树。 3. 使用递归函数 CountNodes 来统计度为2、度为1和度为0的节点数。 ### 伪代码 1. 定义二叉树节点结构 BiTNode 和二叉树指针 BiTree。 2. 定义 CreateBiTree 函数&#xff1a; -…

java并发之并发关键字

并发关键字 关键字一&#xff1a;volatile 可以这样说&#xff0c;volatile 关键字是 Java 虚拟机提供的轻量级的同步机制。 功能 volatile 有 2 个主要功能&#xff1a; 可见性。一个线程对共享变量的修改&#xff0c;其他线程能够立即得知这个修改。普通变量不能做到这一点&a…

【病毒分析】phobos家族Elbie变种加密器分析报告

1.样本信息 ⽂件名Fast【phobos家族Elbie变种加密器】.exeSHA256e18d3d15a27ffa48cef12de79ac566bfbd96f6f4a1477e5986bc4a100227d8a3MD5f1ecac228e48c7b9758dacfca9356b1fSHA1d9f32b053310a9400fef4d68ae8a8ce70594eaad 2.感染迹象 文件被加密并重命名如下格式1.png.id[8E1…

深入理解 JSX:构建 React 用户界面的利器

目录 一、JSX介绍 1.JSX概念 2.为什么使用JSX,JSX有什么好处? 二、JSX基本语法 1.基本元素: 2.嵌套元素: 3.组件: 4.属性: 5.表达式 6.条件渲染: 7.样式: 三、JSX语法规则 四、JSX编译过程 五、JSX小案例 1.待办事项列表 2.计时器应用 六、总结 一、JSX介…

LLMs之RAG:MemoRAG(利用其记忆模型来实现对整个数据库的全局理解)的简介、安装和使用方法、案例应用之详细攻略

LLMs之RAG&#xff1a;MemoRAG(利用其记忆模型来实现对整个数据库的全局理解)的简介、安装和使用方法、案例应用之详细攻略 目录 MemoRAG的简介 0、更新日志 1、特性 2、路线图 MemoRAG的安装和使用方法 1、安装 安装依赖项 T1、从源码安装 T2、通过pip安装 2、使用方…

可调节基准电压电路设计

1 简介 该电路组合使用了一个放大器&#xff0c;可使基准电压电路在输入电压负值至正的输入电压之间的范围内进行调节&#xff0c;且可增加增益以提高最大负基准电压电平。 2 设计目标 2.1 输入 2.2 输出 ​​​ 2.3 电源 3 电路设计 根据设计目标&#xff0c;最终设计的电…

综合实验1 利用OpenCV统计物体数量

一、实验简介 传统的计数方法常依赖于人眼目视计数&#xff0c;不仅计数效率低&#xff0c;且容易计数错误。通常现实中的对象不会完美地分开&#xff0c;需要通过进一步的图像处理将对象分开并计数。本实验巩固对OpenCV的基础操作的使用&#xff0c;适当的增加OpenCV在图像处…

抽奖拼团卷轴模式系统开发小程序源代码解析

在当今的互联网商业环境中&#xff0c;抽奖、拼团与卷轴模式等创新玩法被广泛应用于小程序开发中&#xff0c;旨在通过多样化的互动方式吸引用户参与&#xff0c;提升用户粘性和平台活跃度。本文将围绕“抽奖拼团卷轴模式系统开发小程序源代码”这一主题&#xff0c;探讨其技术…

【HTTP协议详解-Fiddler抓包工具安装详解-HTTP报文格式-URL详解】

&#x1f308;个人主页&#xff1a;努力学编程’ ⛅个人推荐&#xff1a; c语言从初阶到进阶 JavaEE详解 数据结构 ⚡学好数据结构&#xff0c;刷题刻不容缓&#xff1a;点击一起刷题 &#x1f319;心灵鸡汤&#xff1a;总有人要赢&#xff0c;为什么不能是我呢 &#x1f52d…

安卓13删除下拉栏中的关机按钮版本2 android13删除下拉栏关机按钮

总纲 android13 rom 开发总纲说明 文章目录 1.前言2.问题分析3.代码分析4.代码修改5.编译6.彩蛋1.前言 顶部导航栏下拉可以看到,底部这里有个设置按钮,点击可以进入设备的设置页面,这里我们将更改为删除,不同用户通过这个地方进入设置。我们之前写过一个文章也是一样的删除…

基于RealSense D435相机实现手部姿态重定向

基于Intel RealSense D435 相机和 MediaPipe的手部姿态检测&#xff0c;进一步简单实现手部姿态与机器人末端的重定向。 假设已经按照【基于 RealSenseD435i相机实现手部姿态检测】配置好所需的库和环境&#xff0c;并且有一个可以控制的机器人接口。 一、手部姿态重定向介绍 …

18924 二叉树的宽度

### 思路 1. 使用广度优先搜索&#xff08;BFS&#xff09;遍历二叉树&#xff0c;记录每一层的节点数。 2. 使用队列来实现BFS&#xff0c;队列中存储节点和其对应的层数。 3. 在遍历过程中&#xff0c;更新每一层的节点数&#xff0c;并记录最大节点数。 ### 伪代码 1. 定义…