This PR contains the following updates:
Release Notes
twbs/bootstrap (bootstrap)
Compare Source 
Highlights
- Fixed a breaking change introduced with color modes where it was required to manually import variables-dark.scsswhen building Bootstrap with Sass. Now,_variables.scsswill automatically import_variables-dark.scss. If you were already importing_variables-dark.scssmanually, you should keep doing it as it won't break anything and will be the way to go in v6.
- Fixed a regression in the selector engine that wasn't able to handle multiple IDs anymore.
Color modes
- Badges now use the .text-bg-*text utilities to be certain that the text is always readable (especially when the customized colors are different in light and dark modes).
- Fixed our color-modes.jsscript to handle the case where the OS is set to light mode and the auto color mode is used on the website. If you copied the script from our docs, you should apply this change to your own script.
- Fixed color schemes description in the color modes documentation to show that color-scheme()only acceptlightanddarkvalues as parameters.
Miscellaneous
- Allowed <dl>,<dt>and<dd>in the sanitizer.
- Dropped evenly items distribution for modal and offcanvas headers.
- Fixed the accordion CSS selectors to avoid inheritance issues when nesting accordions.
- Fixed the focus box-shadow for the validation stated form controls.
- Fixed the focus ring on focused checked buttons.
- Fixed the product example mobile navbar toggler.
- Changed the RTL processing of carousel control icons.
🎨 CSS
- #37508: Use child combinators to avoid inheriting parent accordion's flush styles
- #38719: Fix focus box-shadow for validation stated form-controls
- #38884: fix border-radius on radio-switch
- #39294: Tests: update navbar in visual modal test
- #39373: refactor css: modal and offcanvas header spacing
- #39380: Fix Sass compilation breaking change in v5.3
- #39387: docs: fix typo
- #39411: Optimize the accordion icon
- #39497: Fix a typo
- #39536: Changed RTL processing of carousel control icons
- #39560: Drop --bs-accordion-btn-focus-border-colorand deprecate$accordion-button-focus-border-color
- #39595: CSS: Fix the focus ring on focused checked buttons
☕️ JavaScript
- #39201: Selector Engine: fix multiple IDs
- #39224: Fix edge case in color-mode.js
- #39376: Allow dl,dtandddin sanitizer
📖 Docs
- #39200: Typo Fix
- #39214: Doc: use .text-bg-{color}for all badges
- #39246: Docs: fix for example code blocks have unnecessary 30px right-margin
- #39249: Doc: consistent rendering of 'Heads up!' callouts
- #39281: Fix getOrCreateInstance()doc example
- #39293: Update background.md
- #39304: Doc: add expanded accordion explanation
- #39320: Drop .table-lightfrom table foot example
- #39340: Doc: add dispose()to Offcanvas methods
- #39378: Docs: fix sentence in modal
- #39417: Fix color schemes description in Sass customization documentation
- #39418: Docs: change vite config path import in vite guide
- #39435: Docs: add shift-color()usage example in sass customization page
- #39458: Docs: enhance .card-img-*description
- #39503: Minor image compression improvements
- #39519: Docs: use consistent HTML elements in Utilities -> Background page
- #39520: Docs: drop unused .theme-iconclass
- #39528: docs: clean up example.html
- #39537: Docs: fix desc around deprecated Sass mixins for alerts and list groups
- #39539: Update links on get-started page
- #39592: Update vite.md
- #39604: Fix typo in 'media-breakpoint-between' in migration docs
- #39617: Docs: add missing comma in native font stack code source in Content -> Reboot
- #39663: updated table to be responsive
🛠 Examples
- #39657: Fix product example mobile navbar toggler
- #39585: Docs: Add missing type="button" to Cheatsheet nav buttons
🏭 Tests
- #39294: Tests: update navbar in visual modal test
🧰 Misc
- #39096: CI: stop running coveralls in forks
- #39501: CI: switch to Node.js 20
📦 Dependencies
Compare Source 
Highlights
- Passing a percentage unit to the global abs()is deprecated since Dart Sass v1.65.0. It resulted in a deprecation warning when compiling Bootstrap with Dart Sass. This has been fixed internally by changing the values passed to thedivide()function. Thedivide()function has not been fixed itself so that we can keep supporting node-sass cross-compatibility. In v6, this won't be an issue as we plan to drop support for node-sass.
- Using multiple ids in a collapse target wasn't working anymore and has been fixed.
Color modes
- Increased color contrast of form range track background in light and dark modes.
- Fixed table state rendering for color modes with a focus on the striped table in dark mode to increase color contrast.
- Allow <mark>color customization for color modes.
Docs
🎨 CSS
- #38816: Use box-shadowCSS variables shadow utilities
- #38955: Fix radios looking like ellipse on responsive mode
- #38976: Use box-shadow CSS vars instead of Sass vars in assets and variables
- #39030: Fix dart-sass deprecation warning
- #39033: Color mode: fix table state rendering
- #39095: Make form range track background more contrasted
- #39119: New Sass var $btn-link-focus-shadow-rgbto allow customization
- #39141: New Sass variable to handle <mark>dark mode bg color
☕️ JavaScript
- #38989: Collapse: Fix multiple ids calls
- #39046: Dropdown: reuse variable
📖 Docs
- #38873: Discord reddit bootstrap
- #38970: docs: add BootstrapVueNext to docs
- #38977: Docs: Add missing form elements in focusable elements
- #38978: Docs: Fix popover template role error
- #38995: introduction: drop detailselement
- #39037: Further improve image compression with oxipng and the latest jpegoptim
- #39054: Docs: Remove incorrect mention of .left-and.right-utilities from migration guide
- #39060: Migration: add back v5.0.0 heading
- #39145: Docs: add warning callout to add a workaround when jsDelivr is not available
- #39177: Fix: make theme selector tick icon visible when active in examples layout
- #39179: download: Reword CDN paragraph
🛠 Examples
- #38994: examples: update 3rd-party packages
- #39086: Correct grammar error in examples/starter-template
🌎 Accessibility
- #38978: Docs: Fix popover template role error
- #39095: Make form range track background more contrasted
🧰 Misc
- #38983: Improve change-version script
- #38984: Convert build scripts to ESM
- #39021: CI: update permissions for calibreapp-image-actions.yml
📦 Dependencies
Compare Source 
Highlights
- Color modes:
- Increased color contrast for dark mode by replacing $gray-500with$gray-300for the body color
- Added our color mode switcher JavaScript to our examples ZIP download
 
- Components:
- Improved disabled styling for all .nav-links, providing.disabledand:disabledfor use with anchors and buttons
- Add support for HomeandEndkeys for navigating tabs by keyboard
- Added some basic styling to toggle buttons when no modifier class is present
- Fixed carousel colors in dark mode
 
- Forms:
- Fixed floating label disabled text color
 
- Utilities:
- .text-bg-*utilities now use CSS variables
 
- Sass:
- Add new $navbar-dark-icon-colorSass variable
- Removed duplicate $alertSass variables
- Added a new variable for $vr-border-widthto customize the vertical rule helper width
 
- Documentation:
- Added search to our homepage
- Improved responsive behavior on Dashboard example
- Improved dark mode rendering of Cheatsheet examples
 
🎨 CSS
- #38913: Floating labels: fix disabled with text inside
- #38772: .text-bg-*helpers now use theme CSS variables
- #38886: New Sass variable to change vertical rule width
- #38851: Fix Sass properties order for newer stylelint-config-recess-order
- #38815: Increase contrast in dark-mode (#38525)
- #38774: Generalize disabled nav links CSS rules
- #38673: Add $navbar-dark-icon-color
- #38674: Remove duplicate $alert-*-scaleSass vars
☕️ JavaScript
- #38498: Support HomeandEndkeys in tabs
📖 Docs
- #38958: Examples: improve spinner buttons accessibility
- #38947: Fix postcss plugin options
- #38885: Docs: Update float responsive examples
- #38946: Docs: remove v4 reference on homepage
- #38948: Fix some typos in Customize > Sass doc
- #38840: Docs: fix carousel carousel colors of carousel examples in dark mode
- #38604: Add dropdown alignment options to button group example
- #38894: Docs: add blank target and noopenerrel to footer external links
- #38902: Fix tooltip generated markup documentation
- #38883: Docs: Fix incorrect class name on migration guide
- #38708: add a base class style display for toggle buttons
- #38827: Docs: add missing aria-disabled='true'to disabled anchors
- #38844: Fix for text-reset example class name
- #38838: JS/SCSS shortcodes: Add new feature to remove nested calls inside.
- #38850: Add docs search to homepage
- #38872: Docs: Improve Text Alignment Example
- #38865: Fix custom-radio class name on migration guide
- #38786: Explicitly add missing opacity-0 helper class example for clarity.
- #38707: Update bottom border on dark navbar example
- #38726: Update flex utilities link in navs docs
- #38734: Minor fixes for Docs Versions page
- #38745: Fix stack examples
- #38751: Docs (tooltips): Fix "them" typo in markup section
- #38688: Fix missing word issue on nav-tabs page
- #38681: Docs: consistency between custom buttons, popovers and tooltips
- #38600: collate distribution interval
- #38632: docs(spinners): improve buttons examples accessibility
- #38583: Docs: add more details on accessibility tips
- #38554: Doc: fix 'Events' JS example
- #38592: docs(forms): switch to aria-describedby
- #38542: Use .d-noneinstead of inline styling
- #38616: Add 'Issues assignment' section to the Contributing Guidelines
- #38528: Adding a link to clearfix
- #38538: Update Sass docs to mention compiling and including
- #38623: Fix disabled element tooltip StackBlitz
🛠 Examples
- #38958: Examples: improve spinner buttons accessibility
- #38952: dashboard: fix offcanvas md display
- #38840: Docs: fix carousel carousel colors of carousel examples in dark mode
- #38905: Fix dark mode rendering of Cheatsheet examples
- #38711: Fix link colors in Sidebars example
🌎 Accessibility
- #38958: Examples: improve spinner buttons accessibility
- #38498: Support HomeandEndkeys in tabs
- #38827: Docs: add missing aria-disabled='true'to disabled anchors
- #38850: Add docs search to homepage
- #38774: Generalize disabled nav links CSS rules
- #38632: docs(spinners): improve buttons examples accessibility
- #38583: Docs: add more details on accessibility tips
- #38592: docs(forms): switch to aria-describedby
🧰 Misc
- #38747: Add color-modes.jstobootstrap-x.y.z-examples.zip
📦 Dependencies
Compare Source 
Compare Source 
Fixes
🎨 CSS
- #37377: Import root in bootstrap-utilities
- #37425: Fix deprecation warning with sass 1.56.0
- #37266: Carousel: Fix RTL translate()direction
☕️ JavaScript
- #37235: fix tooltip/popper disposal inconsistencies
Compare Source 
Highlights
- Accordion
- Use Sass variable for the accordion color instead of an invalid CSS variable
 
- Buttons
- Undo changes to .btn:hoverfrom v5.2.1. We now explicitly target.btn-checkstyles instead.
 
- Dropdowns
- Restore the ability for dropdowns to work without an explicit dataattribute (will be removed again in v6)
 
- Modals
- Improve modal event listeners
- Use <h1>for all.modal-titleinstances in our docs
 
- Tables
- Don't redefine $border-colorintable-variant()mixin
 
- Tabs
- Tabs no longer autofocus and cause pages to jump on tab.show()
- Fix .activeclass toggling of tabs within dropdowns
 
- Toasts
- Properly set toast z-indexon.toast-containeras opposed to individual.toasts that don't receive any other positioning
 
- Tooltips
- Fix tooltip selectors with titleattribute on dynamically created elements
 
🎨 CSS
- #37118: Set toast z-index variable in the correct spot
- #37165: Explicitly target .btn-checkand undo:hover
- #37182: Use Sass variable for accordion color
- #37239: Don't redefine $border-colorintable-variantmixin
☕️ JavaScript
- #36914: Fix tooltip selector usage
- #37128: Fix modal event listeners
- #37146: Drop tabs auto-focus
- #37151: Fix active class toggling of tabs within dropdown
- #37189: Enrich Tab Test for keyboard handler
- #37190: Dropdown: fix case with invalid markup
- #37200: Ensure Tab keyboard functionality after #37146 
📖 Docs
- #36899: Slightly improve image compression
- #37142: Add informative note for Tooltip/Popover selector option
- #37145: Docs: minor fix for Navbar > Offcanvas examples
- #37153: Fix typo in docs - Configure Vite section
- #37199: Replace Webpack and Vite PNGs by SVGs
- #37210: Use <h1>for allmodal-titleexamples/uses
- #37214: Docs: Change view in GitHublinks insidemain
🌎 Accessibility
- #37200: Ensure Tab keyboard functionality after #37146 
- #37210: Use <h1>for allmodal-titleexamples/uses
🏭 Tests
- #36915: Use ES6 on visual tests
- #37189: Enrich Tab Test for keyboard handler
🧰 Misc
- #35079: Add PR template
- #36421: NuGet: Use license expression
- #37186: Add eslint-plugin-html to lint JS in HTML files
📦 Dependencies
Compare Source 
🚀 Highlights
- Accordion
- Update colorvalue to use the$accordion-button-colorSass variable instead of our color contrast function
 
- Buttons
- Added a transparentdefault hover border color CSS variable for buttons to fix a visual regression
- .btn-linkno longer has a gradient when- $enable-gradientsis set to- true
 
- Forms
- Input groups have updated z-indexvalues to ensure proper rendering of validated form fields
- Floating labels now reset their text-alignto ensure consistent styling
 
- List Groups
- Horizontal list groups with only one child now render the correct border-radius
- Modified the list-group-itemselectors to better support nested imports of Bootstrap's CSS
 
- Modals
- Fixed modal event listeners during dismiss click, allowing you to once again click scrollbars without dismissing the modal
 
- Pagination
- Fixed incorrect border-radiusvalues inside pagination components
 
- Scrollspy
- Scrollspy threshold option is now configurable
 
- Tooltips
- Reverted some tooltip plugin updates to prevent issues with selector, dynamic content, and disposed tooltips usingtitle
 
🚀 Features
- #36750: ScrollSpy: make the threshold option configurable
🎨 CSS
- #36507: v5/docs: reintroduce outlinefor docs code samples, buttons when:not(:focus-visible)
- #36593: flush variant of accordion border radius
- #36663: fix #36662 List-group-item margin-top is offset when importing sass in a nested class
- #36694: Docs: add grid-row-columns variable
- #36791: Remove a unused sass parameter from banner mixin
- #36828: Fix pagination page items border radius
- #36849: Define correctly $popover-header-color
- #36873: Fix floating labels under .text-center
- #36874: Floating labels in input group: Border fix
- #36921: Accordion color should use $accordion-color
- #36986: bugfix undefined border color variable for btn #36938 
- #37017: List group: Fix horizontal when only one child
- #37021: Scss: Adding missing z-indexCSS variables.
- #37026: Rework button focus/active styling, with extra changes for checks/radios
- #37027: Search modal: Set cursor on auto
- #37034: More consistency for CSS/Sass vars doc for components with dark variants
- #37059: Fix input group z-index focus + validation
- #37078: Remove gradient from .btn-link
- #37079: Add workarounds for postcss values parser error
- #37080: btn-group draws first input margin #36794 
- #37093: Fix accordion button color
☕️ JavaScript
- #36750: ScrollSpy: make the threshold option configurable
- #36751: Re-set tooltip title on disposal
- #36863: Fix modal event-listeners during dismiss click
- #37011: Multiple dropdowns: Fix when inside same tag
- #37019: Docs: Fix js options to what is really inside js
- #37072: Docs: Put methods in table
- #37086: Fix tooltip manual toggling
📖 Docs
- #36493: Docs: Replace wrong mobile OS Windows with iOS
- #36587: Document how to extract CSS, SVG for strict CSP
- #36694: Docs: add grid-row-columns variable
- #36771: Fix typos after #36762 
- #36804: Simplify social images and add ability to set per-page images
- #36812: Fix broken url
- #36819: Rename scrollspy to toast in toasts.md
- #36824: Move DocSearch out of offcanvas to always show it on mobile
- #36825: Remove Slack from site and repo docs
- #36827: Redirect users to different templates of issues rather than an empty one
- #36829: Docs: correct heading levels in features example
- #36836: Docs: use added-in shortcode in Offcanvas
- #36838: Docs: Missing added-in shortcode
- #36839: Docs: Fix markdown link error
- #36850: Add navbar image alt text
- #36867: Docs: expand popover custom container explanation
- #36871: Fix docs typo of .form-checkbox->.form-check
- #36877: Add default select example in cheatsheet
- #37019: Docs: Fix js options to what is really inside js
- #37027: Search modal: Set cursor on auto
- #37034: More consistency for CSS/Sass vars doc for components with dark variants
- #37047: Docs: Minor fixes in tables.
- #37048: Docs: improve cards image overlays markup
- #37056: Docs: Manage the dark offcanvas slightly differently
- #37064: Fix padding on starter template
- #37067: Make docs clearer by dropping precompiled for compiled
- #37070: Improve language around vertical grid gutters
- #37072: Docs: Put methods in table
🛠 Examples
- #36660: Added new example in examples/featurespage.
- #36829: Docs: correct heading levels in features example
- #36877: Add default select example in cheatsheet
- #37064: Fix padding on starter template
🌎 Accessibility
- #36507: v5/docs: reintroduce outlinefor docs code samples, buttons when:not(:focus-visible)
- #36829: Docs: correct heading levels in features example
- #37026: Rework button focus/active styling, with extra changes for checks/radios
📦 Dependencies
Compare Source 
🚀 Highlights
- #36168: Manually set hover and active backgrounds and borders for dark and light buttons
- #36327: Truncate text to prevent multiline floating label
- #36382: Rewrite Webpack guide
- #36411: Rewrite Parcel guide
- #36412: Docs: Add a Vite Getting Started guide
- #36500: Generate local CSS variables on utilities when using state option
- #36528: Scrollspy: enable smooth-scrollbehavior
🚀 Features
- #36352: Fix StackBlitz examples by embedding snippets.js when needed
- #36528: Scrollspy: enable smooth-scrollbehavior
- #36759: Support input groups in floating forms
🎨 CSS
- #36156: Update .form-control-colorsizing and styles
- #36168: Manually set hover and active backgrounds and borders for dark and light buttons
- #36178: Add a banner mixin, helping future releases and maintenance
- #36327: Truncate text to prevent multiline floating label
- #36353: Fix offcanvas not showing with .showing
- #36366: add back focus box shadow to btn-link
- #36406: CSS: few proposals
- #36423: Stylelint: Disable custom-property-empty-line-before
- #36446: Update Sass for computing .table-group-dividerborder
- #36447: Fix .dropdown-itemborder-radiuswhen$dropdown-padding-yis0
- #36461: Fix alert border radius
- #36476: Docs: fix Reboot Horizontal rules using border utilities
- #36477: Docs: remove unused _algolia.scss
- #36499: Don't style readonlyinputs asdisabled
- #36500: Generate local CSS variables on utilities when using state option
- #36509: Remove --bs-headings-colorCSS variable due to backward compatibility issues
- #36535: Fix 'Remove from map' Sass description
- #36608: dashboard example: minor fix
- #36627: Fix search modal z-index to be on top of all docs showcased components
- #36646: Fix tooltip/badge border radius when rounded disabled
- #36680: Revert db61cf3for$text-muteddefault value
- #36689: Add missing CSS vars for .navbar-nav
- #36704: Fix missing --bs-btn-disabled-border-colorinbutton-outline-variantmixin
- #36711: Add $display-font-familyand$display-font-style
- #36740: Fixing pagination compile issue
- #36747: Fix active/focused button link text color
- #36759: Support input groups in floating forms
☕️ JavaScript
- #35679: Force tooltip and popover to recreate content every time it opens
- #36171: Assorted Event handler patches
- #36386: Fix interoperability issue regarding Event properties
- #36398: JS: tests fixes & standardization of spies usage
- #36401: Change Modal dismiss handler, listening to key down, instead of click
- #36440: Re-ordering js default objects
- #36449: Fix StackBlitz Popovers and Tooltips examples
- #36528: Scrollspy: enable smooth-scrollbehavior
- #36561: Fix possible bug on event handler
- #36588: Handle non-empty whitespace textContent in Tooltip trigger
- #36622: Remove .showfrom panels dependent-less on the existence of.fadeclass
- #36668: Fix on #35679 
- #36717: Offcanvas: activate focustrap when backdrop is enabled
- #36758: Docs: Fix typos in snippets.js
- #36772: Fix event handler test
📖 Docs
- #36345: docs: add the version in npm/yarn commands
- #36346: Docs: improve image compression
- #36352: Fix StackBlitz examples by embedding snippets.js when needed
- #36362: Update search box styling and position
- #36363: Add some details on "javascript" page
- #36367: Docs: Correct rounded sizes number
- #36376: Fix missing Swag Store URL
- #36382: Rewrite Webpack guide
- #36395: Docs: quick fixes for HTML
- #36406: CSS: few proposals
- #36410: Update introduction.md
- #36411: Rewrite Parcel guide
- #36412: Docs: Add a Vite Getting Started guide
- #36414: Add docs info for using JS w/ ESM shim
- #36417: Docs: Remove .is-invalidfrom textarea validation example
- #36425: CSS: doc fixes
- #36444: Update import order for utilities API docs
- #36449: Fix StackBlitz Popovers and Tooltips examples
- #36450: Docs: Use example shortcode for all Button groups
- #36476: Docs: fix Reboot Horizontal rules using border utilities
- #36477: Docs: remove unused _algolia.scss
- #36487: Remove confusing unnecessary id/aria-labelledby for dropdown menus
- #36488: Docs: fix some ARIA Authoring Practices Guides broken links
- #36489: Docs: Update some WCAG links, expand sass.md contrast explanation
- #36495: Improve accessible name of version dropdown in docs navbar
- #36503: [docs] Document BootstrapVue being outdated
- #36510: Add example of dark navbar and offcanvas to docs
- #36516: Add .active navbar breaking change to 5.0 docs
- #36535: Fix 'Remove from map' Sass description
- #36545: Carousel: Remove redundant reference to interval=falsefrom docs & tests
- #36553: Make table responsive on Grid page
- #36613: Fix popover live demo to use data-bs-titleinstead oftitle
- #36625: Add some details for non visible scrollspy elements
- #36627: Fix search modal z-index to be on top of all docs showcased components
- #36630: Docs: update clipboard.js to v2.0.11
- #36637: Fix StackBlitz examples needing docs CSS
- #36644: Added examples for Radios in List Group
- #36650: update Lighthouse URL
- #36658: Fix a typo in the documentation masthead
- #36669: Docs: alphabetical reorder of some events/methods in tables
- #36672: Docs: fix some ScrollSpy HTML copyable codes
- #36674: Docs: add indeterminate disabled checkbox example
- #36679: Remove dead link from translations
- #36696: add type="button"to Bootstrap versions dropdown
- #36706: Docs: Add 'Icons' link in footer
- #36712: Docs: fix description on how to alter display values
- #36717: Offcanvas: activate focustrap when backdrop is enabled
- #36732: Add accNames to all progress bar examples
- #36734: Docs: Capitalize Unicode
- #36741: Docs: same text for disabled ranges and disabled form controls
- #36757: Fix indentation in code sample
- #36760: Add links to Webpack, Parcel, and Vite guides on homepage
- #36762: Fix various small typos in documentation
- #36763: Fix typos in code
🛠 Examples
- #36608: dashboard example: minor fix
- #36732: Add accNames to all progress bar examples
🌎 Accessibility
- #36487: Remove confusing unnecessary id/aria-labelledby for dropdown menus
- #36488: Docs: fix some ARIA Authoring Practices Guides broken links
- #36588: Handle non-empty whitespace textContent in Tooltip trigger
- #36696: add type="button"to Bootstrap versions dropdown
- #36717: Offcanvas: activate focustrap when backdrop is enabled
- #36732: Add accNames to all progress bar examples
🏭 Tests
- #36530: Fix typo in dropdown unit test
- #36667: Minor fix to use self-closing input HTML tag
- #36742: Standardization of spyOnusage
- #36772: Fix event handler test
🧰 Misc
- #36548: Update Code of Conduct with Contributor Covenant 2.1
- #36624: Use 'needs-example' label to trigger live demo bot message
- #36700: Replace JS Bin refs by CodePen or StackBlitz references
📦 Dependencies
Compare Source 
Fixes
🎨 CSS
- #35143: Revert "Add align-self: centerto buttons for improved rendering in flex containers"
Compare Source 
Highlights
- Temporarily patched a postcss-values-parser issue by rearranging our calc()functions that use negative numbers. This should restore the ability to import and compile Bootstrap's Sass increate-react-app.
- Added border-radiussizes to small and large.form-selects
- Added align-self: centerto buttons for improved rendering in flex containers
- Fixed Collapse regression that prevented toggling between sibling children
- Updated JS Sanitizer to add smsin theSAFE_URL_PATTERN
- Improved docs around .img-fluid
- Added role="switch"to our form switches in our docs
- Implemented GitHub Issue forms to replace our previous issue templates.
Changes
🎨 CSS
- #34799: fix custom property values of row overrides individual cell
- #34834: Add align-self: centerto buttons for improved rendering in flex containers
- #34853: Add border-radiussizes to small and large.form-selects
- #34861: Separator for table direct children
- #35017: Use Sass variable instead of RGB components
- #35033: Add workaround for dart sass compile error
☕️ JavaScript
- #34951: Fix Collapse regression of handling toggling between sibling chilldren
- #34980: Minor refactoring
- #35074: sanitizer: add smsin theSAFE_URL_PATTERN
📖 Docs
- #34824: docs: Add role="switch"to switches
- #34918: docs: Update RFS version & move "v" prefix to config.yml
- #34920: Fix Backdroped typo
- #34921: Fix JavaScript typo
- #34922: fix predefined typo
- #34923: fix utilities typo
- #34926: Improve description of .img-fluidin docs
- #34935: Non-blocking typo fix
- #34936: replace dummy text with English for Text truncation page
- #34946: Changes some latin/dummy text to English
- #35013: Add offcanvas to the components requiring JavaScript
- #35111: Fix capitalization after period in contents.md
🛠 Examples
- #35022: examples: Add role="switch"to switches
🧰 Misc
- #34626: Implement issue forms
- #34940: Add cSpell custom dictionary and docs-spellcheck script
- #35070: rollup: specify generatedCode: 'es2015'
- #35086: README.md: fix capitalization after period
📦 Dependencies
Compare Source 
Highlights
🎨 CSS
- #34679: Fix font size variable name
- #34699: Add check to rgba-css-varfunction for body or bg
- #34773: Include root.scss in all dist builds
- #34779: Fix $dropdown-link-hover-colorvariable color value in _variable.scss file
☕️ JavaScript
- #34621: carousel: move common checks to a function
- #34701: Fix modal when is triggered by bs-toggle, to hide other open instances
- #34835: Collapse on toggle, should not hide descendant tabpanels
- #34842: Fix tooltip data-bs-original-titleissue
📖 Docs
- #32781: docs: shortcodes tweaks and consistency changes
- #34686: docs: Fix placeholders typo
- #34752: Fix typo in placeholder docs
- #34769: Enhance Alerts > Live Example section
- #34781: docs: fix typos in approach and placeholders
- #34787: Progress page: remove toggle animation button
- #34840: clarify importing all vs specific plugins
- #34842: Fix tooltip data-bs-original-titleissue
- #34877: docs: add $enable-smooth-scrollto Sass options page
- #34886: Disabled link cleanup
- #34892: Fix a11y issues in .hstackexample and placeholder 'How it works' example
- #34910: Docs: Add Callout to Stacks Helper page about limited flexbox gap support
- #34913: docs: make use of the .Site.Params.docs_versionvariable
- #34914: Typo/US locale fixes
🛠 Examples
- #34766: dashboard-rtl: use the same scripts as the dashboard example
🌎 Accessibility
🏭 Tests
- #34077: Add GitHub SHA in BrowserStack build ID.
- #34912: BrowserStack: add Firefox 60 and Chrome 60
📦 Dependencies
Compare Source 
Highlights
- Added experimental, opt-in CSS Grid support
- Added support for responsive offcanvas components in navbars
- Added new placeholders component for skeleton loading screens
- Added support for horizontal collapsing in the collapse component
- Added new stack an
 
Configuration
📅 Schedule: Branch creation - "before 4am" (UTC), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.
  
 
Uh oh!
There was an error while loading. Please reload this page.
This PR contains the following updates:
^4.6.1->^5.3.3Release Notes
twbs/bootstrap (bootstrap)
v5.3.3Compare Source
Highlights
variables-dark.scsswhen building Bootstrap with Sass. Now,_variables.scsswill automatically import_variables-dark.scss. If you were already importing_variables-dark.scssmanually, you should keep doing it as it won't break anything and will be the way to go in v6.Color modes
.text-bg-*text utilities to be certain that the text is always readable (especially when the customized colors are different in light and dark modes).color-modes.jsscript to handle the case where the OS is set to light mode and the auto color mode is used on the website. If you copied the script from our docs, you should apply this change to your own script.color-scheme()only acceptlightanddarkvalues as parameters.Miscellaneous
<dl>,<dt>and<dd>in the sanitizer.🎨 CSS
--bs-accordion-btn-focus-border-colorand deprecate$accordion-button-focus-border-color☕️ JavaScript
color-mode.jsdl,dtandddin sanitizer📖 Docs
.text-bg-{color}for all badgesgetOrCreateInstance()doc example.table-lightfrom table foot exampledispose()to Offcanvas methodsshift-color()usage example in sass customization page.card-img-*description.theme-iconclass🛠 Examples
🏭 Tests
🧰 Misc
📦 Dependencies
v5.3.2Compare Source
Highlights
abs()is deprecated since Dart Sass v1.65.0. It resulted in a deprecation warning when compiling Bootstrap with Dart Sass. This has been fixed internally by changing the values passed to thedivide()function. Thedivide()function has not been fixed itself so that we can keep supporting node-sass cross-compatibility. In v6, this won't be an issue as we plan to drop support for node-sass.ids in a collapse target wasn't working anymore and has been fixed.Color modes
<mark>color customization for color modes.Docs
🎨 CSS
box-shadowCSS variables shadow utilities$btn-link-focus-shadow-rgbto allow customization<mark>dark mode bg color☕️ JavaScript
ids calls📖 Docs
detailselement.left-and.right-utilities from migration guide🛠 Examples
🌎 Accessibility
🧰 Misc
📦 Dependencies
v5.3.1Compare Source
Highlights
$gray-500with$gray-300for the body color.nav-links, providing.disabledand:disabledfor use with anchors and buttonsHomeandEndkeys for navigating tabs by keyboard.text-bg-*utilities now use CSS variables$navbar-dark-icon-colorSass variable$alertSass variables$vr-border-widthto customize the vertical rule helper width🎨 CSS
.text-bg-*helpers now use theme CSS variables$navbar-dark-icon-color$alert-*-scaleSass vars☕️ JavaScript
HomeandEndkeys in tabs📖 Docs
noopenerrel to footer external linksaria-disabled='true'to disabled anchorsaria-describedby.d-noneinstead of inline stylingclearfix🛠 Examples
🌎 Accessibility
HomeandEndkeys in tabsaria-disabled='true'to disabled anchors🧰 Misc
color-modes.jstobootstrap-x.y.z-examples.zip📦 Dependencies
v5.3.0Compare Source
v5.2.3Compare Source
Fixes
🎨 CSS
translate()direction☕️ JavaScript
v5.2.2Compare Source
Highlights
.btn:hoverfrom v5.2.1. We now explicitly target.btn-checkstyles instead.dataattribute (will be removed again in v6)<h1>for all.modal-titleinstances in our docs$border-colorintable-variant()mixintab.show().activeclass toggling of tabs within dropdownsz-indexon.toast-containeras opposed to individual.toasts that don't receive any other positioningtitleattribute on dynamically created elements🎨 CSS
.btn-checkand undo:hover$border-colorintable-variantmixin☕️ JavaScript
📖 Docs
<h1>for allmodal-titleexamples/usesview in GitHublinks insidemain🌎 Accessibility
<h1>for allmodal-titleexamples/uses🏭 Tests
🧰 Misc
📦 Dependencies
v5.2.1Compare Source
🚀 Highlights
colorvalue to use the$accordion-button-colorSass variable instead of our color contrast functiontransparentdefault hover border color CSS variable for buttons to fix a visual regression.btn-linkno longer has a gradient when$enable-gradientsis set totruez-indexvalues to ensure proper rendering of validated form fieldstext-alignto ensure consistent stylingborder-radiuslist-group-itemselectors to better support nested imports of Bootstrap's CSSborder-radiusvalues inside pagination componentsselector, dynamic content, and disposed tooltips usingtitle🚀 Features
🎨 CSS
outlinefor docs code samples, buttons when:not(:focus-visible)$popover-header-color.text-centerz-indexCSS variables..btn-link☕️ JavaScript
📖 Docs
.form-checkbox->.form-check🛠 Examples
examples/featurespage.🌎 Accessibility
outlinefor docs code samples, buttons when:not(:focus-visible)📦 Dependencies
v5.2.0Compare Source
🚀 Highlights
smooth-scrollbehavior🚀 Features
smooth-scrollbehavior🎨 CSS
.form-control-colorsizing and styles.showingbtn-linkcustom-property-empty-line-before.table-group-dividerborder.dropdown-itemborder-radiuswhen$dropdown-padding-yis0readonlyinputs asdisabled--bs-headings-colorCSS variable due to backward compatibility issuesdb61cf3for$text-muteddefault value.navbar-nav--bs-btn-disabled-border-colorinbutton-outline-variantmixin$display-font-familyand$display-font-style☕️ JavaScript
smooth-scrollbehavior.showfrom panels dependent-less on the existence of.fadeclass📖 Docs
.is-invalidfrom textarea validation exampleinterval=falsefrom docs & testsdata-bs-titleinstead oftitletype="button"to Bootstrap versions dropdown🛠 Examples
🌎 Accessibility
type="button"to Bootstrap versions dropdown🏭 Tests
spyOnusage🧰 Misc
📦 Dependencies
v5.1.3Compare Source
Fixes
🎨 CSS
align-self: centerto buttons for improved rendering in flex containers"v5.1.2Compare Source
Highlights
calc()functions that use negative numbers. This should restore the ability to import and compile Bootstrap's Sass increate-react-app.border-radiussizes to small and large.form-selectsalign-self: centerto buttons for improved rendering in flex containerssmsin theSAFE_URL_PATTERN.img-fluidrole="switch"to our form switches in our docsChanges
🎨 CSS
align-self: centerto buttons for improved rendering in flex containersborder-radiussizes to small and large.form-selects☕️ JavaScript
smsin theSAFE_URL_PATTERN📖 Docs
role="switch"to switches.img-fluidin docscontents.md🛠 Examples
role="switch"to switches🧰 Misc
generatedCode: 'es2015'📦 Dependencies
v5.1.1Compare Source
Highlights
🎨 CSS
rgba-css-varfunction for body or bg$dropdown-link-hover-colorvariable color value in _variable.scss file☕️ JavaScript
bs-toggle, to hide other open instancesdata-bs-original-titleissue📖 Docs
data-bs-original-titleissue$enable-smooth-scrollto Sass options page.hstackexample and placeholder 'How it works' example.Site.Params.docs_versionvariable🛠 Examples
🌎 Accessibility
🏭 Tests
📦 Dependencies
v5.1.0Compare Source
Highlights
Configuration
📅 Schedule: Branch creation - "before 4am" (UTC), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.