bootstrap弹出框居中

1.html页面(如果效果出不来,注意修改单引号)

<!DOCTYPE html>
<html >
<head>
  <meta charset="utf-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no">
  <title>bootstrap</title>
  <link href="css/bootstrap.css" rel="stylesheet">

  <!--[if lt IE 9]>
  <script src="js/html5shiv.min.js"></script>
  <script src="js/respond.min.js"></script>
  <![endif]-->
</head>

<body>
        <button type="button"  class="btn btn-primary">点击弹modal</button>


    <div class="modal fade" >
      <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">×</span></button>
            <h4 class="modal-title">Modal 标题</h4>
          </div>
          <div class="modal-body">
            <p>内容…</p>
          </div>
          <div class="modal-footer">
            <button type="button" class="btn btn-default" data-dismiss="modal">关闭</button>
            <button type="button" class="btn btn-primary">确定</button>
          </div>
        </div><!-- /.modal-content -->
      </div><!-- /.modal-dialog -->
    </div><!-- /.modal -->


<br><br><br><br><br><br><br><br><br><br><br><br>
<script src="js/jquery-1.11.3.js"></script>
<script src="js/bootstrap.js"></script>


<script>
   var $m_btn = $(\'#modalBtn\');
        var $modal = $(\'#myModal\');
        $m_btn.on(\'click\', function(){
          $modal.modal({backdrop:\'static\'});
        });
  
 
  /*(function () {
    var s = document.createElement("script");
    s.onload = function () {
      bootlint.showLintReportForCurrentDocument([]);
    };
    s.src = "js/bootlint.js";
    document.body.appendChild(s)
  })();*/
</script>
</body>
</html>


<!DOCTYPE html>
<html >
<head>
  <meta charset="utf-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no">
  <title>bootstrap</title>
  <link href="css/bootstrap.css" rel="stylesheet">

  <!--[if lt IE 9]>
  <script src="js/html5shiv.min.js"></script>
  <script src="js/respond.min.js"></script>
  <![endif]-->
</head>

<body>
        <button type="button"  class="btn btn-primary">点击弹modal</button>


    <div class="modal fade" >
      <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">×</span></button>
            <h4 class="modal-title">Modal 标题</h4>
          </div>
          <div class="modal-body">
            <p>内容…</p>
          </div>
          <div class="modal-footer">
            <button type="button" class="btn btn-default" data-dismiss="modal">关闭</button>
            <button type="button" class="btn btn-primary">确定</button>
          </div>
        </div><!-- /.modal-content -->
      </div><!-- /.modal-dialog -->
    </div><!-- /.modal -->


<br><br><br><br><br><br><br><br><br><br><br><br>
<script src="js/jquery-1.11.3.js"></script>
<script src="js/bootstrap.js"></script>


<script>
   var $m_btn = $(\'#modalBtn\');
        var $modal = $(\'#myModal\');
        $m_btn.on(\'click\', function(){
          $modal.modal({backdrop:\'static\'});
        });
  
 
  /*(function () {
    var s = document.createElement("script");
    s.onload = function () {
      bootlint.showLintReportForCurrentDocument([]);
    };
    s.src = "js/bootlint.js";
    document.body.appendChild(s)
  })();*/
</script>
</body>
</html>

2.修改bootstrap.js 源码

打开bootstrap.js ctrl+f 找到 modal对应代码

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 : ‘‘
    })
    // 添加下面三行代码,注意修改单引号!
    var $modal_dialog = $(this.$element[0]).find(‘.modal-dialog‘);
    var m_top = ( $(document).height() - $modal_dialog.height() )/2;
    $modal_dialog.css({‘margin‘: m_top + ‘px auto‘});
  }

这个样子就实现modal垂直居中了!