kirche-im-netz.Startodon-Hub/style/postwall.css
2024-12-29 13:08:59 +01:00

248 lines
4.6 KiB
CSS

/* Allgemeine Einstellungen */
#aktuell {
background-color: #24242f;
padding: 0;
box-shadow: inset 0 0 15px rgba(0, 0, 0, 0.7);
}
#aktuell .container {
padding-bottom: 0;
}
.full-width {
width: 100vw;
overflow-x: hidden;
padding: 0;
}
/* Posts Container */
.posts {
display: flex;
gap: 20px;
overflow-x: auto;
scroll-behavior: smooth;
padding: 20px;
padding-bottom: 40px;
margin: 0 auto;
justify-content: flex-start;
scroll-snap-type: x mandatory;
scroll-padding: 40px;
}
/* Scrollbar */
.posts::-webkit-scrollbar {
height: 8px;
}
.posts::-webkit-scrollbar-thumb {
background-color: #888;
border-radius: 5px;
}
.posts::-webkit-scrollbar-thumb:hover {
background-color: #555;
}
.posts::-webkit-scrollbar-track {
background: #222;
}
/* Einzelner Post */
.post {
flex: 0 0 350px;
max-height: 300px;
background-color: var(--secondary-background-color);
border: 1px solid var(--secondary-background-color);
padding: 20px;
border-radius: 10px;
box-shadow: 0 4px 8px rgba(0, 0, 0, 0.3);
scroll-snap-align: start;
transition: box-shadow 0.3s ease, background-color 0.3s ease;
text-align: left;
color: #fff;
position: relative;
overflow: hidden;
}
/* Header */
.post-header {
display: flex;
align-items: center;
gap: 10px;
position: relative;
}
.post-timestamp {
position: absolute;
top: 5px;
right: 5px;
font-size: 0.8rem;
color: #bbb;
font-weight: bold;
}
/* Autor-Informationen */
.post-author {
display: flex;
flex-direction: column;
}
.post-username {
font-size: 0.8em;
color: #bbb;
}
.avatar {
width: 40px;
height: 40px;
border-radius: 50%;
}
/* Inhalt */
.post-content {
overflow: hidden;
position: relative;
line-height: 1.4;
}
.post-content p {
margin: 15px 0;
font-size: 0.9rem;
}
/* Links innerhalb des Inhalts */
.post-content p a {
color: var(--link-color) !important;
text-decoration: none !important;
pointer-events: none; /* Links deaktivieren */
}
.post-content p a:hover {
text-decoration: underline !important;
color: #ddd !important;
}
/* Medien */
.post-media img {
max-width: 100%;
max-height: 150px;
object-fit: cover;
display: block;
margin: 10px 0;
border-radius: 5px;
transition: transform 0.3s ease-in-out;
}
.post-media img:hover {
transform: scale(1.1);
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.5);
}
/* Footer mit Verlauf und drei Punkten */
.post-footer {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
height: 50px;
background: linear-gradient(to top, rgba(36, 36, 47, 1), rgba(36, 36, 47, 0));
text-align: center;
color: #bbb;
font-weight: bold;
font-size: 0.9rem;
padding-top: 15px;
pointer-events: none;
}
/* Hover-Effekt */
#aktuell .post:hover {
box-shadow: 0 6px 12px rgba(0, 0, 0, 0.4);
border: 1px solid var(--primary-color-hover);
}
.read-more-button {
display: block;
text-align: center;
margin: 130px 130px 20px auto;
padding: 10px 20px;
background-color: var(--primary-color);
color: #fff;
font-size: 1rem;
font-weight: bold;
border-radius: 5px;
cursor: pointer;
text-decoration: none;
width: fit-content; /* Passt die Breite an den Text an */
height: fit-content;
transition: background-color 0.3s ease;
}
.read-more-button:hover {
background-color: var(--primary-color-hover);
transform: translateY(-2px);
box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}
/* Allgemeine Skeleton-Styling */
.skeleton {
background-color: #e0e0e0;
border-radius: 4px;
animation: skeleton-loading 1.5s infinite;
}
@keyframes skeleton-loading {
0% {
background-color: #e0e0e0;
}
50% {
background-color: #f0f0f0;
}
100% {
background-color: #e0e0e0;
}
}
/* Avatar-Skeleton */
.avatar-skeleton {
width: 50px;
height: 50px;
border-radius: 50%;
margin-right: 10px;
}
/* Skeleton für Autor und Username */
.skeleton-text {
height: 12px;
margin-bottom: 6px;
}
.skeleton-text-name {
width: 120px;
}
.skeleton-text-username {
width: 80px;
}
/* Responsives Verhalten */
@media (max-width: 800px) {
.post {
flex: 0 0 300px;
max-height: 350px;
}
.post-header .avatar {
width: 30px;
height: 30px;
}
.post-username {
font-size: 0.8em;
}
.post-media img {
max-height: 120px;
}
.post-footer {
height: 40px;
padding-top: 10px;
}
}