Переход на v5
Отслеживайте и просматривайте изменения в исходных файлах, документации и компонентах Bootstrap, чтобы помочь Вам перейти с v4 на v5.
v5.2.0
Обновленный дизайн
В Bootstrap версии 5.2.0 представлено тонкое обновление дизайна для нескольких компонентов и свойств по всему проекту, в первую очередь за счет уточненных значений border-radius на кнопках и элементах управления формы. Наша документация также была обновлена за счет новой домашней страницы, более простого макета документов, который больше не сворачивает разделы боковой панели, и более заметных примеров Иконок Bootstrap.
Дополнительные переменные CSS
Мы обновили все наши компоненты, чтобы использовать переменные CSS. Хотя Sass по-прежнему лежит в основе всего, каждый компонент был обновлен, чтобы включить переменные CSS в базовые классы компонентов (например, .btn), что позволяет более реально временная настройка Bootstrap. В последующих выпусках мы продолжим расширять использование переменных CSS в нашем макете, формах, помощниках и утилитах. Узнайте больше о переменных CSS в каждом компоненте на соответствующих страницах документации.
Наше использование переменных CSS будет несколько неполным до Bootstrap 6. Хотя мы хотели бы полностью реализовать их по всем направлениям, они рискуют вызвать критические изменения. Например, установка $alert-border-width: var(--bs-border-width) в нашем исходном коде нарушает потенциал Sass в вашем собственном коде, если вы делали $alert-border-width * 2 для некоторых причин.
Таким образом, везде, где это возможно, мы продолжим продвигать больше переменных CSS, но, пожалуйста, имейте в виду, что наша реализация может быть немного ограничена в v5.
Новый _maps.scss
Bootstrap v5.2.0 представил новый файл Sass с _maps.scss. Он извлекает несколько карт Sass из _variables.scss, чтобы исправить проблему, из-за которой обновления исходной карты не применялись к вторичным картам, которые расширяют их. Например, обновления для $theme-colors не применялись к другим картам тем, которые основывались на $theme-colors, что нарушало основные рабочие процессы настройки. Короче говоря, у Sass есть ограничение: после того, как переменная или карта по умолчанию были использованы, их нельзя обновить. Есть аналогичный недостаток с переменными CSS, когда они используются для составления других переменных CSS.
Вот почему настройки переменных в Bootstrap должны идти после @import "functions", но перед @import "variables" и остальной частью нашего стека импорта. То же самое относится и к картам Sass — вы должны переопределить значения по умолчанию, прежде чем они будут использоваться. Следующие карты были перемещены в новый _maps.scss:
$theme-colors-rgb$utilities-colors$utilities-text$utilities-text-colors$utilities-bg$utilities-bg-colors$negative-spacers$gutters
Ваши пользовательские сборки Bootstrap CSS теперь должны выглядеть примерно так с отдельным импортом карт.
// Functions come first
@import "functions";
// Optional variable overrides here
+ $custom-color: #df711b;
+ $custom-theme-colors: (
+ "custom": $custom-color
+ );
// Variables come next
@import "variables";
+ // Optional Sass map overrides here
+ $theme-colors: map-merge($theme-colors, $custom-theme-colors);
+
+ // Followed by our default maps
+ @import "maps";
+
// Rest of our imports
@import "mixins";
@import "utilities";
@import "root";
@import "reboot";
// etc
Новые утилиты
- Расширены
font-weightutilities для включения.fw-semiboldдля полужирных шрифтов. - Расширены
border-radiusutilities, чтобы включить два новых размера,.rounded-4и.rounded-5, для большего количества опций.
Дополнительные изменения
-
Введена новая опция
$enable-container-classes. — Теперь при выборе экспериментального макета CSS Grid классы,.container-*по-прежнему будут скомпилированы, если для этого параметра не установлено значениеfalse. Контейнеры также теперь сохраняют свои значения промежутков. -
Компонент Offcanvas теперь имеет отзывчивые варианты. Исходный класс
.offcanvasостается неизменным — он скрывает содержимое во всех окнах просмотра. Чтобы сделать его отзывчивым, измените этот класс.offcanvasна любой класс.offcanvas-{sm|md|lg|xl|xxl}. -
Более толстые разделители столов теперь доступны по желанию. — Мы удалили более толстую и трудную для переопределения границу между группами таблиц и переместили ее в необязательный класс, который вы можете применить,
.table-group-divider. Смотрите пример документации таблицы. -
Scrollspy был переписан для использования Intersection Observer API, что означает, что вам больше не нужны относительные родительские оболочки, устарела конфигурация
offsetи другие. Обратите внимание на то, чтобы ваши реализации Scrollspy были более точными и последовательными в подсветке навигации. -
Всплывающие окна и Всплывающие подсказки теперь используют переменные CSS. Некоторые переменные CSS были обновлены по сравнению с их аналогами Sass, чтобы уменьшить количество переменных. В результате в этом выпуске устарели три переменные:
$popover-arrow-color,$popover-arrow-outer-colorи$tooltip-arrow-color. -
Добавлены новые помощники
.text-bg-{color}. Вместо того, чтобы устанавливать отдельные утилиты.text-*и.bg-*, теперь вы можете использовать хелперы.text-bg-*, чтобы установитьbackground-colorс контрастнымcolorпереднего плана. -
Добавлен модификатор
.form-check-reverseдля изменения порядка меток и связанных с ними флажков/радио. -
Добавлена поддержка полосатых столбцов для таблиц через новый класс
.table-striped-columns.
Полный список изменений смотрите в проекте версии 5.2.0 на GitHub.
v5.1.0
-
Добавлена экспериментальная поддержка макета CSS Grid. — Это находится в стадии разработки и еще не готово к использованию в производственной среде, но вы можете включить новую функцию через Sass. Чтобы включить его, отключите сетку по умолчанию, установив
$enable-grid-classes: false, и включите сетку CSS, установив$enable-cssgrid: true. -
Обновлены панели навигации для поддержки offcanvas. — Добавьте offcanvas drawers в любую панель навигации с адаптивными классами
.navbar-expand-*и некоторой разметкой offcanvas. -
Добавлен новый компонент-заполнитель. — Наш новейший компонент, способ предоставления временных блоков вместо реального контента, чтобы показать, что что-то все еще загружается на вашем сайте или в приложении.
-
Плагин Collapse теперь поддерживает горизонтальное сворачивание. — Добавьте
.collapse-horizontalк вашему.collapse, чтобы свернутьwidthвместоheight. Избегайте перерисовки браузера, устанавливаяmin-heightилиheight. -
Добавлены новые помощники стека и вертикального правила. — Быстро применяйте несколько свойств flexbox для быстрого создания пользовательских макетов с помощью стеков. Выберите один из горизонтальных (
.hstack) и вертикальных (.vstack) стеков. Добавьте вертикальные разделители, похожие на элементы<hr>, с помощью новых помощников.vr. -
Добавлены новые глобальные CSS-переменные
:root. — Добавлено несколько новых переменных CSS на уровень:rootдля управления стилями<body>. В разработке находится больше, в том числе в отношении наших утилит и компонентов, но пока прочитайте CSS-переменные в разделе «Кастомизация». -
Переработаны утилиты цвета и фона для использования переменных CSS, а также добавлены новые утилиты непрозрачность текста и непрозрачность фона. — Утилиты
.text-*и.bg-*теперь создаются с переменными CSS и значениями цветаrgba(), что позволяет легко настраивать любую утилиту с помощью новых утилит непрозрачности. -
Добавлены новые примеры фрагментов, демонстрирующие, как настраивать наши компоненты. — Получите готовые к использованию настраиваемые компоненты и другие распространенные шаблоны проектирования с нашими новыми примерами фрагментов. Включает футеры, выпадающие списки, группы списков, и модальные окна.
-
Удалены неиспользуемые стили позиционирования из всплывающих окон и всплывающих подсказок, так как они обрабатываются исключительно Popper.
$tooltip-marginустарел и установлен вnullв процессе.
Хотите больше информации? Прочитайте сообщение в блоге о версии 5.1.0.
Зависимости
- Удален jQuery.
- Обновлен с Popper v1.x до Popper v2.x.
- Заменен Libsass на Dart Sass в качестве нашего компилятора Sass, учитывая, что Libsass устарел.
- Мигрировал с Jekyll на Hugo для создания нашей документации.
Поддержка браузера
- Удален Internet Explorer 10 и 11
- Удален Microsoft Edge < 16 (Legacy Edge)
- Удален Firefox < 60
- Удален Safari < 10
- Удален iOS Safari < 10
- Удален Chrome < 60
Изменения в документации
- Обновленная домашняя страница, макет документации и нижний колонтитул.
- Добавлено новое руководство по Parcel.
- Добавлен новый раздел настройки, заменяющий страницу темы v4’s, с новыми подробностями о Sass, опциями глобальной конфигурации, цветовыми схемами, переменными CSS и многим другим.
- Реорганизована вся документация по формам в новый раздел форм, разделив содержание на более сфокусированные страницы.
- Аналогичным образом обновлен раздел макетов, чтобы более четко обозначить содержимое сетки.
- Страница компонента “Навигация” переименована в “Навигация и вкладки”.
- Страница “Чекбоксы” переименована в “Чекбоксы и радио”.
- Переработана навигационная панель и добавлена новая поднавигация, чтобы упростить просмотр наших сайтов и версий документации.
- Добавлено новое сочетание клавиш для поля поиска: Ctrl + /.
Sass
-
Мы отказались от слияния карт Sass по умолчанию, чтобы упростить удаление избыточных значений. Имейте в виду, что теперь вам нужно определить все значения в картах Sass, например
$theme-colors. Узнайте, как работать с картами Sass. -
Breaking Переименована функция
color-yiq()и связанные переменные переименованы вcolor-contrast(), поскольку она больше не связана с цветовым пространством YIQ. Смотрите #30168.$yiq-contrasted-thresholdпереименован в$min-contrast-ratio.$yiq-text-darkи$yiq-text-lightсоответственно переименованы в$color-contrast-darkи$color-contrast-light.
-
Breaking Параметры миксинов медиа-запросов изменены для более логичного подхода.
media-breakpoint-down()использует саму контрольную точку вместо следующей контрольной точки (например,media-breakpoint-down(lg)вместоmedia-breakpoint-down(md)цели области просмотра меньше, чемlg).- Точно так же второй параметр в
media-breakpoint-between()также использует саму контрольную точку вместо следующей контрольной точки (например,media-between(sm, lg)вместоmedia-breakpoint-between(sm, md)цели области просмотра междуsmиlg).
-
Breaking Удалены стили печати и переменная
$enable-print-styles. Классы отображения печати все еще существуют. Смотрите #28339. -
Breaking Отказ от функций
color(),theme-color()иgray()в пользу переменных. Смотрите #29083. -
Breaking Функция
theme-color-level()переименована вcolor-level()и теперь принимает любой цвет, который вы хотите, вместо только$theme-colorцвета. Смотрите #29083 Остерегайтесь:color-level()позже был удален вv5.0.0-alpha3. -
Breaking Переименованы
$enable-prefers-reduced-motion-media-queryи$enable-pointer-cursor-for-buttonsв$enable-reduced-motionи$enable-button-pointersдля краткости. -
Breaking Удален миксин
bg-gradient-variant(). Используйте класс.bg-gradientдля добавления градиентов к элементам вместо сгенерированных классов.bg-gradient-*. -
Breaking Удалены ранее устаревшие миксины:
hover,hover-focus,plain-hover-focusиhover-focus-activefloat()form-control-mixin()nav-divider()retina-img()text-hide()(также удален связанный класс утилит,.text-hide)visibility()form-control-focus()
-
Breaking Функция
scale-color()переименована вshift-color(), чтобы избежать столкновения с собственной функцией масштабирования цвета Sass. -
Примеси
box-shadowтеперь допускаютnullзначения и отбрасываютnoneиз нескольких аргументов. Смотрите #30394. -
Примесь
border-radius()теперь имеет значение по умолчанию.
Цветовая система
-
Цветовая система, которая работала с
color-level()и$theme-color-interval, была удалена в пользу новой цветовой системы. Все функцииlighten()иdarken()в нашей кодовой базе заменены наtint-color()иshade-color(). Эти функции будут смешивать цвет с белым или черным вместо изменения его яркости на фиксированную величину.shift-color()будет либо подкрашивать, либо затенять цвет в зависимости от того, является ли его параметр веса положительным или отрицательным. Смотрите #30622 для получения дополнительных сведений. -
Добавлены новые оттенки и оттенки для каждого цвета, предоставляя девять отдельных цветов для каждого основного цвета в качестве новых переменных Sass.
-
Улучшен цветовой контраст. Коэффициент цветовой контрастности увеличен с 3:1 до 4.5:1 и обновлены синий, зеленый, голубой и розовый цвета, чтобы обеспечить контраст WCAG 2.1 AA. Также изменен цвет нашего цветового контраста с
$gray-900на$black. -
Для поддержки нашей цветовой системы мы добавили новые пользовательские функции
tint-color()иshade-color()для правильного смешивания цвето.
Обновления сетки
-
Новая контрольная точка! Добавлена новая контрольная точка
xxlдля1400pxи выше. Никаких изменений для всех остальных контрольных точек. -
Улучшенные промежутки. Промежутки теперь устанавливаются в ремах, и они уже, чем v4 (
1.5rem, или примерно24px, по сравнению с30px). Это выравнивает промежутки нашей сеточной системы с нашими утилитами интервала.- Добавлен новый класс gutter (
.g-*,.gx-*и.gy-*) для управления горизонтальным / вертикальные промежутки, горизонтальные промежутки и вертикальные промежутки. - Breaking
.no-guttersпереименован в.g-0, чтобы соответствовать новым утилитам промежутков.
- Добавлен новый класс gutter (
-
К столбцам больше не применяется
position: relative, поэтому вам, возможно, придется добавить.position-relativeк некоторым элементам, чтобы восстановить это поведение. -
Breaking Удалили несколько классов
.order-*, которые часто не использовались. Теперь из коробки мы предоставляем только от.order-1до.order-5. -
Breaking Отказ от компонента
.media, так как его можно легко воспроизвести с помощью утилит. Смотрите #28265 и страница гибких утилит для примера. -
Breaking
bootstrap-grid.cssтеперь применяет к столбцу толькоbox-sizing: border-boxвместо сброса глобального размера поля. Таким образом, наши стили сетки можно использовать в большем количестве мест без помех. -
$enable-grid-classesбольше не отключает создание контейнерных классов. Смотрите #29146. -
Обновлен миксин
make-colпо умолчанию для равных столбцов без указанного размера.
Контент, перезагрузка и т. д
-
RFS теперь включен по умолчанию. Заголовки, использующие миксин
font-size(), автоматически изменят свойfont-sizeмасштабировать вместе с окном просмотра. Эта функция ранее была включена в v4. -
Breaking Переработана типография дисплея, заменив переменные
$display-*на карту Sass$display-font-sizes. Также удалены отдельные переменные$display-*-weightдля одного$display-font-weightи скорректированыfont-sizes. -
Добавлены два новых размера заголовков
.display-*,.display-5и.display-6. -
Ссылки по умолчанию подчеркнуты (не только при наведении курсора), если они не являются частью определенных компонентов.
-
Переработанные таблицы, чтобы обновить их стили и перестроить их с помощью переменных CSS для большего контроля над стилями.
-
Breaking Вложенные таблицы больше не наследуют стили.
-
Breaking
.thead-lightи.thead-darkудаляются в пользу классов-вариантов.table-*, которые могут использоваться для всех элементов таблицы (thead,tbody,tfoot,tr,thиtd). -
Breaking Примесь
table-row-variant()переименована вtable-variant()и принимает только 2 параметра:$color(название цвета) и$value(цветовой код). Цвет границы и цвета акцента вычисляются автоматически на основе переменных фактора таблицы. -
Разделены переменные заполнения ячеек таблицы на
-yи-x. -
Breaking Удален класс
.pre-scrollable. Смотрите #29135 -
Breaking Утилиты
.text-*больше не добавляют к ссылкам состояния наведения и фокуса. Вместо этого можно использовать вспомогательные классы.link-*. Смотрите #29267 -
Breaking Удален класс
.text-justify. Смотрите #29793 -
Breaking элементы
<hr>теперь используютheightвместоborder, чтобы лучше поддерживать атрибутsize. Это также позволяет использовать утилиты заполнения для создания более толстых разделителей (например,<hr class="py-1">). -
Сбросить по умолчанию горизонтальный
padding-leftдля элементов<ul>и<ol>с40pxпо умолчанию браузера на2rem. -
Добавлен
$enable-smooth-scroll, который применяетscroll-behavior: smoothглобально, за исключением пользователей, запрашивающих уменьшение движения с помощью медиа-запросаprefers-reduced-motion. Смотрите #31877
RTL
- Переменные, утилиты и миксины, зависящие от горизонтального направления, были переименованы для использования логических свойств, подобных тем, которые присутствуют в макетах flexbox, например,
startиendвместоleftиright.
Формы
-
Добавлены новые плавающие формы! Мы продвинули пример с плавающими метками до полностью поддерживаемых компонентов формы. Смотрите новую страницу «Плавающие метки».
-
Breaking Объединенные собственные и настраиваемые элементы формы. Флажки, радио, выборки и другие входные данные, которые имели собственные и настраиваемые классы в версии 4, были объединены. Теперь почти все наши элементы формы полностью настраиваемые, для большинства из них не требуется настраиваемый HTML.
.custom-control.custom-checkboxтеперь называется.form-check..custom-control.custom-custom-radioтеперь называется.form-check..custom-control.custom-switchтеперь называется.form-check.form-switch..custom-selectтеперь называется.form-select..custom-fileи.form-fileбыли заменены пользовательскими стилями поверх.form-control..custom-rangeтеперь называется.form-range.- Удалены нативные
.form-control-fileи.form-control-range.
-
Breaking Удалены
.input-group-appendи.input-group-prepend. Теперь вы можете просто добавить кнопки и.input-group-textв качестве прямых потомков групп ввода. -
Давний Отсутствующий радиус границы в группе ввода с ошибкой обратной связи с проверкой, наконец, исправлен путем добавления дополнительного класса
.has-validationво входные группы с проверкой. -
Breaking Исключены классы макета, специфичные для формы, для нашей системы сеток. Используйте нашу сетку и утилиты вместо
.form-group,.form-rowили.form-inline. -
Breaking Метки форм теперь требуют
.form-label. -
Breaking
.form-textбольше не устанавливаетdisplay, позволяя вам создавать встроенный или блокировать текст справки по вашему желанию, просто изменяя элемент HTML. -
Иконки валидации больше не применяются к элементам
<select>с параметромmultiple. -
Элементы управления формой больше не использовали фиксированную
heightкогда это было возможно, вместо этого откладывалиmin-heightдля улучшения настройки и совместимости с другими компонентами. -
Переставлены исходные файлы Sass в
scss/forms/, включая стили группы ввода.
Компоненты
- Унифицированные значения
paddingдля предупреждений, хлебных крошек, карточек, раскрывающихся списков, групп списков, модальных окон, всплывающих окон и всплывающих подсказок должны основываться на нашей переменной$spacer. Смотрите #30564.
Аккордеон
- Добавлен [новый компонент аккордеона](/docs/5.2/components/accordion/!
Оповещения
-
В оповещениях теперь есть примеры с иконками.
-
Удалены пользовательские стили для
<hr>в каждом оповещении, поскольку они уже используютcurrentColor.
Значки
-
Breaking Удалены все классы цвета
.badge-*для фоновых утилит (например, используйте.bg-primaryвместо.badge-primary). -
Breaking Удалено
.badge-pillиспользуйте вместо нее утилиту.rounded-pill. -
Breaking Удалены стили наведения и фокуса для элементов
<a>и<button>. -
Увеличено заполнение по умолчанию для значков с
.25em/.5emдо.35em/.65em.
Хлебные крошки
-
Упрощен внешний вид хлебных крошек по умолчанию, удалив
padding,background-colorиborder-radius. -
Добавлено новое настраиваемое свойство CSS
--bs-breadcrumb-dividerдля легкой настройки без перекомпиляции CSS.
Кнопки
-
Breaking Кнопки переключения, с флажками или радио, больше не требуют JavaScript и имеют новую разметку. Нам больше не нужен элемент-оболочка, добавьте
.btn-checkв<input>, и соедините его с любыми классами.btnв<label>. Смотрите #30650. Документация по этому поводу перемещена со страницы «Кнопки» в новый раздел «Формы». -
Breaking Удален
.btn-blockдля утилит. Вместо используйте.btn-blockв.btn, оберните ваши кнопки с.d-gridи.gap-*утилитами для размещения их по мере необходимости. Переключитесь на отзывчивые классы, чтобы получить еще больший контроль над ними. Прочтите документацию для некоторых примеров. -
Обновлены миксины
button-variant()иbutton-outline-variant()для поддержки дополнительных параметров. -
Обновлены кнопки для увеличения контраста при наведении и активном состоянии.
-
Отключенные кнопки теперь имеют
pointer-events: none;.
Карточка
-
Breaking Отказались от
.card-deckв пользу нашей сетки. Оберните ваши карты в классы колонок и добавьте родительский контейнер.row-cols-*, чтобы воссоздать колоды карт (но с большим контролем над выравниванием). -
Breaking Отказались от
.card-columnsв пользу Masonry. Смотрите #28922. -
Breaking Заменен аккордеон на основе
.cardна новый компонент Accordion.
Карусель
-
Добавлен новый вариант
.carousel-darkдля темного текста, элементов управления и индикаторов (отлично подходит для более светлого фона). -
Шевронные иконки для элементов управления каруселью заменены новыми SVG из Bootstrap Icons.
Кнопка закрытия
-
Breaking
.closeпереименован в.btn-closeдля менее общего названия. -
Кнопки закрытия теперь используют
background-image(встроенный SVG) вместо×в HTML, что позволяет упростить настройку без необходимости касаться вашей разметки. -
Добавлен новый вариант
.btn-close-white, который используетfilter: invert(1)для включения более контрастных иконок удаления на более темном фоне.
Сворачиваемое
- Убрана привязка скролла для аккордеонов.
Выпадающие списки
-
Добавлен новый вариант
.dropdown-menu-darkи связанные переменные для темных выпадающих списков по запросу. -
Добавлена новая переменная для
$dropdown-padding-x. -
Затемнен разделитель раскрывающегося списка для улучшения контраста.
-
Breaking Все события для раскрывающегося списка теперь запускаются на кнопке-переключателе раскрывающегося списка, а затем всплывают до родительского элемента.
-
Выпадающие меню теперь имеют атрибут
data-bs-popper="static", установленный, когда положение раскрывающегося списка является статическим или раскрывающийся список находится на панели навигации. Это добавлено нашим JavaScript и помогает нам использовать настраиваемые стили положения, не мешая позиционированию Popper. -
Breaking Исключена опция
flipдля плагина раскрывающегося списка в пользу собственной конфигурации Popper. Теперь вы можете отключить поведение переворачивания, передав пустой массив для параметраfallbackPlacementsв flip модификатор. -
На раскрывающиеся меню теперь можно щелкнуть с помощью новой опции
autoCloseдля обработки поведения автоматического закрытия. Вы можете использовать этот параметр, чтобы принять щелчок внутри или за пределами раскрывающегося меню, чтобы сделать его интерактивным. -
Выпадающие списки теперь поддерживают
.dropdown-item, заключенные в<li>.
Джамботрон
- Breaking Убрали компонент jumbotron, так как его можно повторить с помощью утилит. Смотрите наш новый пример Jumbotron для демонстрации.
Группа списка
- Добавлен новый модификатор
.list-group-numberedв список групп.
Навигация и табы
- Добавлены новые переменные
nullдляfont-size,font-weight,colorи:hovercolorв класс.nav-link.
Панели навигации
- Breaking Навбарам теперь требуется контейнер внутри (чтобы значительно упростить требования к интервалам и CSS).
- Breaking Класс
.activeбольше нельзя применять к элементам.nav-item, его необходимо применять непосредственно к элементам.nav-link.
Offcanvas
- Добавлен новый компонент offcanvas.
Пагинация
-
Ссылки на страницы теперь имеют настраиваемое поле
margin-left, которое динамически округляется по всем углам, когда они отделены друг от друга. -
Добавлен переход
transitionпо ссылкам для пагинации.
Поповеры
-
Breaking В нашем шаблоне всплывающего окна по умолчанию
.arrowпереименован в.popover-arrow. -
Параметр
whiteListпереименован вallowList.
Спиннеры
-
Спиннеры теперь учитывают
prefers-reduced-motion: reduce, замедляя анимацию. Смотрите #31882. -
Улучшено вертикальное выравнивание спиннера.
Тосты
-
Теперь тосты можно позиционировать в
.toast-containerс помощью утилит позиционирования. -
Изменена длительность тоста по умолчанию на 5 секунд.
-
Удалено
overflow: hiddenиз тостов и заменено правильнымborder-radiusс функциямиcalc().
Тултипы
-
Breaking В нашем шаблоне всплывающей подсказки по умолчанию
.arrowпереименован в.tooltip-arrow. -
Breaking Значение по умолчанию для
fallbackPlacementsизменено на['top', 'right', 'bottom', 'left']для лучшего размещения элементов. -
Breaking Параметр
whiteListпереименован вallowList.
Утилиты
-
Breaking Переименовано несколько утилит для использования логических имен свойств вместо прямых имен с добавлением поддержки RTL:
- Переименованы
.left-*и.right-*в.start-*и.end-*. - Переименованы
.float-leftи.float-rightв.float-startи.float-end. - Переименованы
.border-leftи.border-rightв.border-startи.border-end. - Переименованы
.rounded-leftи.rounded-rightв.rounded-startи.rounded-end. - Переименованы
.ml-*и.mr-*в.ms-*и.me-*. - Переименованы
.pl-*и.pr-*в.ps-*и.pe-*. - Переименованы
.text-leftи.text-rightв.text-startи.text-end.
- Переименованы
-
Breaking По умолчанию отрицательные поля отключены.
-
Добавлен новый класс
.bg-bodyдля быстрой установки фона<body>для дополнительных элементов. -
Добавлены новые утилиты позиционирования для
top,right,bottomиleft. Значения для каждого свойства включают0,50%и100%. -
Добавлены новые утилиты
.translate-middle-xи.translate-middle-yдля горизонтального или вертикального центрирования абсолютных / фиксированных элементов. -
Добавлены новые утилиты
border-width. -
Breaking
.text-monospaceпереименован в.font-monospace. -
Breaking Удален
.text-hide, так как это устаревший метод скрытия текста, который больше не следует использовать. -
Добавлены утилиты
.fs-*для утилитfont-size(с включенным RFS). Они используют тот же масштаб, что и заголовки HTML по умолчанию (1-6, от большого к маленькому), и могут быть изменены с помощью карты Sass. -
Breaking Утилиты
.font-weight-*переименованы в.fw-*для краткости и единообразия. -
Breaking Утилита
.font-italicпереименована в.fst-italicдля краткости и согласованности с новой утилитой.fst-normal. -
Добавлен
.d-gridдля отображения утилит и новые утилитыgap(.gap) для макетов CSS Grid и flexbox. -
Breaking Удалены
.rounded-smиrounded-lg, а также введена новая шкала классов от.rounded-0до.rounded-3. Смотрите #31687. -
Добавлены новые утилиты
line-height:.lh-1,.lh-sm,.lh-baseи.lh-lg. Смотреть здесь. -
Утилита
.d-noneв нашем CSS перемещена, чтобы придать ей больший вес по сравнению с другими утилитами отображения. -
Расширен помощник
.visually-hidden-focusable, чтобы он также работал с контейнерами, используя:focus-within.
Помощники
-
Breaking Адаптивные помощники по внедрению были переименованы в ratio helpers с новыми именами классов и улучшенным поведением, а также полезной переменной CSS.
- Классы были переименованы, чтобы изменить соотношение сторон
byнаx. Например,.ratio-16by9теперь.ratio-16x9. - Мы отказались от селектора
.embed-responsive-itemи группы элементов в пользу более простого селектора.ratio > *. Класс больше не нужен, и помощник по соотношению теперь работает с любым элементом HTML. - Карта Sass
$embed-responsive-aspect-ratiosбыла переименована в$aspect-ratios, а ее значения были упрощены и теперь включают имя класса и процентное соотношение в качестве парыkey: value. - Переменные CSS теперь генерируются и включаются для каждого значения в карте Sass. Измените переменную
--bs-aspect-ratioв.ratio, чтобы создать любое настраиваемое соотношение сторон.
- Классы были переименованы, чтобы изменить соотношение сторон
-
Breaking Классы программ чтения с экрана теперь классы “визуально скрытые”.
- Изменен файл Sass с
scss/helpers/_screenreaders.scssнаscss/helpers/_visually-hidden.scss .sr-onlyи.sr-only-focusableпереименованы в.visually-hiddenи.visually-hidden-focusable- Переименованы миксины
sr-only()иsr-only-focusable()вvisually-hidden()иvisually-hidden-focusable().
- Изменен файл Sass с
-
bootstrap-utilities.cssтеперь также включает наших помощников. Помощников больше не нужно импортировать в пользовательские сборки.
JavaScript
-
Отказ от зависимости jQuery и переписаны плагины на обычный JavaScript.
-
Breaking Атрибуты данных для всех плагинов JavaScript теперь имеют пространство имен, чтобы помочь отличить функциональность Bootstrap от стороннего кода и вашего собственного кода. Например, мы используем
data-bs-toggleвместоdata-toggle. -
Все плагины теперь могут принимать селектор CSS в качестве первого аргумента. Вы можете передать элемент DOM или любой допустимый селектор CSS, чтобы создать новый экземпляр плагина:
const modal = new bootstrap.Modal('#myModal') const dropdown = new bootstrap.Dropdown('[data-bs-toggle="dropdown"]') -
popperConfigможет быть передан как функция, которая принимает конфигурацию Popper по умолчанию Bootstrap в качестве аргумента, так что вы можете объединить эту конфигурацию по умолчанию по-своему. Применяется к раскрывающимся спискам, всплывающим подсказкам и всплывающим подсказкам. -
Значение по умолчанию для
fallbackPlacementsизменено на['top', 'right', 'bottom', 'left']для лучшего размещения элементов Popper. Применяется к раскрывающимся спискам, всплывающим подсказкам и всплывающим подсказкам. -
Удалено подчеркивание из общедоступных статических методов, таких как
_getInstance()→getInstance().