Releases: twbs/bootstrap
Releases · twbs/bootstrap
v5.3.3
Highlights
- Fixed a breaking change introduced with color modes where it was required to manually import
variables-dark.scss
when building Bootstrap with Sass. Now,_variables.scss
will automatically import_variables-dark.scss
. If you were already importing_variables-dark.scss
manually, 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.js
script 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 acceptlight
anddark
values 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-color
and 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
,dt
anddd
in 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-light
from 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-icon
class - #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
📦 Dependencies
- Updated numerous devDependencies
v5.3.2
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
id
s 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
- Added alternative CDNs section in Getting started -> Download.
- Added Discord and Bootstrap subreddit links in README and Getting started -> Introduction:
- Discord maintained by the community
- Bootstrap subreddit
🎨 CSS
- #38816: Use
box-shadow
CSS 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-rgb
to allow customization - #39141: New Sass variable to handle
<mark>
dark mode bg color
☕️ JavaScript
📖 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
details
element - #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
- Updated numerous devDependencies
v5.3.1
Highlights
- Color modes:
- Increased color contrast for dark mode by replacing
$gray-500
with$gray-300
for the body color - Added our color mode switcher JavaScript to our examples ZIP download
- Increased color contrast for dark mode by replacing
- Components:
- Improved disabled styling for all
.nav-link
s, providing.disabled
and:disabled
for use with anchors and buttons - Add support for
Home
andEnd
keys for navigating tabs by keyboard - Added some basic styling to toggle buttons when no modifier class is present
- Fixed carousel colors in dark mode
- Improved disabled styling for all
- Forms:
- Fixed floating label disabled text color
- Utilities:
.text-bg-*
utilities now use CSS variables
- Sass:
- Add new
$navbar-dark-icon-color
Sass variable - Removed duplicate
$alert
Sass variables - Added a new variable for
$vr-border-width
to customize the vertical rule helper width
- Add new
- 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-*-scale
Sass vars
☕️ JavaScript
- #38498: Support
Home
andEnd
keys 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
noopener
rel 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-none
instead 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
Home
andEnd
keys 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.js
tobootstrap-x.y.z-examples.zip
📦 Dependencies
- Updated numerous devDependencies
v5.3.0
v5.3.0-alpha3
- Fixed wrong interpolated variables with node-sass/Hugo.
- Added a check for interpolated variables to catch compilation errors with Node Sass when using Sass variables in
calc()
functions. - Started using
--bs-border-radius
variables across more components. - Added
.d-inline-grid
utility class. - Fixed
.tooltip-inner
placement when using variations infallbackPlacements
. - Fix selectors for dark mode carousel overrides when compiling with
$color-mode-type: media-query
. - Updated the styling of floating labels when "floated" to include a
background-color
to help with multiple lines of text intextarea
s. This also fixes the colors when form elements are disabled in floating forms. - Updated RFS to v10.0.0.
Full Changelog: v5.3.0-alpha2...v5.3.0-alpha3
v5.3.0-alpha2
🚀 Features
- #33126: Add
.nav-underline
modifier class - #37762: Add new link utilities, icon link helper, and update colored link helpers
- #38199: Docs: Better scroll
🎨 CSS
- #33125: Focus ring helper and utilities
- #33126: Add
.nav-underline
modifier class - #35857: Add dark mode support
- #36029: Add SCSS testing of the utilities API
- #36143: Fix Android Chrome input date dimensions
- #36831: Rework progress bar markup and styles
- #37526: Fix var
--bs-body-font-family
. Keep quotes in the font stack. - #37533: Visually-hidden: Remove
position: absolute
for captions - #37617: CSS:
$prefix
to the whole assets - #37621: Fix
--bs-form-check-bg
definition - #37644: list-group-border-width variables
- #37687: Fix Sass compilation when
$color-mode-type
is set tomedia-query
- #37720: Improve consistency of navbar icon declaration
- #37731: Update color contrast formula with new constant from WCAG 2.2
- #37734: Add
color-scheme
to dark root selector - #37759: Darken some text emphasis and syntax colors
- #37760: Fix selector for dark mode navbar toggler SVG change
- #37761: Docs: enhance callouts links on dark mode
- #37762: Add new link utilities, icon link helper, and update colored link helpers
- #37777: Fix cards color for contextual color mode
- #37781: Fix code color in callouts
- #37784: Change nav focus to focus-visible
- #37785: Update code syntax colors to use Bootstrap colors
- #37788: Change stylelint
property-blacklist
toproperty-disallowed-list
- #37800: Fix heading colors in dark mode
- #37804: CSS: rename some variables to be consistent
- #37809: Fix duplicate
--bs-emphasis-color
set value - #37816: Remove unused comment in
scss/_maps.scss
- #37817: Docs: remove some CSS from
.highlight-toolbar
def - #37820: Remove duplicate definition of
--bs-highlight-bg
inscss/_root.scss
- #37822: Switch from none keyword value to a fake shadow for btn-link
- #37823: Docs: fix
.btn-clipboard
and.btn-edit
link hover color - #37824: Drop unused
.bg-body-emphasis
- #37832: Keep shadows black regardless of color mode
- #37833: Update colored links, add new
.link-body-emphasis
helper - #37835: Remove obsolete comment from
_variables.scss
- #37843: Add theme maps specific to dark mode
- #37844: Reduce bootstrap-grid.css content
- #37857: Drop duplicate
--bs-body-bg-rgb
declaration + reorder props - #37868: Remove outdated comment from
$input-border-color
variable - #37888: List group: Better use of CSS var
- #37893: Fix
.form-control
in dark mode - #37905: CSS: Proposal to add a border utility
- #37907: CSS: Proposal to rename the CSS and Sass variables for
.*-text-emphasis
- #37936: Remove color picker borders on Chromium based browsers
- #37953: Theme color improvements
- #37955: Rewrite selector to help Parcel compiler
- #37956: Remove
list-style
reset on.carousel-indicators
- #37998: Use color mode adaptive color for disabled dropdown menu items
- #37999: Avoid inheritance issues on border-width utilities
- #38003: fix alert-color in v5.3.0-alpha2
- #38008: Fix list group colors by using
*-text-emphasis
CSS vars in Sass loop - #38037: Fix
$grid-breakpoints
SCSS unit tests init - #38038: Remove comments from
scss/_nav.scss
- #38044: Update form validation styles to use new CSS variables for
color
andborder-color
- #38059: Remove
-moz-padding-start
from.form-select
- #38060: Drop duplicate
$btn-close-focus-shadow
definition - #38083: Drop duplicate
$nav-link-disabled-color
declaration - #38086: Fix shadow of .btn-link
- #38088: Fix navbar-nav link styling
- #38095: Drop unused
--bs-focus-ring-box-shadow
and add documentation for--bs-focus-ring-{x|y|blur}
- #38104: Remove useless comment from
scss/_utilities.scss
- #38115: Fix button visibility issue on dark theme
- #38123: Fix dropdown toggle visible focus in headers example
- #38144: Examples: color mode enhancement
- #38176: Fix missing modifications when
--bs-{color}-text
was changed to--bs-{color}-text-emphasis
- #38181: Remove comments from scss/_utilities.scss
- #38201: Sass: remove useless
import
insidebootstrap-grid
- #38209: fix data-bs-theme="dark" on component carousel itself
- #38236: Docs: use core mixins in a couple of places
☕️ JavaScript
- #37590: fix live toast demo
- #37836: Remove autofocus on theme switch when page is loaded
- #38025: unify
offcanvas
keydown
event logic withmodal
- #38034: Minor fix to avoid creating void elements in tooltip test file
- #38071: Bump Chart.js from 2.9.4 to 4.2.1 in dashboard examples
- #38223: Fix wrong generation of
aria-labelledby
in tab navigation - #38233: Remove empty script tag in js/tests/visual/input.html
- #38294: Remove version comment from JavaScript src files
- #38302: Remove version from index.{esm,umd}.js too
📖 Docs
- #33428: Use scrollspy on docs pages
- #34647: Improve readability in docs flex page
- #36831: Rework progress bar markup and styles
- #37275: Docs: add explanation of the base
.btn
class - #37354: Docs: rewrite/reorganise carousel docs page
- #37400: Docs: change some title containing '&' to bypass Algolia issue
- #37535: Docs: Fix Thirteenth typo on Navbars example
- #37538: Docs: Add black text/background examples
- #37553: Docs: fix "Usage -> Enable dark mode" code example
- #37562: Docs: display examples based on the docs current color mode
- #37568: Remove title from
check2
SVG icon - #37570: code-examples.js: switch to
firstElementChild
- #37590: fix live toast demo
- #37608: Drop logo on homepage on mobile
- #37615: Add new team member to the Teams page
- #37616: Accessibility: Minor fixes
- #37617: CSS:
$prefix
to the whole assets - #37625: Few miscellaneous docs fixes
- #37628: Rewrite some callouts to remove most headings and reduce their content
- #37658: docs: move color-mode script
- #37670: Docs: Fix typo in guide
- #37671: Docs: replace
twbs/bootstrap-npm-starter
bytwbs/examples/tree/main/icons-font
- #37676: Docs: fix typo for Sass vars references in Customize > Color modes > Building with Sass
- #37694: Docs: fix overflow:auto horizontal scrollbars covering last line of code blocks
- #37698: Remove some unused SVGs in Dropdowns example
- #37717: docs: improve social image partial
- #37738: Docs: handle light/dark mode in Algolia search modal
- #37740: Update navbar color-schemes to v5.3
- #37741: Reduce size of guide dev server images
- #37742: Fix CSS variables mentioned in our docs
- #37757: Docs: remove
.btn-*-dark
from Button group docs to avoid issues in dark mode - #37763: Include
twbs/examples
repo examples in the Examples page - #37766: Docs: Remove unnecessary
id
/aria-labelledby
from accordion examples - #37772: Docs: enhance Focus ring example section desc
- #37779: Docs: remove remnants of Twitter / bump dates
- #37780: Docs: Make theme switcher accessible
- #37781: Fix code color in callouts
- #37782: Docs: add CSS variables section in close button section
- #37796: Add webpack build to webpack guide
- #37798: Docs: fix accordion flush description
- #37802: Docs: fix headings color in light/dark mode
- #37803: Docs: Small enhancements
- #37811: Docs: enhance colors description table
- #37817: Docs: remove some CSS from
.highlight-toolbar
def - #37823: Docs: fix
.btn-clipboard
and.btn-edit
link hover color - #37829: Docs: missing deprecated callout for
list-group-item-variant()
mixin - #37836: Remove autofocus on theme switch when page is loaded
- #37839: Docs: add
.fw-medium
utility class example - #37848: Docs: fix typo in migration guide
- #37855: docs: updates
.text-*-left
changes - #37859: Docs: fix broken links in Color modes page
- #37861: Mention deprecated classes for color mode on offcanvas
- #37862: Migration guide changes for v5.3.0-alpha2
- #37863: Docs: update progress markup in Color modes page
- #37869: Docs: changed
popover
totooltip
- #37871: Docs: Move form-text paragraph to Form control page
- #37890: Docs: Deprecate the Sass var and remove any occurence of the
.text-muted
- #37894: Add docs callout for utilities that don't respond to color modes
- #37895: Include variables-dark in the import stacks, plus a customize overview fix
- #37896: Small color mode docs CSS fixes
- #37897: Sass docs updates
- #37898: Docs: Doc Scrollspy correction
- #37899: Docs: Harmonize the flex doc
- #37900: Docs: Enhancement proposal
- #37918: fix typo in gutters doc
- #37921: Docs: add overflow and text color info to progress bar page
- #37923: Docs: tweak icon link and callouts
- #37926: Docs: add scroll-margin-top for keyboard navigation
- #37965: Attempt to fix focus ring being cut off in table of contents
- #37994: Docs: remove redundant space in forms/validation.md
- #38004: Remove unused partials and add some way to automatically detect it
- #38006: Docs: Use ESM Popper CDN reference in 'Using Bootstrap as a module'
- #38014: Docs: Progress fix + proposal
- #38032: Remove
debug
references from DocSearch v2 - #38040: Docs: uniformize disabled nav links for underline nav
- #38057: More updates to migration guide
- #38074: Fix console error in examples pages due to no theme switcher
- #38087: Docs: Drop unused
.focused
style - #38095: Drop unused
--bs-focus-ring-box-shadow
and add documentation for--bs-focus-ring-{x|y|blur}
- #38103: Docs: drop unused icons
- #38112: Fix code indentation in homepage JavaScript plugins section
- #38123: Fix dropdown toggle visible focus in headers example
- #38130: Icon link: envariable + enhance the documentation
- #38131: Utilities: Add one value for link-underline-opacity
- #38151: Docs: replace 'popover' by 'tooltip' in tooltip's page's options section
- #38152: Docs: rollback some modification about
.text-muted
deprecation messages - #38153: Docs: `.text-body-secon...
v5.3.0-alpha1
🚀 Highlights
- #35566: Properly escape IDs in
getSelector()
to handle weird IDs (#35565) - #35857: Add dark mode support
- #36854: Use explicit imports in our JavaScript source files
🚀 Features
- #36540: Add new
border-radius
utilities - #36781: add
font-weight-medium
(500) /fw-medium
- #37317: Add
z-index
utilities,.z-*
🎨 CSS
- #36095: Added CSS variables for breakpoints
- #36456: Add color CSS variables for
.alert-link
- #36457: Add color CSS variables for
.btn-close
- #36511: Add parameters to caret-related mixins
- #36540: Add new
border-radius
utilities - #36781: add
font-weight-medium
(500) /fw-medium
- #36815: Add new CSS variables for Offcanvas
- #36831: Rework progress bar markup and styles
- #36848: Add utilities for overflow and object fit
- #36979: Add support for customizing a card title color
- #37125: Floating labels: Add an artificial background to label
- #37252: Add
$enable-important-utilities
condition in colored links - #37257: Remove duplicate CSS variable
- #37299: Fix disabled floating labels and add some examples of it in the docs
- #37317: Add
z-index
utilities,.z-*
- #37344: Use
--bs-border-width
for some components - #37350: Prevent extraneous whitespace around date time inputs in WebKit
- #37356: fix negative
border-width
on inputgroup and buttongroup - #37408: Fix disabled floating labels color
- #37413: Grid Gap Updates
- #37526: Fix var
--bs-body-font-family
; keep quotes in the font stack - #37617: CSS:
$prefix
to the whole assets - #37621: Fix
--bs-form-check-bg
definition - #37644:
list-group-border-width
variables - #37687: Fix Sass compilation when
$color-mode-type
is set tomedia-query
☕️ JavaScript
- #35566: Properly escape IDs in getSelector() to handle weird IDs
- #36027: Move
getElementFromSelector
&getSelectorFromElement
- #36652: Boost
execute
function, being able to handle arguments - #36854: Use explicit imports in our JavaScript source files
- #37438: refactor
getSelector
not to be exported - #37473: fix: change
replaceAll
usage introduced in #35566 - #37482: Use
Object.entries
in more places - #37483: hydrateObj: use default param
- #37484: ESLint: enable
prefer-template
rule
📖 Docs
- #36523: Update navbars example to include a centered nav with utilities
- #36831: Rework progress bar markup and styles
- #37247: Docs: Minor grammatical fixes for Form validation page
- #37250: Fix typo in documentation for hiding elements
- #37255: Markdownlint fixes
- #37267: Rename examples CSS/JS files for consistency
- #37271: Docs: Slightly improve tooling setup description
- #37277: Doc: add Sass vars for switches
- #37279: Improve example of .flex-wrap and -reverse
- #37282: Docs: standardize usage of
<kbd>
- #37299: Fix disabled floating labels and add some examples of it in the docs
- #37301: docs: fix text buttons to match behavior
- #37318: Home imports
- #37320: Organize callouts in partials
- #37341: Docs: use 'added' page information to display a tag on top of the pages
- #37354: Docs: rewrite/reorganize carousel docs page
- #37361: Font style utilities did not contain "-style-" in BS4
- #37397: Change title of color-background.md page
- #37399: Only show added in page badge if relevant
- #37406: Update input-group.md with form text example
- #37432: Docs: use
<button>
for dropdown/popover examples, explain preference over<a>
for dropdowns, tweak collapse prose - #37491: Make added-in badge page-level for z-index utilities
- #37492: Docs: add margin between buttons in tooltip examples
- #37493: Docs: fix margins between cards in examples
- #37498: Fix accessibility of examples buttons
- #37535: Docs: Fix Thirteenth typo on Navbars example
- #37538: Docs: Add black text/background examples
- #37553: Docs: fix "Usage -> Enable dark mode" code example
- #37568: Remove title from
check2
SVG icon - #37570: code-examples.js: switch to
firstElementChild
- #37615: Add new team member to the Teams page
- #37617: CSS:
$prefix
to the whole assets - #37658: docs: move color-mode script
- #37670: Docs: Fix typo in guide
- #37676: Docs: fix typo for Sass vars references in Customize > Color modes > Building with Sass
🛠 Examples
- #36523: Update navbars example to include a centered nav with utilities
- #37123: Fix button hover color in the cover example
- #37267: Rename examples CSS/JS files for consistency
- #37502: Fix grid and alignment in examples/features
🌎 Accessibility
- #36831: Rework progress bar markup and styles
- #37354: Docs: rewrite/reorganize carousel docs page
- #37432: Docs: use
<button>
for dropdown/popover examples, explain preference over<a>
for dropdowns, tweak collapse prose - #37498: Fix accessibility of examples buttons
🏭 Tests
- #37248: Rename some variables in tab unit tests for consistency
🧰 Misc
- #36325: CI: Add GitHub token permissions for workflows
- #37348: Update authors and copyright to match npm, add repository reference
- #37459: CI: remove git credentials after checkout
- #37461: CI: switch to Node.js 18 LTS
- #37481: Update CodeQL workflow
- #37485: Update site/.eslintrc.json
- #37486: CodeQL: ignore dist folder
📦 Dependencies
- Updated numerous devDependencies: https://github.com/twbs/bootstrap/pulls?q=is%3Apr+label%3Adependencies+project%3Atwbs%2F9+is%3Aclosed
v5.2.3
v5.2.2
Highlights
- Accordion
- Use Sass variable for the accordion color instead of an invalid CSS variable
- Buttons
- Undo changes to
.btn:hover
from v5.2.1. We now explicitly target.btn-check
styles instead.
- Undo changes to
- Dropdowns
- Restore the ability for dropdowns to work without an explicit
data
attribute (will be removed again in v6)
- Restore the ability for dropdowns to work without an explicit
- Modals
- Improve modal event listeners
- Use
<h1>
for all.modal-title
instances in our docs
- Tables
- Don't redefine
$border-color
intable-variant()
mixin
- Don't redefine
- Tabs
- Tabs no longer autofocus and cause pages to jump on
tab.show()
- Fix
.active
class toggling of tabs within dropdowns
- Tabs no longer autofocus and cause pages to jump on
- Toasts
- Properly set toast
z-index
on.toast-container
as opposed to individual.toast
s that don't receive any other positioning
- Properly set toast
- Tooltips
- Fix tooltip selectors with
title
attribute on dynamically created elements
- Fix tooltip selectors with
🎨 CSS
- #37118: Set toast z-index variable in the correct spot
- #37165: Explicitly target
.btn-check
and undo:hover
- #37182: Use Sass variable for accordion color
- #37239: Don't redefine
$border-color
intable-variant
mixin
☕️ 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-title
examples/uses - #37214: Docs: Change
view in GitHub
links insidemain
🌎 Accessibility
- #37200: Ensure Tab keyboard functionality after #37146
- #37210: Use
<h1>
for allmodal-title
examples/uses
🏭 Tests
🧰 Misc
- #35079: Add PR template
- #36421: NuGet: Use license expression
- #37186: Add eslint-plugin-html to lint JS in HTML files
📦 Dependencies
- Updated numerous devDependencies: https://github.com/twbs/bootstrap/pulls?q=is%3Apr+label%3Adependencies+project%3Atwbs%2F10+is%3Aclosed
v5.2.1
🚀 Highlights
- Accordion
- Update
color
value to use the$accordion-button-color
Sass variable instead of our color contrast function
- Update
- Buttons
- Added a
transparent
default hover border color CSS variable for buttons to fix a visual regression .btn-link
no longer has a gradient when$enable-gradients
is set totrue
- Added a
- Forms
- Input groups have updated
z-index
values to ensure proper rendering of validated form fields - Floating labels now reset their
text-align
to ensure consistent styling
- Input groups have updated
- List Groups
- Horizontal list groups with only one child now render the correct
border-radius
- Modified the
list-group-item
selectors to better support nested imports of Bootstrap's CSS
- Horizontal list groups with only one child now render the correct
- Modals
- Fixed modal event listeners during dismiss click, allowing you to once again click scrollbars without dismissing the modal
- Pagination
- Fixed incorrect
border-radius
values inside pagination components
- Fixed incorrect
- Scrollspy
- Scrollspy threshold option is now configurable
- Tooltips
- Reverted some tooltip plugin updates to prevent issues with
selector
, dynamic content, and disposed tooltips usingtitle
- Reverted some tooltip plugin updates to prevent issues with
🚀 Features
- #36750: ScrollSpy: make the threshold option configurable
🎨 CSS
- #36507: v5/docs: reintroduce
outline
for 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-index
CSS 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/features
page. - #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
outline
for 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
- Updated numerous devDependencies: https://github.com/twbs/bootstrap/pulls?q=is%3Apr+label%3Adependencies+project%3Atwbs%2F8+is%3Aclosed