Bootstarp学习(十六)警示框

警示框

在网站中,网页总是需要和用户一起做沟通与交流。特别是当用户操作上下文为用户提供一些有效的警示框,比如说告诉用户操作成功、操作错误、提示或者警告等。如下图所示:

在Bootstrap框架有一个独立的组件,实现上述的效果,这个组件被称为警示框。

源码版本:

? LESS版本:对应的源码文件alerts.less

? Sass版本:对应的源码文件_alerts.scss

? 编译后的版本:bootstrap.css文件第4427行~第4499行

<h2>默认警示框</h2>
<div class="alert alert-success" role="alert">恭喜您操作成功!</div>
<div class="alert alert-info" role="alert">请输入正确的密码</div>
<div class="alert alert-warning" role="alert">您已操作失败两次,还有最后一次机会</div>
<div class="alert alert-danger" role="alert">对不起,您输入的密码有误</div>
<h2>可关闭的警示框</h2>
<div class="alert alert-success alert-dismissable" role="alert">
    <button class="close" type="button" data-dismiss="alert">×</button>
    恭喜您操作成功!
</div>
<div class="alert alert-info alert-dismissable" role="alert">
	<button class="close" type="button" data-dismiss="alert">×</button>
	请输入正确的密码
</div>
<div class="alert alert-warning alert-dismissable" role="alert">
	<button class="close" type="button" data-dismiss="alert">×</button>
	您已操作失败两次,还有最后一次机会
</div>
<div class="alert alert-danger alert-dismissable" role="alert">
	<button class="close" type="button" data-dismiss="alert">×</button>
	对不起,您输入的密码有误
</div>
<h2>警示框的链接</h2>
<div class="alert alert-success" role="alert">
    <strong>Well done!</strong>
    You successfully read
	<a href="#" class="alert-link">this important alert message</a>
	.
</div>
<div class="alert alert-info" role="alert">
	<strong>Heads up!</strong>
	 This
	 <a href="#" class="alert-link">alert needs your attention</a>
	 , but it's not super important.
</div>
<div class="alert alert-warning" role="alert">
	<strong>Warning!</strong>
	 Better check yourself, you're
	 <a href="#" class="alert-link">not looking too good</a>
	 .
</div>
<div class="alert alert-danger" role="alert">
	<strong>Oh snap!</strong>
	<a href="#" class="alert-link">Change a few things up</a>
	 and try submitting again.
</div>

警示框--默认警示框

Bootstrap框架通过“alert“样式来实现警示框效果。在默认情况之下,提供了四种不同的警示框效果:

  1、成功警示框:告诉用用户操作成功,在“alert”样式基础上追加“alert-success”样式,具体呈现的是背景、边框和文本都是绿色;

  2、信息警示框:给用户提供提示信息,在“alert”样式基础上追加“alert-info”样式,具体呈现的是背景、边框和文本都是浅蓝色;

  3、警告警示框:提示用户小心操作(提供警告信息),在“alert”样式基础上追加“alert-warning”样式,具体呈现的是背景、边框、文本都是浅黄色;

  4、错误警示框:提示用户操作错误,在“alert”样式基础上追加“alert-danger”样式,具体呈现的是背景、边框和文本都是浅红色。

如下图示:

使用方法:

具体使用的时候,可以在类名为“alert”的div容器里放置提示信息。实现不同类型警示框,只需要在“alert”基础上追加对应的类名,如下:

<div class="alert alert-success" role="alert">恭喜您操作成功!</div>
<div class="alert alert-info" role="alert">请输入正确的密码</div>
<div class="alert alert-warning" role="alert">您已操作失败两次,还有最后一次机会</div>
<div class="alert alert-danger" role="alert">对不起,您输入的密码有误</div>

运行效果如下:

实现原理:

其中“alert”样式的源码主要是设置了警示框的背景色、边框、圆角和文字颜色。另外对其内部几个元素h4、p、ul和“.alert-link”做了样式上的特殊处理:

/*bootstrap.css文件第4427行~第4446行*/
.alert {
  padding: 15px;
  margin-bottom: 20px;
  border: 1px solid transparent;
  border-radius: 4px;
}
.alert h4 {
  margin-top: 0;
  color: inherit;
}
.alert .alert-link {
  font-weight: bold;
}
.alert > p,
.alert > ul {
  margin-bottom: 0;
}
.alert > p + p {
  margin-top: 5px;
}

不同类型的警示框,主要是通过“alert-success”、“alert-info”、“alert-warning”和“alert-danger”样式来实现:

/*bootstrap.css文件第4456行~第4499行*/
.alert-success {
  color: #3c763d;
  background-color: #dff0d8;
  border-color: #d6e9c6;
}
.alert-success hr {
  border-top-color: #c9e2b3;
}
.alert-success .alert-link {
  color: #2b542c;
}
.alert-info {
  color: #31708f;
  background-color: #d9edf7;
  border-color: #bce8f1;
}
.alert-info hr {
  border-top-color: #a6e1ec;
}
.alert-info .alert-link {
  color: #245269;
}
.alert-warning {
  color: #8a6d3b;
  background-color: #fcf8e3;
  border-color: #faebcc;
}
.alert-warning hr {
  border-top-color: #f7e1b5;
}
.alert-warning .alert-link {
  color: #66512c;
}
.alert-danger {
  color: #a94442;
  background-color: #f2dede;
  border-color: #ebccd1;
}
.alert-danger hr {
  border-top-color: #e4b9c0;
}
.alert-danger .alert-link {
  color: #843534;
}
<div class="alert alert-success" role="alert">恭喜您操作成功!</div>
<div class="alert alert-info" role="alert">请输入正确的密码</div>
<div class="alert alert-warning" role="alert">您已操作失败两次,还有最后一次机会</div>
<div class="alert alert-danger" role="alert">对不起,您输入的密码有误</div>
<br/><br/>

警示框--可关闭的警示框

大家在平时浏览网页的时候,会发现一些警示框带有关闭按钮,用户一点击关闭按钮就能自动关闭显示的警示框(也就是让警示框隐藏不显示)。在Bootstrap框架中的警示框也具有这样的功能。

使用方法:

只需要在默认的警示框里面添加一个关闭按钮。然后进行三个步骤:

1、需要在基本警示框“alert”的基础上添加“alert-dismissable”样式。

2、在button标签中加入class="close"类,实现警示框关闭按钮的样式。

3、要确保关闭按钮元素上设置了自定义属性:“data-dismiss="alert"”(因为可关闭警示框需要借助于Javascript来检测该属性,从而控制警示框的关闭)。

具体使用如下:

<div class="alert alert-success alert-dismissable" role="alert">
    <button class="close" type="button" data-dismiss="alert">&times;</button>
    恭喜您操作成功!
</div>

运行效果如下:

原理分析:

在样式上,需要在基本警示框“alert”的基础上添加“alert-dismissable”样式,这样就可以实现带关闭功能的警示框。

/*bootstrap.css文件第4447行~第4455行*/
.alert-dismissable {
  padding-right: 35px;
}
.alert-dismissable .close {
  position: relative;
  top: -2px;
  right: -21px;
  color: inherit;
}
<div class="alert alert-success alert-dismissable" role="alert">
    <button class="close" type="button" data-dismiss="alert">×</button>
	恭喜您操作成功!
</div>
<div class="alert alert-info alert-dismissable" role="alert">
	<button class="close" type="button" data-dismiss="alert">×</button>
	请输入正确的密码
</div>
<div class="alert alert-warning alert-dismissable" role="alert">
	<button class="close" type="button" data-dismiss="alert">×</button>
	您已操作失败两次,还有最后一次机会
</div>
<div class="alert alert-danger alert-dismissable" role="alert">
	<button class="close" type="button" data-dismiss="alert">×</button>
	对不起,您输入的密码有误
</div>
<!--下面是代码部分-->
<h2>下面是代码部区</h2>
<div class="alert alert-info" role="alert">请修改相应信息</div>
<div class="alert alert-success" role="alert">谢谢,操作成功!</div>
<div class="alert alert-warning" role="alert">您已操作失败两次,还有最后一次机会</div>
<div class="alert alert-danger" role="alert">对不起,您刚才的操作失败</div>

警示框--警示框的链接

有时候你可能想在警示框中加入链接地址,用来告诉用户跳到某一个地方或新的页面。而这个时候你又想让用户能明显的看出来这是链接地址。在Bootstrap框架中对警示框里的链接样式做了一个高亮显示处理。为不同类型的警示框内的链接进行了加粗处理,并且颜色相应加深。

实现方法:

Bootstrap框架是通过给警示框加的链接添加一个名为“alert-link”的类名,通过“alert-link”样式给链接提供高亮显示。

具体使用如下:

<div class="alert alert-success" role="alert">
    <strong>Well done!</strong>
    You successfully read
    <a href="#" class="alert-link">this important alert message</a>
    .
</div>
<div class="alert alert-info" role="alert">
    <strong>Heads up!</strong>
     This
     <a href="#" class="alert-link">alert needs your attention</a>
     , but it‘s not super important.
</div>
<div class="alert alert-warning" role="alert">
    <strong>Warning!</strong>
     Better check yourself, you‘re
     <a href="#" class="alert-link">not looking too good</a>
     .
</div>
<div class="alert alert-danger" role="alert">
    <strong>Oh snap!</strong>
    <a href="#" class="alert-link">Change a few things up</a>
     and try submitting again.
</div>

运行效果如下:

实现原理:

实现样式如下:

/*bootstrap.css文件第4437行~第4439行*/
.alert .alert-link {
  font-weight: bold;
}

/*不同类型警示框中链接的文本颜色*/
.alert-success .alert-link {
  color: #2b542c;
}
.alert-info .alert-link {
  color: #245269;
}
.alert-warning .alert-link {
  color: #66512c;
}
.alert-danger .alert-link {
  color: #843534;
}
<div class="alert alert-success" role="alert">
    <strong>Well done!</strong>
	You successfully read
	<a href="#" class="alert-link">this important alert message</a>
	.
</div>
<div class="alert alert-info" role="alert">
	<strong>Heads up!</strong>
	 This
	 <a href="#" class="alert-link">alert needs your attention</a>
	 , but it's not super important.
</div>
<!--下面代码任务部分-->
<h2>下面是代码部分</h2>
<div class="alert alert-warning" role="alert">
	<strong>Warning!</strong>
	 Better check yourself, you're not looking too good
	 .
</div>
<div class="alert alert-danger" role="alert">
	<strong>Oh snap!</strong>Change a few things up
	 and try submitting again.
</div>   

时间: 2024-10-15 10:27:41

Bootstarp学习(十六)警示框的相关文章

Java编程思想学习(十六) 并发编程

线程是进程中一个任务控制流序列,由于进程的创建和销毁需要销毁大量的资源,而多个线程之间可以共享进程数据,因此多线程是并发编程的基础. 多核心CPU可以真正实现多个任务并行执行,单核心CPU程序其实不是真正的并行运行,而是通过时间片切换来执行,由于时间片切换频繁,使用者感觉程序是在并行运行.单核心CPU中通过时间片切换执行多线程任务时,虽然需要保存线程上下文,但是由于不会被阻塞的线程所阻塞,因此相比单任务还是大大提高了程序运行效率. 1.线程的状态和切换: 线程的7种状态及其切换图如下: 2.多线

java web 学习十六(JSP指令)

一.JSP指令简介 JSP指令(directive)是为JSP引擎而设计的,它们并不直接产生任何可见输出,而只是告诉引擎如何处理JSP页面中的其余部分. 在JSP 2.0规范中共定义了三个指令: page指令 Include指令 taglib指令 JSP指令的基本语法格式:<%@ 指令 属性名="值" %> 例如: 1 <%@ page contentType="text/html;charset=gb2312"%> 如果一个指令有多个属性,

java学习(十六):对象的自定义比较,Comparator和Comparable

通过两个例子实现对象的自定义排序 1.实现Comparator接口. 1 import java.util.ArrayList; 2 import java.util.Collections; 3 import java.util.Comparator; 4 import java.util.List; 5 6 public class StudentComparator implements Comparator<Object> 7 { 8 @Override 9 public int co

Bootstarp学习(六)图标

图标(一) 200个icon: 这里说的图标就是Web制作中常看到的小icon图标,可以说这些小icon图标是一个优秀Web中不可缺少的一部分,起到画龙点睛的效果.在Bootstrap框架中也为大家提供了近200个不同的icon图片,而这些图标都是使用CSS3的@font-face属性配合字体来实现的icon效果. 放心使用: 在具体介绍Bootstrap的icon图标之前,我们首先要感谢glyphicons.com网站,因为Bootstrap框架中图标都是glyphicons.com这个商业网

Flask 学习 十六 部署

部署流程 manage.py 部署命令 每次安装升级只需运行deploy命令即可完成操作 @manager.command def deploy(): """执行部署任务""" from flask_migrate import upgrade from app.models import Role, User # 把数据库迁移到最新修订版本 upgrade() # 创建用户角色 Role.insert_roles() # 让所有用户都关注此用户

学习十六

4.10/4.11/4.12 lvm讲解 4.13 磁盘故障小案例lvm讲解首先检查一下是否安装lvmlvm的优缺点lvm很方便的去创建和整合分区,但是假如用盘分区出现问题需要恢复文件的时候可能会出现很难恢复的问题 起始lvm 是创建物理分区 创建物理卷,在组建物理卷组 再组建逻辑分区 再格式化 挂载使用要做的准备fdisk 创建三个1G的分区 ID为83为普通分区t更改类型为8e做物理卷 lvm ctrl+u 删除前面错误的内容下面创建物理卷假如查不到命令 可以采用通配的方法来查找命令在此处可

mybatis学习 十六 auto_mapping实现连表查询

只能使用多表联合查询方式. 要求:查询出的列别和属性名相同. 点字符  "."  在 SQL 是关键字符,两侧添加反单引号(Tab键上的一个字符) <select id="selAll" resultType="student"> select t.id `teacher.id`, t.name `teacher.name`, s.id id, s.name name,age,tid from student s LEFT JOIN

spring学习 十六 spring加载属性文件

第一步:创建一个properties文件,以数据库链接作为实例 db.properties jdbc.url=jdbc:mysql://192.168.153.128:3306/mybaties?characterEncoding=utf-8 jdbc.driver=com.mysql.jdbc.Driver jdbc.username=com.mysql.jdbc.Driver jdbc.password=123456 第二步在spring配置文件加入context的约束,并使用<contex

MySQL学习(十六)

MySQL高级部分 触发器 触发器是一类特殊的事务,可以监视某种数据操作(insert/update/delete),并触发相关的操作(insert/update/delete) 触发器创建语法之4要素 1 监视地点table 2 监视事件insert/update/delete 3 触发时间after/before 4 触发事件 查看已有的触发器 show triggers 删除已有的触发器 drop trigger triggerName 创建一个触发器 create trigger t1

前端学习(39)~js学习(十六):数组

数组简介 数组(Array)是属于内置对象,我们可以在MDN网站上查询各种方法. 数组和普通对象的功能类似,也是用来存储一些值的.不同的是: 普通对象是使用字符串作为属性名的,而数组是使用数字来作为索引来操作元素.索引:从0开始的整数就是索引. 数组的存储性能比普通对象要好.在实际开发中我们经常使用数组来存储一些数据,使用频率非常高. 数组中的元素可以是任意的数据类型,也可以是对象,也可以是函数,也可以是数组.数组的元素中,如果存放的是数组,我们就称这种数组为二维数组. 接下来,我们讲一讲数组的