summaryrefslogtreecommitdiff
path: root/web/source/css/status.css
diff options
context:
space:
mode:
Diffstat (limited to 'web/source/css/status.css')
-rw-r--r--web/source/css/status.css166
1 files changed, 125 insertions, 41 deletions
diff --git a/web/source/css/status.css b/web/source/css/status.css
index 91665cd45..81ee7601a 100644
--- a/web/source/css/status.css
+++ b/web/source/css/status.css
@@ -28,8 +28,6 @@
padding-top: 0.75rem;
a {
- position: relative;
- z-index: 1;
color: inherit;
text-decoration: none;
}
@@ -109,11 +107,6 @@
gap: 0.5rem;
}
- .text-spoiler > summary, .text {
- position: relative;
- z-index: 2;
- }
-
.text-spoiler > summary {
list-style: none;
display: flex;
@@ -193,7 +186,6 @@
.poll {
background-color: $gray2;
- z-index: 2;
display: flex;
flex-direction: column;
@@ -260,59 +252,150 @@
display: flex;
gap: 1rem;
- .stats-grouping {
+ .stats-grouping,
+ .stats-more-info-content {
display: flex;
flex-wrap: wrap;
- column-gap: 1rem;
+ }
- .edited-at {
- font-size: smaller;
- }
+ .stats-grouping {
+ column-gap: 1rem;
+ row-gap: 0.25rem;
}
.stats-item {
display: flex;
gap: 0.4rem;
+ width: fit-content;
}
- .stats-item.published-at {
- text-decoration: underline;
+ details.stats-more-info {
+ margin-left: auto;
+
+ & > summary {
+ display: flex;
+
+ /*
+ Make it easy to touch.
+ */
+ width: 3rem;
+ height: 2rem;
+ margin: -0.25rem -0.5rem;
+
+ /*
+ Remove details/summary
+ arrow and use our own.
+ */
+ list-style: none;
+ &::-webkit-details-marker {
+ display: none; /* Safari */
+ }
+
+ /*
+ Don't display the
+ "hide" button initially.
+ */
+ i.hide {
+ display: none;
+ }
+
+ /*
+ Normalize fa
+ icon alignment.
+ */
+ align-items: center;
+ i.fa {
+ text-align: center;
+ }
+
+ cursor: pointer;
+ border-radius: $br-inner;
+ &:focus-visible {
+ outline: $button-focus-outline;
+ }
+
+ &:hover {
+ outline: 0.1rem solid $fg-reduced;
+ }
+ }
+
+ @keyframes fade-in {
+ 0% {opacity: 0}
+ 100% {opacity: 1}
+ }
+
+ &[open] {
+ .stats-more-info-content {
+ animation: fade-in .1s;
+ }
+
+ & > summary i.show {
+ display: none;
+ }
+
+ & > summary i.hide {
+ display: block;
+ }
+ }
}
- .stats-item:not(.published-at):not(.edited-at) {
- z-index: 1;
+ .stats-more-info-content {
+ position: absolute;
+ right: 0;
+ z-index: 2;
+
+ flex-direction: column;
+ max-width: 100%;
+ row-gap: 0.5rem;
+
+ background: $status-info-bg;
+ padding: 0.5rem 0.75rem;
+ border: $boxshadow-border;
+ box-shadow: $boxshadow;
+
+ opacity: 1;
+
+ .stats-grouping {
+ width: 100%;
+ justify-content: space-between;
+ }
+ }
+
+ .stats-item.published-at dd a {
+ time.dt-published {
+ text-decoration: underline;
+ }
+
+ &:focus-visible {
+ outline: 0;
+ time.dt-published {
+ outline: $link-focus-outline;
+ outline-offset: -0.25rem;
+ }
+ }
+ }
+
+ .stats-item:not(.published-at):not(.edit-timeline) {
user-select: none;
}
- .language {
- margin-left: auto;
+ .stats-item.edit-timeline {
+ flex-direction: column;
+ width: 100%;
+ border-top: $boxshadow-border;
+ padding-top: 0.4rem;
+
+ dd {
+ display: flex;
+ align-items: center;
+ gap: 0.4rem;
+ }
}
}
grid-column: span 3;
}
- .status-link {
- top: 0;
- right: 0;
- bottom: 0;
- left: 0;
- overflow: hidden;
- text-indent: 100%;
- white-space: nowrap;
-
- position: absolute;
- z-index: 0;
-
- &:focus-visible {
- /*
- Inset focus to compensate for themes where
- statuses have a really thick border.
- */
- outline-offset: -0.25rem;
- }
- }
-
&:first-child {
/* top left, top right */
border-top-left-radius: $br;
@@ -327,7 +410,8 @@
&.expanded {
background: $status-focus-bg;
- .status-info {
+ .status-info,
+ .status-info .status-stats .stats-more-info-content {
background: $status-focus-info-bg;
}
}