Bootstrap模态框(modal)垂直居中的实例代码


Posted in Javascript onAugust 18, 2016

Bootstrap官网下载:http://v3.bootcss.com/

今天就在使用Bootstrap框架中遇到的一个问题分享一下,在产品开发的过程中使用了大量的弹出窗口(modal)。

刚开始学习使用的过程中就发现此窗口不能垂直居中,总是偏上,并且不能拖动,看了一下使用说明也没有提供过多的属性设置和方法,就这样使用默认的方式一直用着。最近,客户却提出了一个要求:能不能让弹出窗口居中,因为一些小的窗口偏上总感觉整体页面失衡,大一点的还过得去。

因为之前对Bootstrap也不是很熟悉,便开始baidu、google,发现只有很少的解决方案,如下:

$("#myModal").modal().css({
"margin-top": function () {
return - ($(this).height() / 2);
}
});

参考地址:http://www.g2w.me/2012/06/bootstrap-modal-shown-in-the-center/

这种方法自己试了一下,并不能完全居中,并且窗口的大小不一样的话,每次显示的margin-top值也会改变,遮盖层还会出现滚动条,效果也不好看。

自己也试了改了几种方式也不容乐观,发现在窗口弹出之前是获取不到$(this).height()的值,本想着是用($(window).height()-$(this).height())/2,发现还是不可行。

最终只能研究一下源码了,发现可以在bootstrap.js文件900行后面添加如下代码,便可以实现垂直居中。

that.$element.children().eq(0).css("position", "absolute").css({
"margin":"0px",
"top": function () {
return (that.$element.height() - that.$element.children().eq(0).height()-40) / 2 + "px";
},
"left": function () {
return (that.$element.width() - that.$element.children().eq(0).width()) / 2 + "px";
}
});

页面代码如下:

<div>
<button class="btn btn-primary btn-lg" data-toggle="modal" data-target="#myModal">
Launch demo modal
</button>
<!-- Modal -->
<div class="modal fade" id="myModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
<h4 class="modal-title" id="myModalLabel">Modal title</h4>
</div>
<div class="modal-body">
...
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
<button type="button" class="btn btn-primary">Save changes</button>
</div>
</div><!-- /.modal-content -->
</div><!-- /.modal-dialog -->
</div><!-- /.modal -->
</div>

 效果图如下:

Bootstrap模态框(modal)垂直居中的实例代码

以上所述是小编给大家介绍的Bootstrap模态框(modal)垂直居中的实例代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
ExtJS GTGrid 简单用户管理
Jul 01 Javascript
Javascript 二维数组
Nov 26 Javascript
Jquery下判断Id是否存在的代码
Jan 06 Javascript
javascript函数定义的几种区别小结
Jan 06 Javascript
Bootstrap入门书籍之(三)栅格系统
Feb 17 Javascript
各式各样的导航条效果css3结合jquery代码实现
Sep 17 Javascript
js中的DOM模拟购物车功能
Mar 22 Javascript
JavaScript调用模式与this关键字绑定的关系
Apr 21 Javascript
bootstrap下拉框动态赋值方法
Aug 10 Javascript
vue前端框架—Mint UI详解(更适用于移动端)
Apr 30 Javascript
Vue中用JSON实现刷新界面不影响倒计时
Oct 26 Javascript
uni-app实现获取验证码倒计时功能
Nov 01 Javascript
js 获取站点应用名的简单实例
Aug 18 #Javascript
BootStrap日期控件在模态框中选择时间下拉菜单无效的原因及解决办法(火狐下不能点击)
Aug 18 #Javascript
js修改onclick动作的四种方法(推荐)
Aug 18 #Javascript
AngularJS 整理一些优化的小技巧
Aug 18 #Javascript
BootStrap下拉框在firefox浏览器界面不友好的解决方案
Aug 18 #Javascript
js获取form表单所有数据的简单方法
Aug 18 #Javascript
Javascript中浏览器窗口的基本操作总结
Aug 18 #Javascript
You might like
PHP编程中八种常见的文件操作方式
2006/11/19 PHP
给php新手谈谈我的学习心得
2007/02/25 PHP
简单的PHP多图上传小程序代码
2011/07/17 PHP
php注销代码(session注销)
2012/05/31 PHP
php的memcache类分享(memcache队列)
2014/03/26 PHP
重新认识php array_merge函数
2014/08/31 PHP
如何做到打开一个页面,过几分钟自动转到另一页面
2007/04/20 Javascript
js抽奖实现随机抽奖代码效果
2013/12/02 Javascript
jQuery事件绑定on()、bind()与delegate() 方法详解
2015/06/03 Javascript
JavaScript实现添加、查找、删除元素
2015/07/02 Javascript
js获取iframe中的window对象的实现方法
2016/05/20 Javascript
微信小程序 WXDropDownMenu组件详解及实例代码
2016/10/24 Javascript
vue编译打包本地查看index文件的方法
2018/02/23 Javascript
原生JS实现简单的无缝自动轮播效果
2018/09/26 Javascript
解决vue 单文件组件中样式加载问题
2019/04/24 Javascript
[01:14:35]DOTA2上海特级锦标赛B组资格赛#1 Alliance VS Fnatic第一局
2016/02/26 DOTA
跟老齐学Python之大话题小函数(2)
2014/10/10 Python
在keras中model.fit_generator()和model.fit()的区别说明
2020/06/17 Python
Python调用C语言程序方法解析
2020/07/07 Python
python 调用API接口 获取和解析 Json数据
2020/09/28 Python
python入门教程之基本算术运算符
2020/11/13 Python
Pycharm安装python库的方法
2020/11/24 Python
美国著名的品牌折扣店:Burlington
2017/06/08 全球购物
体育纪念品、亲笔签名的体育收藏品:Steiner Sports
2020/07/31 全球购物
LUISAVIAROMA德国官网:时尚奢侈品牌购物网站
2020/11/12 全球购物
偷看我的初中毕业鉴定
2014/01/29 职场文书
5.12护士节演讲稿
2014/04/30 职场文书
完美的中文自荐信
2014/05/24 职场文书
建筑管理专业求职信
2014/07/28 职场文书
委托书怎样写
2014/08/30 职场文书
师德师风事迹材料
2014/12/20 职场文书
音乐教师个人工作总结
2015/02/06 职场文书
事业单位年度考核个人总结
2015/02/12 职场文书
学校党支部承诺书
2015/04/30 职场文书
幼儿园六一儿童节开幕词
2016/03/04 职场文书
《仙剑客栈2》第一弹正式宣传片公开 年内发售
2022/04/07 其他游戏