Visitar URL original
USWDS - Button group: Fix margins on nested button groups by amyleadem · Pull Request #5885 · uswds/uswds · GitHub
Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
20 changes: 20 additions & 0 deletions packages/usa-button-group/src/styles/_usa-button-group.scss
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,26 @@
align-items: stretch;
flex-direction: row;
}

// Styles for nested button groups
.usa-button-group {
height: 100%;

.usa-button-group__item {
@include at-media("mobile-lg") {
margin-top: 0;
margin-bottom: 0;
}
}

// Styles for nested segmented button groups
&--segmented {
.usa-button-group__item {
margin-top: 0;
margin-bottom: 0;
}
}
}
}

.usa-button-group__item {
Expand Down

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed indents in df884c8.

Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
<div class="usa-prose measure-5 padding-2 border-1px border-gray-20 margin-bottom-4">
<p class="font-body-lg text-bold margin-top-0">Test nested button groups</p>
<p>Confirm that buttons inside nested button groups are:</p>
<ul>
<li>The same height as their sibling buttons</li>
<li>The same height as their parent buttons</li>
</ul>
</div>

<h3>Nested button group</h3>
<ul class="usa-button-group">
<li class="usa-button-group__item">
<button type="button" class="usa-button usa-button--outline">Button</button>
</li>
<li class="usa-button-group__item">
<button type="button" class="usa-button usa-button--outline mobile-lg:width-15">Button with long text </button>
</li>
<li class="usa-button-group__item">
<ul class="usa-button-group">
<li class="usa-button-group__item ">
<a href="#" class="usa-button usa-button--outline mobile-lg:width-10">Nested Link</a>
</li>
<li class="usa-button-group__item">
<button type="button" class="usa-button">Nested Button</button>
</li>
</ul>
</li>
</ul>

<h3>Nested button group - Segmented</h3>
<ul class="usa-button-group usa-button-group--segmented">
<li class="usa-button-group__item">
<button type="button" class="usa-button usa-button--outline">Button</button>
</li>
<li class="usa-button-group__item">
<button type="button" class="usa-button usa-button--outline">Button with long text </button>
</li>
<li class="usa-button-group__item">
<ul class="usa-button-group usa-button-group--segmented">
<li class="usa-button-group__item">
<a href="#" class="usa-button usa-button--outline">Nested Link</a>
</li>
<li class="usa-button-group__item">
<button type="button" class="usa-button">Nested Button</button>
</li>
</ul>
</li>
</ul>

16 changes: 15 additions & 1 deletion packages/usa-button-group/src/usa-button-group.stories.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
import Component from "./usa-button-group.twig";
import TestTextWrappingComponent from "./test/test-patterns/usa-button-group--test-text-wrapping.twig";
import TestTextWrappingComponent from "./test/test-patterns/test-usa-button-group--text-wrapping.twig";
import TestNestedGroupsComponent from "./test/test-patterns/test-usa-button-group--nested.twig";
import { DefaultContent, SegmentedContent } from "./content";

export default {
Expand All @@ -24,6 +25,7 @@ export default {

const Template = (args) => Component(args);
const TestTextWrappingTemplate = (args) => TestTextWrappingComponent(args);
const TestNestedGroupsTemplate = (args) => TestNestedGroupsComponent(args);

export const Default = Template.bind({});
Default.args = DefaultContent;
Expand All @@ -32,3 +34,15 @@ export const Segmented = Template.bind({});
Segmented.args = SegmentedContent;

export const TestTextWrapping = TestTextWrappingTemplate.bind({});
TestTextWrapping.argTypes = {
disabled_state: {
table: { disable: true },
},
};

export const TestNestedButtonGroups = TestNestedGroupsTemplate.bind({});
TestNestedButtonGroups.argTypes = {
disabled_state: {
table: { disable: true },
},
};