Skip to content

Commit 347e2fe

Browse files
committed
fix: small UI fixes for the sticky Tabs header on smaller screens + drawer content collapsing on smaller screens + better handling of Nav link cleanup when changing pages
1 parent ec4ab84 commit 347e2fe

File tree

4 files changed

+13
-2
lines changed

4 files changed

+13
-2
lines changed

packages/uikit-workshop/src/sass/scss/04-components/_pattern-info.scss

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@
5454
*/
5555
.pl-c-pattern-info__panel {
5656
padding: .5rem;
57-
flex-shrink: 1;
57+
flex-shrink: 0; // prevent panel from collapsing in height (especially on smaller screens like iPhone)
5858
display: flex;
5959
flex-direction: column;
6060

packages/uikit-workshop/src/sass/scss/04-components/_tabs.scss

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -67,6 +67,7 @@
6767

6868
.pl-c-tabs__header {
6969
position: sticky;
70+
z-index: 1; // fix for Safari for iOS sticky header appearing to be below the scrollable content
7071
top: 0px;
7172
border-top: 1px solid #ddd;
7273
margin-left: calc(-0.5rem - 1px);

packages/uikit-workshop/src/scripts/components/pl-nav/pl-nav.js

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -293,6 +293,14 @@ class Nav extends BaseComponent {
293293
this.navAccordionPanels.forEach(panel => {
294294
panel.classList.remove('pl-is-active');
295295
});
296+
} else if (this.layoutMode === 'vertical' && window.innerWidth <= 670) {
297+
this.navContainer.classList.remove('pl-is-active');
298+
this.navAccordionTriggers.forEach(trigger => {
299+
trigger.classList.remove('pl-is-active');
300+
});
301+
this.navAccordionPanels.forEach(panel => {
302+
panel.classList.remove('pl-is-active');
303+
});
296304
} else {
297305
this.navContainer.classList.remove('pl-is-active');
298306
}
@@ -331,6 +339,7 @@ class Nav extends BaseComponent {
331339
)
332340
) {
333341
activeLink.parentNode.classList.add('pl-is-active');
342+
this.previousActiveLinks.push(activeLink.parentNode);
334343
}
335344

336345
const parentDropdown = activeLink.closest('.pl-js-acc-panel');
@@ -346,8 +355,8 @@ class Nav extends BaseComponent {
346355
) &&
347356
shouldAutoOpenNav
348357
) {
349-
this.previousActiveLinks.push(parentDropdown.previousSibling);
350358
parentDropdown.previousSibling.classList.add('pl-is-active');
359+
this.previousActiveLinks.push(parentDropdown.previousSibling);
351360
parentDropdownTrigger = parentDropdown.previousSibling.querySelector(
352361
'.pl-js-acc-handle'
353362
);

packages/uikit-workshop/src/scripts/lit-components/pl-header/pl-header.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -66,6 +66,7 @@ class Header extends BaseLitComponent {
6666
if (
6767
e.target !== this.navToggle &&
6868
!e.target.closest('.pl-js-nav-container') &&
69+
!e.target.closest('pl-toggle-layout') &&
6970
this.isActive === true
7071
) {
7172
this.isActive = false;

0 commit comments

Comments
 (0)