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 相关文章推荐
javascript 一个函数对同一元素的多个事件响应
Jul 25 Javascript
javascript URL编码和解码使用说明
Apr 12 Javascript
javascript中强制执行toString()具体实现
Apr 27 Javascript
javascript结合ajax读取txt文件内容
Dec 05 Javascript
浅析js绑定事件的常用方法
May 15 Javascript
Js查找字符串中出现次数最多的字符及个数实例解析
Sep 05 Javascript
vue实现简单的星级评分组件源码
Nov 16 Javascript
浅谈Vue项目骨架屏注入实践
Aug 05 Javascript
关于在LayUI中使用AJAX提交巨坑记录
Oct 25 Javascript
判断JavaScript中的两个变量是否相等的操作符
Dec 21 Javascript
js实现简单的秒表
Jan 16 Javascript
nuxt.js服务端渲染中axios和proxy代理的配置操作
Nov 06 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的curl实现get,post和cookie(实例介绍)
2013/06/17 PHP
PHP随手笔记整理之PHP脚本和JAVA连接mysql数据库
2015/11/25 PHP
PHP自定义函数获取URL中一级域名的方法
2016/08/23 PHP
laravel自定义分页效果
2017/07/23 PHP
小程序微信支付功能配置方法示例详解【基于thinkPHP】
2019/05/05 PHP
Mootools 1.2教程 事件处理
2009/09/15 Javascript
jquery.ui.draggable中文文档
2009/11/24 Javascript
jquery 最简单易用的表单验证插件
2010/02/27 Javascript
理解Javascript_14_函数形式参数与arguments
2010/10/20 Javascript
jQuery示例收集
2010/11/05 Javascript
5秒后跳转到另一个页面的js代码
2013/10/12 Javascript
基于jquery异步传输json数据格式实例代码
2013/11/23 Javascript
js 触发select onchange事件代码
2014/03/20 Javascript
再谈javascript原型继承
2014/11/10 Javascript
浅谈jQuery中replace()方法
2015/05/13 Javascript
jQuery实现摸拟alert提示框
2016/05/22 Javascript
使用JavaScript解决网页图片拉伸问题(推荐)
2016/11/25 Javascript
浅谈jQuery框架Ajax常用选项
2017/07/08 jQuery
javascript数据结构之多叉树经典操作示例【创建、添加、遍历、移除等】
2018/08/01 Javascript
详细分析Node.js 多进程
2020/06/22 Javascript
Vue如何实现验证码输入交互
2020/12/07 Vue.js
JS中箭头函数与this的写法和理解
2021/01/14 Javascript
Python实现基于TCP UDP协议的IPv4 IPv6模式客户端和服务端功能示例
2018/03/22 Python
实例讲解python中的协程
2018/10/08 Python
python实现自动获取IP并发送到邮箱
2018/12/26 Python
浅析Python语言自带的数据结构有哪些
2019/08/27 Python
python实现将视频按帧读取到自定义目录
2019/12/10 Python
Python semaphore evevt生产者消费者模型原理解析
2020/03/18 Python
Python实现清理微信僵尸粉功能示例【基于itchat模块】
2020/05/29 Python
远程Wi-Fi宠物监控相机:Petcube
2017/04/26 全球购物
美国最便宜的旅游网站:CheapTickets
2017/07/09 全球购物
德国高尔夫商店:Golfshop.de
2019/06/22 全球购物
信息技术专业大学生个人的自我评价
2013/10/05 职场文书
售后客服工作职责
2014/06/16 职场文书
文明家庭事迹材料
2014/12/20 职场文书
党员争先创优承诺书
2015/01/20 职场文书