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 相关文章推荐
js的event详解。
Sep 06 Javascript
Mozilla中显示textarea中选择的文字
Sep 07 Javascript
JS request函数 用来获取url参数
May 17 Javascript
javascript笔记 String类replace函数的一些事
Sep 22 Javascript
不想让浏览器运行javascript脚本的方法
Nov 20 Javascript
利用angularjs1.4制作的简易滑动门效果
Feb 28 Javascript
$.browser.msie 为空或不是对象问题的多种解决方法
Mar 19 Javascript
Vue使用mixins实现压缩图片代码
Mar 14 Javascript
JavaScript 中的无穷数(Infinity)详解
Feb 13 Javascript
ant design vue导航菜单与路由配置操作
Oct 28 Javascript
vue监听滚动事件的方法
Dec 21 Vue.js
使用Ajax实现无刷新上传文件
Apr 12 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与XML的PDF文档生成技术
2006/10/09 PHP
php代码中使用换行及(\n或\r\n和br)的应用
2013/02/02 PHP
表单提交错误后返回内容消失问题的解决方法(PHP网站)
2015/10/20 PHP
php根据数据id自动生成编号的实现方法
2016/10/16 PHP
PHP实现登录注册之BootStrap表单功能
2017/09/03 PHP
tp5框架无刷新分页实现方法分析
2019/09/26 PHP
Javascript模块化编程(一)AMD规范(规范使用模块)
2013/01/17 Javascript
JQuery选择器、过滤器大整理
2015/05/26 Javascript
jQuery position() 函数详解以及jQuery中position函数的应用
2015/12/14 Javascript
js仿微博实现统计字符和本地存储功能
2015/12/22 Javascript
JavaScript动态添加css样式和script标签
2016/07/19 Javascript
jquery过滤特殊字符',防sql注入的实现方法
2016/08/17 Javascript
AngularJS  ng-table插件设置排序
2016/09/21 Javascript
javascript中BOM基础知识总结
2017/02/14 Javascript
jQuery初级教程之网站品牌列表效果
2017/08/02 jQuery
vue插槽slot的理解和使用方法
2019/04/03 Javascript
react实现移动端下拉菜单的示例代码
2020/01/16 Javascript
vue中使用v-for时为什么不能用index作为key
2020/04/04 Javascript
[01:16:50]DOTA2-DPC中国联赛 正赛 Phoenix vs CDEC BO3 第一场 3月7日
2021/03/11 DOTA
python 计算数组中每个数字出现多少次--“Bucket”桶的思想
2017/12/19 Python
Python数据持久化shelve模块用法分析
2018/06/29 Python
Python获取航线信息并且制作成图的讲解
2019/01/03 Python
Python面向对象程序设计之私有变量,私有方法原理与用法分析
2020/03/23 Python
html5 canvas合成海报所遇问题及解决方案总结
2017/08/03 HTML / CSS
Tech21美国/加拿大:英国NO.1防摔保护壳品牌
2018/01/20 全球购物
意大利中国电子产品购物网站:Geekmall.com
2019/09/30 全球购物
文秘专业大学生求职信
2013/11/10 职场文书
英语感恩演讲稿
2014/01/14 职场文书
《夜晚的实验》教学反思
2014/02/19 职场文书
大学生社会实践评语
2014/04/25 职场文书
董事长助理工作职责
2014/06/08 职场文书
房屋出租协议书范本(标准版)
2014/09/24 职场文书
房产销售独家委托书范本
2014/10/01 职场文书
党的群众路线教育实践活动个人剖析材料
2014/10/07 职场文书
Python turtle编写简单的球类小游戏
2022/03/31 Python
win11高清晰音频管理器在哪里?win11找不到高清晰音频管理器解决办法
2022/04/08 数码科技