加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

bootstrap modal 垂直居中对齐

发布时间:2020-12-17 20:58:23 所属栏目:安全 来源:网络整理
导读:转载自:http://hbiao68.iteye.com/blog/2213168 文章参考 http://www.bubuko.com/infodetail-666582.html http://v3.bootcss.com/javascript/#modals ? Html代码?? div ? class = "modal?fade" ? id = "sqh_model" ?? ???? div ? class = "modal-dialog" ??

转载自:http://hbiao68.iteye.com/blog/2213168

文章参考

http://www.bubuko.com/infodetail-666582.html

http://v3.bootcss.com/javascript/#modals

?

Html代码??

收藏代码

  1. <div?class="modal?fade"?id="sqh_model">??
  2. ????div?class="modal-dialog" ????????div?class="modal-content" ????????????div?class="modal-header" ????????????????button?type="button"?class="close"?data-dismiss="modal"?aria-label="Close">span?aria-hidden="true">&times;</spanbuttonh4?class="modal-title">蔬菜预约h4divdiv?class="modal-body"p>尽请期待div?class="modal-footer"button?type="button"?class="btn?btn-default"?data-dismiss="modal">关闭button?type="button"?class="btn?btn-primary"?data-dismiss="modal">确定><!--?/.modal-content?-->??
  3. <!--?/.modal-dialog?-->??
  4. <!--?/.modal?-->??
  5. ??
  6. function?showTips(){??
  7. ????$('#sqh_model').modal('show')??
  8. }??

?

默认是距离顶部30px,左右居中

如图所示

解决办法一:覆盖之前的CSS样式

/**********对bootstrap的modal样式进行重写**********/??
  • .modal-dialog?{??
  • ????margin:?200px?auto;??
  • 解决办法二:调用回调函数

    Js代码??

    收藏代码

      function?showTips(){??
    1. ????????//{"backdrop":"static"}点击背景不会消失??
    2. ????????$('#sqh_model').modal({"backdrop":"static"}).modal('show').on("shown.bs.modal",function(){??
    3. ????????????//?是弹出框居中。。。??
    4. ????????????var?$modal_dialog?=?$(this.$element[0]).find('.modal-dialog');??
    5. //获取可视窗口的高度??
    6. var?clientHeight?=?(document.body.clientHeight?<?document.documentElement.clientHeight)???document.body.clientHeight:?document.documentElement.clientHeight;??
    7. //得到dialog的高度??
    8. var?dialogHeight?=?$modal_dialog.height();??
    9. //计算出距离顶部的高度??
    10. var?m_top?=?(clientHeight?-?dialogHeight)/2;??
    11. ????????????console.log("clientHeight?:?"?+?clientHeight);??
    12. ????????????console.log("dialogHeight?:?"?+?dialogHeight);??
    13. ????????????console.log("m_top?:?"?+?m_top);??
    14. ????????????$modal_dialog.css({'margin':?m_top?+?'px?auto'});??
    15. ????????});??
    16. ????}??
  • 解决办法三:修改源代码

    Modal.prototype.adjustDialog?=?function?()?{??
  • ????var?modalIsOverflowing?=?this.$element[0].scrollHeight?>?document.documentElement.clientHeight??
  • this.$element.css({??
  • ??????paddingLeft:??!this.bodyIsOverflowing?&&?modalIsOverflowing???this.scrollbarWidth?:?'',??
  • ??????paddingRight:?this.bodyIsOverflowing?&&?!modalIsOverflowing???this.scrollbarWidth?:?''??
  • ????});??
  • ???? ????console.log("clientHeight?:?"?+?clientHeight);??
  • ????console.log("dialogHeight?:?"?+?dialogHeight);??
  • ????console.log("m_top?:?"?+?m_top);??
  • ????$modal_dialog.css({'margin':?m_top?+?'px?auto'});??
  • ?

    参数

    可以将选项通过 data 属性或 JavaScript 代码传递。对于 data 属性,需要将参数名称放到?data-?之后,例如?data-backdrop=""

    名称 类型 默认值 描述 show
    backdrop boolean 或 字符串'static' true

    Includes a modal-backdrop element. Alternatively,

    specify?static?for a backdrop which doesn't close

    the modal on click.

    keyboard boolean 键盘上的 esc 键被按下时关闭模态框。
    模态框初始化之后就立即显示出来。
    remote path false

    This option is deprecated since v3.3.0 and will be

    removed in v4.?We recommend instead using

    client-side templating or a data binding framework,

    or calling?jQuery.loadyourself.

    如果提供的是 URL,将利用 jQuery 的?load?方法从此

    URL 地址加载要展示的内容(只加载一次)

    插入?.modal-content?内。如果使用的是 data 属性 API,

    还可以利用?href?属性指定内容来源地址。下面是一个实例:

    复制
    <a data-toggle="modal" href="remote.html" data-target="#modal">Click me</a>

    方法

    .modal(options)

    将页面中的某块内容作为模态框激活。接受可选参数?object

    复制
    $('#myModal').modal({
      keyboard: false
    })

    .modal('toggle')

    手动打开或关闭模态框。在模态框显示或隐藏之前返回到主调函数中(也就是,在触发?shown.bs.modal?或hidden.bs.modal?事件之前)。

    '#myModal').modal('toggle')

    .modal('show')

    手动打开模态框。在模态框显示之前返回到主调函数中?(也就是,在触发?shown.bs.modal?事件之前)。

    'show')

    .modal('hide')

    手动隐藏模态框。在模态框隐藏之前返回到主调函数中?(也就是,在触发?'hide')

  • .modal('handleUpdate')

    Readjusts the modal's positioning to counter a scrollbar in case one should appear,which would make the modal jump to the left.

    Only needed when the height of the modal changes while it is open.

    'handleUpdate')

    事件

    Bootstrap 的模态框类提供了一些事件用于监听并执行你自己的代码。

    All modal events are fired at the modal itself (i.e. at the?<div class="modal">).

    事件类型 描述 show.bs.modal hide.bs.modal loaded.bs.modal

    show?方法调用之后立即触发该事件。如果是通过点击某个作为触发器

    的元素,则此元素可以通过事件的relatedTarget?属性进行访问。

    shown.bs.modal

    此事件在模态框已经显示出来(并且同时在 CSS 过渡效果完成)之后被触发。

    如果是通过点击某个作为触发器的元素,则此元素可以通

    过事件的?relatedTarget?属性进行访问。

    hide?方法调用之后立即触发该事件。
    hidden.bs.modal 此事件在模态框被隐藏(并且同时在 CSS 过渡效果完成)之后被触发。
    远端的数据源加载完数据之后触发该事件。
    '#myModal').on('hidden.bs.modal', function (e) { // do something... })

    (编辑:李大同)

    【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

      推荐文章
        热点阅读