fix: show tags outside video tile

This commit is contained in:
2023-08-01 07:48:51 +02:00
parent bd3d566c3f
commit 5026f6a008
2 changed files with 39 additions and 29 deletions

View File

@ -2,6 +2,17 @@
position: relative; position: relative;
} }
.video-tile-container {
display: flex;
flex-direction: column;
}
.video-tile-info {
display: flex;
flex-direction: column;
gap: 6px;
}
.video-tile.nsfw > div:nth-child(1) { .video-tile.nsfw > div:nth-child(1) {
filter: blur(3px); filter: blur(3px);
} }
@ -18,7 +29,7 @@
.video-tile h3 { .video-tile h3 {
font-size: 20px; font-size: 20px;
line-height: 25px; line-height: 25px;
margin: 16px 0; margin: 16px 0 6px 0;
word-break: break-all; word-break: break-all;
word-wrap: break-word; word-wrap: break-word;
} }
@ -44,16 +55,13 @@
text-transform: lowercase; text-transform: lowercase;
} }
.video-tile .video-tags { .video-tags {
display: flex; display: flex;
align-items: flex-start; align-items: flex-start;
flex-wrap: wrap; flex-wrap: wrap;
gap: 4px; gap: 4px;
position: absolute;
bottom: 4px;
left: 4px;
} }
.video-tile .video-tags .pill { .video-tags .pill {
font-size: 12px; font-size: 12px;
} }

View File

@ -38,6 +38,7 @@ export function VideoTile({
ev.pubkey, ev.pubkey,
); );
return ( return (
<div className="video-tile-container">
<Link <Link
to={`/${link}`} to={`/${link}`}
className={`video-tile${contentWarning ? " nsfw" : ""}`} className={`video-tile${contentWarning ? " nsfw" : ""}`}
@ -45,16 +46,11 @@ export function VideoTile({
> >
<div <div
style={{ style={{
position: "relative",
backgroundImage: `url(${ backgroundImage: `url(${
inView ? ((image?.length ?? 0) > 0 ? image : ZapStream) : "" inView ? ((image?.length ?? 0) > 0 ? image : ZapStream) : ""
})`, })`,
}} }}
> ></div>
<div className="video-tags">
<Tags ev={ev} max={3} />
</div>
</div>
<span className="pill-box"> <span className="pill-box">
{showStatus && <StatePill state={status as StreamState} />} {showStatus && <StatePill state={status as StreamState} />}
{viewers && ( {viewers && (
@ -64,7 +60,13 @@ export function VideoTile({
)} )}
</span> </span>
<h3>{title}</h3> <h3>{title}</h3>
{showAuthor && <div>{inView && <Profile pubkey={host} />}</div>}
</Link> </Link>
<div className="video-tile-info">
<div className="video-tags">
<Tags ev={ev} max={3} />
</div>
{showAuthor && <div>{inView && <Profile pubkey={host} />}</div>}
</div>
</div>
); );
} }