Бутстрап 3 против бутстрапа 4

В интервью мне задали следующий вопрос:

В чем заключалась проблема в сеточной системе начальной загрузки 3, которая была исправлена ​​в начальной загрузке 4, и в тот раз я не нашел ответа, много искал и так и не нашел хорошего ответа, но, насколько я знаю, бутстрап 3 имеет цвет: sm, col-md, col-xl, как показано ниже:

<div class = "container">
  <div class = "row">
    <div class = "col-sm">
      One of three columns
    </div>
    <div class = "col-sm">
      One of three columns
    </div>
    <div class = "col-sm">
      One of three columns
    </div>
  </div>
</div> 

Но когда мне задали этот вопрос, я полностью запутался, так что, пожалуйста, может кто-нибудь помочь мне разобраться в деталях между ними?

@ לבנימלכה Это происходит, только если вы использовали col-sm три раза, для ясности. Он автоматически определяет, сколько сетки потребуется, больше здесь.

Carl Binalla 13.12.2018 08:53

ОП говорят про col-sm

לבני מלכה 13.12.2018 08:56

@ לבנימלכה Это просто образец кода, OP спрашивает о различиях системы сеток в 3 и 4, а также об исправлениях, добавленных в 4

Carl Binalla 13.12.2018 08:58

Я вложил всю информацию в свой ответ (не стесняйтесь редактировать свой ответ)

לבני מלכה 13.12.2018 09:00
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Введение в CSS
Введение в CSS
CSS является неотъемлемой частью трех основных составляющих front-end веб-разработки.
Как выровнять Div по центру?
Как выровнять Div по центру?
Чтобы выровнять элемент <div>по горизонтали и вертикали с помощью CSS, можно использовать комбинацию свойств и значений CSS. Вот несколько методов,...
Навигация по приложениям React: Исчерпывающее руководство по React Router
Навигация по приложениям React: Исчерпывающее руководство по React Router
React Router стала незаменимой библиотекой для создания одностраничных приложений с навигацией в React. В этой статье блога мы подробно рассмотрим...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
Toor - Ангулярный шаблон для бронирования путешествий
Toor - Ангулярный шаблон для бронирования путешествий
Toor - Travel Booking Angular Template один из лучших Travel & Tour booking template in the world. 30+ валидированных HTML5 страниц, которые помогут...
2
5
1 999
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Ответ принят как подходящий

в начальной загрузке 3 вы должны установить номер после sm как col-sm-3, если вы не устанавливаете номер, он принимает всю строку как col-sm-12

см. документацию

  <link rel = "stylesheet" href = "https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
  <script src = "https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
  <script src = "https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>

<div class = "container-fluid">
  <div class = "row">
    <div class = "col-sm" style = "background-color:lavender;">.col-sm</div>
    <div class = "col-sm" style = "background-color:lavenderblush;">.col-sm-</div>
    <div class = "col-sm" style = "background-color:lavender;">.col-sm</div>
  </div>
</div>

В начальной загрузке 4 он становится 4, если вы используете col-sm

см. документацию

Thanks to flexbox, grid columns without a specified width will automatically layout as equal width columns. For example, four instances of .col-sm will each automatically be 25% wide from the small breakpoint and up. See the auto-layout columns section for more examples.

  <link rel = "stylesheet" href = "https://maxcdn.bootstrapcdn.com/bootstrap/4.1.3/css/bootstrap.min.css">
  <script src = "https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
  <script src = "https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.3/umd/popper.min.js"></script>
  <script src = "https://maxcdn.bootstrapcdn.com/bootstrap/4.1.3/js/bootstrap.min.js"></script>
  
  
  <div class = "container-fluid">
  <div class = "row">
    <div class = "col-sm" style = "background-color:lavender;">.col-sm-4</div>
    <div class = "col-sm" style = "background-color:lavenderblush;">.col-sm-4</div>
    <div class = "col-sm" style = "background-color:lavender;">.col-sm-4</div>
  </div>
</div>

Сетка Bootstrap 4 против Boostarp 3

Бутстрап 4

Бутстрап 3

Значит, вы имеете в виду, что в начальной загрузке 4 значение по умолчанию равно 4, и нет необходимости добавлять число после столбца?

Aly-Elgarhy 13.12.2018 09:02

если вы хотите col-sm-4, да, вы правы, вы не должен для установки 4, потому что это автоматически

לבני מלכה 13.12.2018 09:05

@ Aly-Elgarhy Для ясности, 4 - это размер нет по умолчанию, он равен только 4, потому что вы использовали три col-sm, которые при делении на 12 дают вам col-sm-4

Carl Binalla 13.12.2018 09:11

да, он разделил столбец на 12, что бы вы ни использовали, без необходимости добавлять числа

Aly-Elgarhy 13.12.2018 09:15

Система сеток

  • Перемещен на flexbox.
    1. Добавлена ​​поддержка flexbox в миксинах сетки и предопределенных классах.
    2. В составе flexbox включена поддержка классов вертикального и горизонтального выравнивания.
  • Обновлены имена классов сетки и новый уровень сетки.
    1. Добавлен новый уровень сетки sm ниже 768 пикселей для более детального управления. Теперь у нас есть xs, sm, md, lg и xl. Это также означает, что каждый уровень был повышен на один уровень (так .col-md-6 в версии 3 теперь является .col-lg-6 в версии 4).
    2. Классы сетки xs были изменены, чтобы инфикс не требовал более точного представления того, что они начинают применять стили при min-width: 0, а не при заданном значении пикселя. Вместо .col-xs-6 теперь .col-6. Для всех остальных ярусов сетки требуется инфикс (например, sm).
  • Обновлены размеры сетки, миксины и переменные.
    1. Промежутки сетки теперь имеют карту Sass, так что вы можете указать определенную ширину желобов в каждой точке останова.
    2. Обновлены миксины сетки, чтобы использовать подготовительную миксину make-col-ready и make-col для установки гибкости и максимальной ширины для индивидуального размера столбца.
    3. Изменены точки останова медиа-запросов системы сетки и ширина контейнера для учета нового уровня сетки и обеспечения равномерного деления столбцов на 12 при максимальной ширине.
    4. Точки останова сетки и ширина контейнера теперь обрабатываются через карты Sass ($ grid-breakpoints и $ container-max-widths) вместо нескольких отдельных переменных. Они полностью заменяют переменные @ screen- * и позволяют полностью настраивать уровни сетки.
    5. Изменились и медиа-запросы. Вместо того чтобы каждый раз повторять наши объявления медиа-запросов с одним и тем же значением, теперь у нас есть @include media-breakpoint-up / down / only. Теперь вместо @media (min-width: @ screen-sm-min) {...} вы можете написать @include media-breakpoint-up (sm) {...}.

Да, было исправлено несколько проблем. Я не уверен, как в вопросе собеседования можно задать вопрос: «В чем заключалась проблема в сеточной системе начальной загрузки 3, которая была исправлена ​​в начальной загрузке 4», и ожидаю, что интервьюируемый столкнется с той же проблемой, которую имел в виду интервьюер.

Mr Lister 13.12.2018 13:01

Другие вопросы по теме