Bootstrap弹出框(modal)垂直居中的问题及解决方案详解


Posted in Javascript onJune 12, 2016

使用过bootstrap modal(模态框)组件的人都有一种困惑, 好好的一个弹出框怎么就无法垂直居中了呢?刚巧在做一个eit项目,由于此项目里面一些框架要遵循nttdata的一些规则,故用到了Bootstrap这个东东,第一次碰到这个东东,有很大抵触,觉得不好,但用起来我觉得和别的弹出框真没什么两样。废话少说,切入正题,Bootstrap弹出框垂直居中的问题,因为我拿到的弹出框样式并非垂直居中,而是top 10%,但页面长了,就显得特别恶心。

解决方案如下所示:

1.在css里,找到

.modal.fade.in {
top: 10%;
}

这个样式,修改它就ok了,由于css中是全局的,同时也可在页面中定义到某个modal的(高度)位置,方法如下:

<style>
#myModal-help
{
top:300px;
}
</style>

#myModal-help这个为modal的id,这样设置就ok了。

2.在js中,

我用的是bootstrap-modal.js(如果用的是bootstrap.js或者是bootstrap.min.js,同样可以,但需要找到相应位置)。

在js中找到(红色是我添加的方法):

var left = ($(document.body).width() - that.$element.width()) / 2; 
var top = ($(document.body).height() - that.$element.height()) / 2;
var scrollY = document.documentElement.scrollTop || document.body.scrollTop; //滚动条解决办法
var top = (window.screen.height / 4) + scrollY - 120; //滚动条解决办法
console.log(left); 
that.$element 
.addClass('in') 
.attr('aria-hidden', false) 
.css({ 
left: left, 
top: top, 
margin: "0 auto" 
});
that.enforceFocus()

找到后,将红色的添加进去,就ok了,这样一来就所有的弹出框都垂直居中了。

以上所述是小编给大家介绍的Bootstrap弹出框(modal)垂直居中的问题及解决方案详解的相关知识,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
一个小型js框架myJSFrame附API使用帮助
Jun 28 Javascript
jquery 表单取值常用代码
Dec 22 Javascript
jquery下为Event handler传递动态参数的代码
Jan 06 Javascript
js中设置元素class的三种方法小结
Aug 28 Javascript
js的window.showModalDialog及window.open用法实例分析
Jan 29 Javascript
jqGrid表格应用之新增与删除数据附源码下载
Dec 02 Javascript
JavaScript选取(picking)和反选(rejecting)对象的属性方法
Aug 16 Javascript
ajax请求data遇到的问题分析
Jan 18 Javascript
微信小程序如何刷新当前界面的实现方法
Jun 07 Javascript
微信小程序全局变量改变监听的实现方法
Jul 15 Javascript
如何在JavaScript中创建具有多个空格的字符串?
Feb 23 Javascript
Element Dropdown下拉菜单的使用方法
Jul 26 Javascript
Javascript简写条件语句(推荐)
Jun 12 #Javascript
jQuery 3 中的新增功能汇总介绍
Jun 12 #Javascript
JavaScript_ECMA5数组新特性详解
Jun 12 #Javascript
喜大普奔!jQuery发布 3.0 最终版
Jun 12 #Javascript
浅谈JavaScript变量的自动转换和语句
Jun 12 #Javascript
浅谈jquery点击label触发2次的问题
Jun 12 #Javascript
Bootstrap学习笔记之js组件(4)
Jun 12 #Javascript
You might like
PHP中$this和$that指针使用实例
2015/01/06 PHP
smarty模板引擎从php中获取数据的方法
2015/01/22 PHP
php实现跨域提交form表单的方法【2种方法】
2016/10/17 PHP
PHP集成环境XAMPP的安装与配置
2018/11/13 PHP
运用Windows XP附带的Msicuu.exe、Msizap.exe来彻底卸载顽固程序
2007/04/21 Javascript
分享一个自定义的console类 让你不再纠结JS中的调试代码的兼容
2012/04/20 Javascript
php 中序列化和json使用介绍
2013/07/08 Javascript
JavaScript中的parse()方法使用简介
2015/06/12 Javascript
JavaScript操作表单实例讲解(上)
2016/06/20 Javascript
JS实现JSON.stringify的实例代码讲解
2017/02/07 Javascript
javascript设计模式之单体模式学习笔记
2017/02/15 Javascript
JavaScript框架Angular和React深度对比
2017/11/20 Javascript
JS中双击和单击事件冲突的解决方法
2018/04/09 Javascript
Jquery的Ajax技术使用方法
2019/01/21 jQuery
js实现抽奖的两种方法
2020/03/19 Javascript
es6函数中的作用域实例分析
2020/04/18 Javascript
npm全局环境变量配置详解
2020/12/15 Javascript
[03:42]2014DOTA2国际邀请赛 第三日比赛排位扑朔迷离
2014/07/12 DOTA
python基础教程之获取本机ip数据包示例
2014/02/10 Python
Python批量创建迅雷任务及创建多个文件
2016/02/13 Python
为Python的Tornado框架配置使用Jinja2模板引擎的方法
2016/06/30 Python
python 平衡二叉树实现代码示例
2018/07/07 Python
Python之时间和日期使用小结
2019/02/14 Python
Python后台开发Django的教程详解(启动)
2019/04/08 Python
浅谈python输出列表元素的所有排列形式
2020/02/26 Python
150行Python代码实现带界面的数独游戏
2020/04/04 Python
python网络编程之五子棋游戏
2020/05/14 Python
HTML5实现可缩放时钟代码
2017/08/28 HTML / CSS
2014最新离职证明范本
2014/09/12 职场文书
未婚证明书模板
2014/10/08 职场文书
教师思想作风整顿个人剖析材料
2014/10/10 职场文书
2015年五一劳动节活动总结
2015/02/09 职场文书
社会实践活动总结格式
2015/05/11 职场文书
2015秋季开学典礼主持词
2015/07/16 职场文书
学者《孟子》名人名言
2019/08/09 职场文书
bose降噪耳机音能消除人声吗
2022/04/19 数码科技