Skip to content

Commit a9e0e99

Browse files
authored
refactor: switch to Flexbox in announcement bar (facebook#5430)
* refactor: switch to Flexbox in announcement bar * Fixes after review * Fixes after review * Fixes after review
1 parent df3752c commit a9e0e99

File tree

2 files changed

+25
-31
lines changed

2 files changed

+25
-31
lines changed

packages/docusaurus-theme-classic/src/theme/AnnouncementBar/index.tsx

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@ function AnnouncementBar(): JSX.Element | null {
3131
className={styles.announcementBar}
3232
style={{backgroundColor, color: textColor}}
3333
role="banner">
34+
{isCloseable && <div className={styles.announcementBarPlaceholder} />}
3435
<div
3536
className={clsx(styles.announcementBarContent, {
3637
[styles.announcementBarCloseable]: isCloseable,
@@ -42,7 +43,7 @@ function AnnouncementBar(): JSX.Element | null {
4243
{isCloseable ? (
4344
<button
4445
type="button"
45-
className={clsx(styles.announcementBarClose, 'clean-btn')}
46+
className={clsx('clean-btn close', styles.announcementBarClose)}
4647
onClick={close}
4748
aria-label={translate({
4849
id: 'theme.AnnouncementBar.closeButtonAriaLabel',

packages/docusaurus-theme-classic/src/theme/AnnouncementBar/styles.module.css

Lines changed: 23 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,8 @@
1010
}
1111

1212
.announcementBar {
13-
position: relative;
14-
width: 100%;
13+
display: flex;
14+
align-items: center;
1515
height: var(--docusaurus-announcement-bar-height);
1616
background-color: var(--ifm-color-white);
1717
color: var(--ifm-color-black);
@@ -22,51 +22,44 @@ html[data-announcement-bar-initially-dismissed='true'] .announcementBar {
2222
display: none;
2323
}
2424

25-
@media print {
26-
.announcementBar {
27-
display: none;
28-
}
25+
.announcementBarPlaceholder {
26+
flex: 0 0 10px;
2927
}
3028

31-
@media screen and (min-width: 1024px) {
32-
:root {
33-
--docusaurus-announcement-bar-height: 30px;
34-
}
29+
.announcementBarClose {
30+
flex: 0 0 30px;
3531
}
3632

3733
.announcementBarClose {
38-
position: absolute;
39-
right: 0;
40-
top: 0;
41-
width: 55px;
42-
font-size: 1.25rem;
43-
height: 100%;
34+
align-self: stretch;
35+
padding: 0;
4436
}
4537

4638
.announcementBarContent {
39+
flex: 1 1 auto;
4740
font-size: 85%;
48-
width: 100%;
4941
text-align: center;
5042
padding: 5px 0;
5143
}
5244

53-
.announcementBarCloseable {
54-
margin-right: 55px;
55-
}
56-
57-
@media screen and (max-width: 576px) {
58-
.announcementBarClose {
59-
width: 35px;
60-
}
61-
.announcementBarContent {
62-
width: auto;
63-
}
64-
.announcementBarCloseable {
65-
margin-right: 35px;
45+
@media print {
46+
.announcementBar {
47+
display: none;
6648
}
6749
}
6850

6951
.announcementBarContent a {
7052
color: inherit;
7153
text-decoration: underline;
7254
}
55+
56+
@media screen and (min-width: 1024px) {
57+
:root {
58+
--docusaurus-announcement-bar-height: 30px;
59+
}
60+
61+
.announcementBarPlaceholder,
62+
.announcementBarClose {
63+
flex-basis: 50px;
64+
}
65+
}

0 commit comments

Comments
 (0)