diff --git a/scss/_list-group.scss b/scss/_list-group.scss index 7e23b8e0c0..ecacb05f28 100644 --- a/scss/_list-group.scss +++ b/scss/_list-group.scss @@ -12,6 +12,19 @@ @include border-radius($list-group-border-radius); } +// stylelint-disable selector-no-qualifying-type +ol.list-group { + list-style-type: none; + counter-reset: section; + + > li::before { + // Increments only this instance of the section counter + content: counters(section, ".") ". "; + counter-increment: section; + } +} +// stylelint-enable selector-no-qualifying-type + // Interactive list items // diff --git a/site/content/docs/5.0/components/list-group.md b/site/content/docs/5.0/components/list-group.md index 1ac5a9a2b9..4caaeb8de7 100644 --- a/site/content/docs/5.0/components/list-group.md +++ b/site/content/docs/5.0/components/list-group.md @@ -94,6 +94,48 @@ Add `.list-group-flush` to remove some borders and rounded corners to render lis {{< /example >}} +## Ordered list + +Replace the unordered list element with an ordered list to opt into numbered list group items. Numbers are generated via CSS (as opposed to a `
    `s default browser styling) for better placement inside list group items and to allow for better customization. + +Numbers are generated by `counter-reset` on the `
      `, and then styled and placed with a `::before` psuedo-element on the `
    1. ` with `counter-increment` and `content`. + +{{< example >}} +
        +
      1. Cras justo odio
      2. +
      3. Cras justo odio
      4. +
      5. Cras justo odio
      6. +
      +{{< /example >}} + +These work great with custom content as well. + +{{< example >}} +
        +
      1. +
        +
        Subheading
        + Cras justo odio +
        + 14 +
      2. +
      3. +
        +
        Subheading
        + Cras justo odio +
        + 14 +
      4. +
      5. +
        +
        Subheading
        + Cras justo odio +
        + 14 +
      6. +
      +{{< /example >}} + ## Horizontal Add `.list-group-horizontal` to change the layout of list group items from vertical to horizontal across all breakpoints. Alternatively, choose a responsive variant `.list-group-horizontal-{sm|md|lg|xl|xxl}` to make a list group horizontal starting at that breakpoint's `min-width`. Currently **horizontal list groups cannot be combined with flush list groups.**