Bootstrap 4 модальная ширина (увеличение)

Я хочу, чтобы модальный был 80% или около того ширины экрана. modal-lg недостаточно большой. Это:

.modal .modal-dialog {
  width: 80%;
}

не работает с Bootstrap 4.

9 ответов


вы можете создать или просто переопределить bootstrap по умолчанию modal-lgвыполнив ниже:

.modal-lg {
    max-width: 80%;
}

если не работает, просто добавить !important так это будет выглядеть, как показано ниже

.modal-lg {
    max-width: 80% !important;
}

сейчас позвоню modal-lg.

<div class="modal-dialog modal-lg" role="document">
 <!-- some modal content --->
</div

для оперативного ответа.

@media (min-width: 992px) {
  .modal-dialog {
    max-width: 80%;
  }
}

Bootstrap 4 включает в себя калибровка утилит. Вы можете изменить размер на 25/50/75/100% от ширины страницы (я хотел бы, чтобы было еще больше приращений).

чтобы использовать их, мы заменим modal-lg класса. Ширина по умолчанию и modal-lg использовать css max-width для управления шириной модала, поэтому сначала добавьте mw-100 класс для эффективного отключения max-width. Затем просто добавьте класс width, который вы хотите, например w-75.


Просто Использовать !важно после предоставления ширины этого класса, который переопределяет ваш класс.

.modal .modal-dialog {
  width: 850px !important;
}

надеюсь, это будет работать для вас.


в Bootstrap 4 Вы должны использовать атрибут "max-width", а затем он отлично работает.

<div id="modal_dialog" class="modal fade" tabindex="-1" role="dialog" style="display: none;">
<div class="modal-dialog" style="max-width: 1350px!important;" role="document">
    <div class="modal-content">
        <div class="modal-body">
            Sample text
        </div>
    </div>
</div>


Это было решение, которое сработало для меня:

.modal{
 padding: 0 !important;
}
.modal-dialog {
  max-width: 80% !important;
  height: 100%;
  padding: 0;
  margin: 0;
}

.modal-content {
  border-radius: 0 !important;
  height: 100%;
}
<script src="https://code.jquery.com/jquery-3.2.1.slim.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/js/bootstrap.min.js"></script>
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/css/bootstrap.min.css" rel="stylesheet" />
<a href="#" class="menu-toggler" data-toggle="modal" data-target=".bd-example-modal-lg">Menu</a>

<div class="modal mobile-nav-modal fade bd-example-modal-lg" tabindex="-1" role="dialog" aria-labelledby="myLargeModalLabel" aria-hidden="true">
  <div class="modal-dialog modal-lg">
    <div class="modal-content">
      <a href="#" class="" data-dismiss="modal">Close Menu</a>

      <nav class="modal-nav">
        <ul>
          <li><a data-toggle="collapse" href="#collapseExample" role="button">Shop</a>
            <div class="collapse" id="collapseExample">
              <ul>
                <li><a href="#">List 1</a></li>
                <li><a href="#">List 2</a></li>
                <li><a href="#">List 3</a></li>
              </ul>
              <ul>
                <li><a href="#">List 1</a></li>
                <li><a href="#">List 2</a></li>
                <li><a href="#">List 3</a></li>
              </ul>
            </div>
          </li>
          <li><a href="#">Made To Order</a></li>
          <li><a href="#">Heritage</a></li>
          <li><a href="#">Style & Fit</a></li>
          <li><a href="#">Sign In</a></li>
        </ul>
      </nav>
    </div>
  </div>
</div>

убедитесь, что ваш модальный не помещен в контейнер, попробуйте добавить !важная аннотация, если она не изменяет ширину от исходной.


попробуйте использовать px

.modal .modal-dialog {
  width: 850px;
}

просто изменить размер.


Если вы используете Sass,

по словам документация вы можете настроить значения по умолчанию.

в вашем случае, вы можете легко переопределить переменную $modal-lg в своем .