место, где мы с важным видом сообщаем вам то, что вы (предположительно) и так уже узнали из слухов
кричалки
Сообщений 1 страница 4 из 4
Поделиться22025-09-23 17:21:19
[html]<div id="ams-announcement">
<style>
/* ====== Палитра и типографика ====== */
#ams-announcement {
--panel: #fff; --side: #f6f6f8; --ink: #2a2a2a; --muted: #777;
--edge: #ddd; --accent: #e5007d; --accent-soft: #ffe0f2;
--radius: 12px; font: 12px/1.55 Montserrat, Helvetica, sans-serif; color: var(--ink);
max-width: 800px; margin: 20px auto; position: relative;
}
#ams-announcement * { box-sizing: border-box; }
/* ====== Шапка с фоновым изображением ====== */
.announcement-header {
background:
linear-gradient(rgba(255,255,255,0.9), rgba(255,255,255,0.95)),
url('https://i.imgur.com/eeutJYr.jpeg') center/cover;
border: 1px solid var(--edge);
border-radius: var(--radius);
padding: 25px;
display: flex;
align-items: center;
gap: 20px;
margin-bottom: 18px;
position: relative;
overflow: hidden;
}
.announcement-header::before {
content: '';
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
background:
linear-gradient(45deg, rgba(229, 0, 125, 0.05) 0%, transparent 50%),
linear-gradient(-45deg, rgba(255, 224, 242, 0.1) 0%, transparent 50%);
pointer-events: none;
}
.admin-avatar-large {
width: 80px;
height: 80px;
border-radius: 50%;
overflow: hidden;
border: 3px solid var(--accent);
box-shadow: 0 4px 15px rgba(229, 0, 125, 0.3);
flex-shrink: 0;
position: relative;
z-index: 2;
}
.admin-avatar-large img {
width: 100%;
height: 100%;
object-fit: cover;
}
.header-info {
flex-grow: 1;
position: relative;
z-index: 2;
}
.header-title {
font-size: 22px;
font-weight: bold;
color: var(--accent);
margin: 10 0 8px 10;
text-shadow: 1px 1px 2px rgba(255,255,255,0.8);
}
.header-subtitle {
font-size: 14px;
color: var(--muted);
margin: 10 0 12px 10;
font-weight: 600;
}
.header-meta {
display: flex;
gap: 15px;
font-size: 12px;
color: var(--muted);
flex-wrap: wrap;
}
.header-meta a {
font-weight: 600;
background: rgba(255,255,255,0.7);
padding: 2px 8px;
border-radius: 10px;
text-decoration: none;
color: var(--accent);
transition: all 0.3s ease;
}
.header-meta a:hover {
background: var(--accent-soft);
text-decoration: underline;
}
/* ====== Основной контент ====== */
.main-content {
background: var(--panel);
border: 1px solid var(--edge);
border-radius: var(--radius);
padding: 0;
}
.content-body {
padding: 20px;
}
.content-body p {
margin: 0 0 12px;
font-size: 12px;
line-height: 1.5;
}
/* ====== Блок пользователей и эпизода в один уровень ====== */
.users-episode-row {
display: grid;
grid-template-columns: 1fr 1fr 1fr;
gap: 20px;
margin: 20px 0;
}
.user-category-side {
background: #f9f9f9;
padding: 15px;
border-radius: 8px;
border: 1px solid var(--edge);
text-align: center;
}
.category-title-side {
font-size: 14px;
font-weight: bold;
color: var(--accent);
margin: 0 0 12px 0;
display: flex;
align-items: center;
justify-content: center;
gap: 6px;
}
.users-gallery-side {
display: flex;
justify-content: center;
gap: 10px;
flex-wrap: wrap;
justify-content: right;
}
.user-avatar-tooltip {
position: relative;
justify-content: center;
width: 50px;
height: 50px;
cursor: pointer;
}
.user-avatar {
width: 100%;
height: 100%;
border-radius: 50%;
object-fit: cover;
border: 2px solid var(--accent-soft);
transition: all 0.3s ease;
}
.user-avatar:hover {
border-color: var(--accent);
transform: scale(1.1);
box-shadow: 0 3px 10px rgba(229, 0, 125, 0.2);
}
/* Всплывающая подсказка */
.tooltip-text {
visibility: hidden;
width: 150px;
background-color: var(--accent);
color: white;
text-align: center;
border-radius: 6px;
padding: 8px;
position: absolute;
z-index: 100;
bottom: 125%;
left: 50%;
transform: translateX(-50%);
opacity: 0;
transition: opacity 0.3s;
font-size: 10px;
line-height: 1.3;
}
.tooltip-text::after {
content: "";
position: absolute;
top: 100%;
left: 50%;
margin-left: -5px;
border-width: 5px;
border-style: solid;
border-color: var(--accent) transparent transparent transparent;
}
.user-avatar-tooltip:hover .tooltip-text {
visibility: visible;
opacity: 1;
}
.user-name {
font-weight: bold;
display: block;
margin-bottom: 2px;
font-size: 11px;
}
.user-role {
font-size: 9px;
opacity: 0.9;
}
/* ====== Блок лучшего эпизода ====== */
.episode-block-side {
background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
padding: 15px;
border-radius: 8px;
border: 1px solid var(--accent-soft);
text-align: center;
display: flex;
flex-direction: column;
justify-content: center;
}
.episode-info-side h5 {
margin: 0 0 8px 0;
font-size: 14px;
}
.episode-desc {
font-size: 11px;
color: var(--muted);
margin: 0 0 10px 0;
line-height: 1.3;
}
.episode-link {
color: var(--accent);
text-decoration: none;
font-weight: bold;
font-size: 11px;
transition: color 0.3s;
display: inline-block;
padding: 5px 10px;
background: var(--accent-soft);
border-radius: 4px;
}
.episode-link:hover {
color: #c40066;
text-decoration: underline;
background: #ffcce8;
}
/* ====== Блок цитаты ====== */
.quote-block-compact {
background: linear-gradient(135deg, #fff 0%, #f8f9fa 100%);
padding: 12px;
border-radius: 8px;
border-left: 3px solid var(--accent);
margin: 15px 0;
position: relative;
}
.quote-block-compact::before {
content: '"';
position: absolute;
top: 8px;
left: 8px;
font-size: 24px;
color: var(--accent-soft);
font-family: serif;
}
.quote-text {
font-style: italic;
font-size: 11px;
line-height: 1.4;
margin: 0 0 8px 0;
color: #555;
padding-left: 15px;
}
.quote-author {
font-size: 10px;
color: var(--muted);
text-align: right;
font-weight: 600;
}
/* ====== Разделитель ====== */
.section-divider-compact {
height: 40px;
background:
linear-gradient(rgba(0,0,0,0.3), rgba(0,0,0,0.4)),
url('https://i.imgur.com/eeutJYr.jpeg') center/cover;
border-radius: 6px;
margin: 20px 0;
position: relative;
display: flex;
align-items: center;
justify-content: center;
}
.divider-text {
position: relative;
z-index: 2;
color: white;
font-weight: bold;
font-size: 14px;
text-shadow: 1px 1px 3px rgba(0,0,0,0.8);
letter-spacing: 0.5px;
}
/* ====== Блок "Лучшие из лучших" ====== */
.best-of-the-best-compact {
background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
border-radius: 8px;
padding: 15px;
margin: 20px 0;
border: 1px solid var(--edge);
}
.best-section-compact {
margin-bottom: 20px;
}
.best-section-compact:last-child {
margin-bottom: 0;
}
.best-title-compact {
font-size: 14px;
font-weight: bold;
color: var(--accent);
margin: 20 20 12px 0;
text-align: center;
border-bottom: 1px solid var(--accent-soft);
padding-bottom: 6px;
}
/* ====== Адаптивность ====== */
@media (max-width: 700px) {
.users-episode-row {
grid-template-columns: 1fr;
gap: 15px;
}
.announcement-header {
flex-direction: column;
text-align: center;
padding: 20px;
gap: 15px;
}
.header-meta {
justify-content: center;
}
.admin-avatar-large {
width: 70px;
height: 70px;
}
.header-title {
font-size: 18px;
}
}
@media (max-width: 480px) {
.content-body {
padding: 15px;
}
.header-meta {
gap: 8px;
}
.header-meta a {
font-size: 10px;
padding: 1px 6px;
}
.users-gallery-side {
gap: 8px;
}
.user-avatar-tooltip {
width: 45px;
height: 45px;
}
}
</style>
<!-- Шапка с фоновым изображением -->
<div class="announcement-header">
<div class="admin-avatar-large">
<img src="https://i.imgur.com/BKTEMbJ.png" alt="Скорпиус">
</div>
<div class="header-info">
<h3 class="header-title">ВЧЕРАШНИЕ НОВОСТИ ОТ СКОРПА</h1>
<h4 class="header-subtitle">Ссылочки на обновления:</h2>
<div class="header-meta">
<a href="https://separation.rusff.me/viewtopic.php?id=40#p3214">шаблон анкеты</a>
<a href="https://separation.rusff.me/viewtopic.php?id=32">лотерея</a>
<a href="https://separation.rusff.me/viewtopic.php?id=23">вопросы к амс</a>
</div>
</div>
</div>
<!-- Основной контент -->
<div class="main-content">
<div class="content-body">
<p>Ну што, котята и кисы, с вами первый выпуск новостей о том, как мы провели два дня на Сепарейшене и нам снесло крышу от вас и вашего актива! Целуем в лобик каждого из наших <b>38 зарегистрированных пользователей</b> (цифра актуальна на момент написания текста, но зная вас, к его концу будет 39, а к публикации 40). Ставим свечку за упокой уже почти <b>трёх флудов</b> и пожимаем ручки всем причастным. Вы лучшие, самые бешоные! <br><br>
<b>Чем эти два дня занимались мы?</b><br><br>
— Во-первых, приготовили для вас <b>развлечения</b>: <a href="https://separation.rusff.me/viewtopic.php?id=32">лотерею</a>, <a href="https://separation.rusff.me/viewtopic.php?id=29#p952">пазлы</a> и <a href="https://separation.rusff.me/viewtopic.php?id=28">филворды</a>. За участие можно разжиться носками и всякими полезными штуками.<br><br>
— Во-вторых, открыли тему для <a href="https://separation.rusff.me/viewtopic.php?id=23"><b>вопросов и предложений</b></a>, так что если вы боялись что-то спросить или не могли выбрать, кто из админов вам больше нравится, заходите туда.<br><br>
— В-третьих, не думал, что когда-то это скажу, но вы можете последовать примеру шмоттеров и швизлей и завести в разделе личных страниц тему для своей семьи, опг или общества любителей омегаверса, чтобы удобнее было обсуждать все хеды на игру. <br><br>
Ну и последняя новость: у нас теперь есть официальный <a href="https://separation.rusff.me/viewtopic.php?id=40#p3214"><b>шаблон анкеты</b></a>. Меняться он больше не будет, так что копируйте и пользуйтесь. <b>Всем, кто в день открытия чистовика принесёт анкету в приёмку, прилетит +100 носочков дополнительно.</b> Да, это стимулирующая мера министерства по увеличению рождаемости твинков. <br><br>
Так что пишите анкеты, берите заявки, убивайте флуды и приобретайте билеты на концерты Василисков!<br>
<b>p.s. совсем скоро принесём вам ещё матчасти, а-то вдруг вы уже дочитали эту и теперь скучаете. </b> <br><br>
Всем финальный чмок в десна и хорошего вечера ♥.</p>
</div>
</div>
</div>
</div>
</div>
</div>[/html]
[hideprofile]
Поделиться32025-09-25 18:37:43
[html]<div id="ams-announcement">
<style>
.dashed-divider {
border-top: 2px dashed #e5007d; /* ярко-розовый пунктир */
margin: 10px 0; /* отступ сверху и снизу */
}
/* ====== Палитра и типографика ====== */
#ams-announcement {
--panel: #fff; --side: #f6f6f8; --ink: #2a2a2a; --muted: #777;
--edge: #ddd; --accent: #e5007d; --accent-soft: #ffe0f2;
--radius: 12px; font: 12px/1.55 Montserrat, Helvetica, sans-serif; color: var(--ink);
max-width: 800px; margin: 20px auto; position: relative;
}
#ams-announcement * { box-sizing: border-box; }
/* ====== Шапка с фоновым изображением ====== */
.announcement-header {
background:
linear-gradient(rgba(255,255,255,0.9), rgba(255,255,255,0.95)),
url('https://i.imgur.com/eeutJYr.jpeg') center/cover;
border: 1px solid var(--edge);
border-radius: var(--radius);
padding: 25px;
display: flex;
align-items: center;
gap: 20px;
margin-bottom: 18px;
position: relative;
overflow: hidden;
}
.announcement-header::before {
content: '';
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
background:
linear-gradient(45deg, rgba(229, 0, 125, 0.05) 0%, transparent 50%),
linear-gradient(-45deg, rgba(255, 224, 242, 0.1) 0%, transparent 50%);
pointer-events: none;
}
.admin-avatar-large {
width: 80px;
height: 80px;
border-radius: 50%;
overflow: hidden;
border: 3px solid var(--accent);
box-shadow: 0 4px 15px rgba(229, 0, 125, 0.3);
flex-shrink: 0;
position: relative;
z-index: 2;
}
.admin-avatar-large img {
width: 100%;
height: 100%;
object-fit: cover;
}
.header-info {
flex-grow: 1;
position: relative;
z-index: 2;
}
.header-title {
font-size: 22px;
font-weight: bold;
color: var(--accent);
margin: 10 0 8px 10;
text-shadow: 1px 1px 2px rgba(255,255,255,0.8);
}
.header-subtitle {
font-size: 14px;
color: var(--muted);
margin: 10 0 12px 10;
font-weight: 600;
}
.header-meta {
display: flex;
gap: 15px;
font-size: 12px;
color: var(--muted);
flex-wrap: wrap;
}
.header-meta a {
font-weight: 600;
background: rgba(255,255,255,0.7);
padding: 2px 8px;
border-radius: 10px;
text-decoration: none;
color: var(--accent);
transition: all 0.3s ease;
}
.header-meta a:hover {
background: var(--accent-soft);
text-decoration: underline;
}
/* ====== Основной контент ====== */
.main-content {
background: var(--panel);
border: 1px solid var(--edge);
border-radius: var(--radius);
padding: 0;
}
.content-body {
padding: 20px;
}
.content-body p {
margin: 0 0 12px;
font-size: 12px;
line-height: 1.5;
}
/* ====== Блок пользователей и эпизода в один уровень ====== */
.users-episode-row {
display: grid;
grid-template-columns: 1fr 1fr 1fr;
gap: 20px;
margin: 20px 0;
}
.user-category-side {
background: #f9f9f9;
padding: 15px;
border-radius: 8px;
border: 1px solid var(--edge);
text-align: center;
}
.category-title-side {
font-size: 14px;
font-weight: bold;
color: var(--accent);
margin: 0 0 12px 0;
display: flex;
align-items: center;
justify-content: center;
gap: 6px;
}
.users-gallery-side {
display: flex;
justify-content: center;
gap: 10px;
flex-wrap: wrap;
justify-content: right;
}
.user-avatar-tooltip {
position: relative;
justify-content: center;
width: 50px;
height: 50px;
cursor: pointer;
}
.user-avatar {
width: 100%;
height: 100%;
border-radius: 50%;
object-fit: cover;
border: 2px solid var(--accent-soft);
transition: all 0.3s ease;
}
.user-avatar:hover {
border-color: var(--accent);
transform: scale(1.1);
box-shadow: 0 3px 10px rgba(229, 0, 125, 0.2);
}
/* Всплывающая подсказка */
.tooltip-text {
visibility: hidden;
width: 150px;
background-color: var(--accent);
color: white;
text-align: center;
border-radius: 6px;
padding: 8px;
position: absolute;
z-index: 100;
bottom: 125%;
left: 50%;
transform: translateX(-50%);
opacity: 0;
transition: opacity 0.3s;
font-size: 10px;
line-height: 1.3;
}
.tooltip-text::after {
content: "";
position: absolute;
top: 100%;
left: 50%;
margin-left: -5px;
border-width: 5px;
border-style: solid;
border-color: var(--accent) transparent transparent transparent;
}
.user-avatar-tooltip:hover .tooltip-text {
visibility: visible;
opacity: 1;
}
.user-name {
font-weight: bold;
display: block;
margin-bottom: 2px;
font-size: 11px;
}
.user-role {
font-size: 9px;
opacity: 0.9;
}
/* ====== Блок лучшего эпизода ====== */
.episode-block-side {
background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
padding: 15px;
border-radius: 8px;
border: 1px solid var(--accent-soft);
text-align: center;
display: flex;
flex-direction: column;
justify-content: center;
}
.episode-info-side h5 {
margin: 0 0 8px 0;
font-size: 14px;
}
.episode-desc {
font-size: 11px;
color: var(--muted);
margin: 0 0 10px 0;
line-height: 1.3;
}
.episode-link {
color: var(--accent);
text-decoration: none;
font-weight: bold;
font-size: 11px;
transition: color 0.3s;
display: inline-block;
padding: 5px 10px;
background: var(--accent-soft);
border-radius: 4px;
}
.episode-link:hover {
color: #c40066;
text-decoration: underline;
background: #ffcce8;
}
/* ====== Блок цитаты ====== */
.quote-block-compact {
background: linear-gradient(135deg, #fff 0%, #f8f9fa 100%);
padding: 12px;
border-radius: 8px;
border-left: 3px solid var(--accent);
margin: 15px 0;
position: relative;
}
.quote-block-compact::before {
content: '"';
position: absolute;
top: 8px;
left: 8px;
font-size: 24px;
color: var(--accent-soft);
font-family: serif;
}
.quote-text {
font-style: italic;
font-size: 11px;
line-height: 1.4;
margin: 0 0 8px 0;
color: #555;
padding-left: 15px;
}
.quote-author {
font-size: 10px;
color: var(--muted);
text-align: right;
font-weight: 600;
}
/* ====== Разделитель ====== */
.section-divider-compact {
height: 40px;
background:
linear-gradient(rgba(0,0,0,0.3), rgba(0,0,0,0.4)),
url('https://i.imgur.com/eeutJYr.jpeg') center/cover;
border-radius: 6px;
margin: 20px 0;
position: relative;
display: flex;
align-items: center;
justify-content: center;
}
.divider-text {
position: relative;
z-index: 2;
color: white;
font-weight: bold;
font-size: 14px;
text-shadow: 1px 1px 3px rgba(0,0,0,0.8);
letter-spacing: 0.5px;
}
/* ====== Блок "Лучшие из лучших" ====== */
.best-of-the-best-compact {
background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
border-radius: 8px;
padding: 15px;
margin: 20px 0;
border: 1px solid var(--edge);
}
.best-section-compact {
margin-bottom: 20px;
}
.best-section-compact:last-child {
margin-bottom: 0;
}
.best-title-compact {
font-size: 14px;
font-weight: bold;
color: var(--accent);
margin: 20 20 12px 0;
text-align: center;
border-bottom: 1px solid var(--accent-soft);
padding-bottom: 6px;
}
/* ====== Адаптивность ====== */
@media (max-width: 700px) {
.users-episode-row {
grid-template-columns: 1fr;
gap: 15px;
}
.announcement-header {
flex-direction: column;
text-align: center;
padding: 20px;
gap: 15px;
}
.header-meta {
justify-content: center;
}
.admin-avatar-large {
width: 70px;
height: 70px;
}
.header-title {
font-size: 18px;
}
}
@media (max-width: 480px) {
.content-body {
padding: 15px;
}
.header-meta {
gap: 8px;
}
.header-meta a {
font-size: 10px;
padding: 1px 6px;
}
.users-gallery-side {
gap: 8px;
}
.user-avatar-tooltip {
width: 45px;
height: 45px;
}
}
.player {
width: 280px;
margin: 15px auto;
padding: 12px;
border-radius: 12px;
background: #fff;
border: 1px solid var(--edge);
box-shadow: 0 4px 8px rgba(0,0,0,0.1);
font-family: Montserrat, sans-serif;
text-align: center;
}
.controls {
display: flex;
justify-content: center;
gap: 10px;
margin-bottom: 10px;
}
.btn {
width: 36px;
height: 36px;
border: none;
border-radius: 50%;
cursor: pointer;
font-size: 16px;
color: #fff;
background: var(--accent);
transition: background 0.3s;
}
.btn:hover {
background: #c00065;
}
.progress {
-webkit-appearance: none;
appearance: none;
width: 100%;
height: 6px;
border-radius: 5px;
background: #ddd;
cursor: pointer;
}
.progress::-webkit-slider-thumb {
-webkit-appearance: none;
width: 12px;
height: 12px;
border-radius: 50%;
background: var(--accent);
cursor: pointer;
}
.time {
font-size: 11px;
color: var(--muted);
margin-top: 5px;
}
</style>
<!-- Шапка с фоновым изображением -->
<div class="announcement-header">
<div class="admin-avatar-large">
<img src="https://upforme.ru/uploads/001c/87/4a/5/t960666.gif" alt="Флоренс">
</div>
<div class="header-info">
<h3 class="header-title">НОВЕХОНЬКИЕ НОВОСТИ ОТ ФЛО</h1>
<h4 class="header-subtitle">Ссылочки на обновления:</h2>
<div class="header-meta">
<a href="https://separation.rusff.me/viewtopic.php?id=54#p9260">организации</a>
<a href="https://separation.rusff.me/viewtopic.php?id=55#p9265">способности</a>
<a href="https://separation.rusff.me/viewtopic.php?id=22#p8063">др поттера</a>
<a href="https://separation.rusff.me/viewtopic.php?id=32#p964">лотерея</a>
</div>
</div>
</div>
<!-- Основной контент -->
<div class="main-content">
<div class="content-body">
<!-- 🎵 Кастомный MP3-плеер -->
<div class="player">
<audio id="audio" src="https://forumstatic.ru/files/001c/8d/01/68361.mp3" controls></audio>
</div>
<!-- 🎵 конец плеера -->
<p>Это уже черт возьми второй выпуск и я к вам с обновками и старьем, ну куда без этого, я ж бабка. А если я буду вставлять всратую песенку сюда каждый раз, меня остальные убьют? Нет? Ну, пожалуй начнем
<b>Что мы тут натворили?</b><br><br>
— Во-первых, кто-то уже закрывает <b>девятый</b> по счету флуд, я говорил, что вы мощь, котятки! повторяюсь!<br><br>
— Во-вторых, у нас затесался <a href="https://separation.rusff.me/viewtopic.php?id=22#p8063"><b>именниник</b></a>, за уши дергаем, ну-ка бегом.<br><br>
— В-третьих, ну, конечно, мы все помним про то, что все ждут в факе, кто с кем пососался и хронологию отношений, но вы крепитесь, придется пока подождать. <br><br>
— В-четвертых, чтобы было весело и за денежки - <a href="https://separation.rusff.me/viewtopic.php?id=32#p964"><b>осталось 5 носочков</b></a>, успевайте забрать. Наш журналист желтой прессы задержался, фанаты, сами понимаете. <br><br>
— В-пятых, чтобы было, о чем задуматься, написали и принесли вам вкусной и полезной мат части: <a href="https://separation.rusff.me/viewtopic.php?id=54#p9260"><b>организации</b></a> и <a href="https://separation.rusff.me/viewtopic.php?id=55#p9265"><b>способности</b></a>.<br><br>
Так что, как там говорил Скорпиус? Мы НЕ покупаем билеты на концерт "Василисков", я дома на гитаре бренчу получше. А вот заявки посмотреть и приглядеть себе вкусную - это всегда нужно, а уж анкету побыстрее написать - ну вообще сам Мерлин прописал так сделать. <br>
<br>
Люблю, целую в шаловливые губы и желаю великолепного вечера ♥</p>
<div class="dashed-divider"></div>
<p style="text-align: center; margin-top: 20px; font-size: 11px; color: var(--muted);">
мда конечно далековато расстояние между вашими спальнями
но я справлюсь, я к этому готовился @биллиус
</div>
</div>
</div>
</div>
</div>
</div>
<script>
const audio = document.getElementById("audio");
const playBtn = document.getElementById("playBtn");
const pauseBtn = document.getElementById("pauseBtn");
const progress = document.getElementById("progress");
const current = document.getElementById("current");
const duration = document.getElementById("duration");
playBtn.addEventListener("click", () => audio.play());
pauseBtn.addEventListener("click", () => audio.pause());
audio.addEventListener("loadedmetadata", () => {
progress.max = Math.floor(audio.duration);
duration.textContent = formatTime(audio.duration);
});
audio.addEventListener("timeupdate", () => {
progress.value = Math.floor(audio.currentTime);
current.textContent = formatTime(audio.currentTime);
});
progress.addEventListener("input", () => {
audio.currentTime = progress.value;
});
function formatTime(seconds) {
const mins = Math.floor(seconds / 60);
const secs = Math.floor(seconds % 60);
return `${mins}:${secs < 10 ? "0" + secs : secs}`;
}
</script>
[/html]
[hideprofile]
- Подпись автора
Поделиться4Вчера 18:44:06
[html]<div id="ams-announcement">
<style>
.dashed-divider {
border-top: 2px dashed #e5007d; /* ярко-розовый пунктир */
margin: 10px 0; /* отступ сверху и снизу */
}
/* ====== Палитра и типографика ====== */
#ams-announcement {
--panel: #fff; --side: #f6f6f8; --ink: #2a2a2a; --muted: #777;
--edge: #ddd; --accent: #e5007d; --accent-soft: #ffe0f2;
--radius: 12px; font: 12px/1.55 Montserrat, Helvetica, sans-serif; color: var(--ink);
max-width: 800px; margin: 20px auto; position: relative;
}
#ams-announcement * { box-sizing: border-box; }
/* ====== Шапка с фоновым изображением ====== */
.announcement-header {
background:
linear-gradient(rgba(255,255,255,0.9), rgba(255,255,255,0.95)),
url('https://i.imgur.com/eeutJYr.jpeg') center/cover;
border: 1px solid var(--edge);
border-radius: var(--radius);
padding: 25px;
display: flex;
align-items: center;
gap: 20px;
margin-bottom: 18px;
position: relative;
overflow: hidden;
}
.announcement-header::before {
content: '';
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
background:
linear-gradient(45deg, rgba(229, 0, 125, 0.05) 0%, transparent 50%),
linear-gradient(-45deg, rgba(255, 224, 242, 0.1) 0%, transparent 50%);
pointer-events: none;
}
.admin-avatar-large {
width: 80px;
height: 80px;
border-radius: 50%;
overflow: hidden;
border: 3px solid var(--accent);
box-shadow: 0 4px 15px rgba(229, 0, 125, 0.3);
flex-shrink: 0;
position: relative;
z-index: 2;
}
.admin-avatar-large img {
width: 100%;
height: 100%;
object-fit: cover;
}
.header-info {
flex-grow: 1;
position: relative;
z-index: 2;
}
.header-title {
font-size: 22px;
font-weight: bold;
color: var(--accent);
margin: 10 0 8px 10;
text-shadow: 1px 1px 2px rgba(255,255,255,0.8);
}
.header-subtitle {
font-size: 14px;
color: var(--muted);
margin: 10 0 12px 10;
font-weight: 600;
}
.header-meta {
display: flex;
gap: 15px;
font-size: 12px;
color: var(--muted);
flex-wrap: wrap;
}
.header-meta a {
font-weight: 600;
background: rgba(255,255,255,0.7);
padding: 2px 8px;
border-radius: 10px;
text-decoration: none;
color: var(--accent);
transition: all 0.3s ease;
}
.header-meta a:hover {
background: var(--accent-soft);
text-decoration: underline;
}
/* ====== Основной контент ====== */
.main-content {
background: var(--panel);
border: 1px solid var(--edge);
border-radius: var(--radius);
padding: 0;
}
.content-body {
padding: 20px;
}
.content-body p {
margin: 0 0 12px;
font-size: 12px;
line-height: 1.5;
}
/* ====== Блок пользователей и эпизода в один уровень ====== */
.users-episode-row {
display: grid;
grid-template-columns: 1fr 1fr 1fr;
gap: 20px;
margin: 20px 0;
}
.user-category-side {
background: #f9f9f9;
padding: 15px;
border-radius: 8px;
border: 1px solid var(--edge);
text-align: center;
}
.category-title-side {
font-size: 14px;
font-weight: bold;
color: var(--accent);
margin: 0 0 12px 0;
display: flex;
align-items: center;
justify-content: center;
gap: 6px;
}
.users-gallery-side {
display: flex;
justify-content: center;
gap: 10px;
flex-wrap: wrap;
justify-content: right;
}
.user-avatar-tooltip {
position: relative;
justify-content: center;
width: 50px;
height: 50px;
cursor: pointer;
}
.user-avatar {
width: 100%;
height: 100%;
border-radius: 50%;
object-fit: cover;
border: 2px solid var(--accent-soft);
transition: all 0.3s ease;
}
.user-avatar:hover {
border-color: var(--accent);
transform: scale(1.1);
box-shadow: 0 3px 10px rgba(229, 0, 125, 0.2);
}
/* Всплывающая подсказка */
.tooltip-text {
visibility: hidden;
width: 150px;
background-color: var(--accent);
color: white;
text-align: center;
border-radius: 6px;
padding: 8px;
position: absolute;
z-index: 100;
bottom: 125%;
left: 50%;
transform: translateX(-50%);
opacity: 0;
transition: opacity 0.3s;
font-size: 10px;
line-height: 1.3;
}
.tooltip-text::after {
content: "";
position: absolute;
top: 100%;
left: 50%;
margin-left: -5px;
border-width: 5px;
border-style: solid;
border-color: var(--accent) transparent transparent transparent;
}
.user-avatar-tooltip:hover .tooltip-text {
visibility: visible;
opacity: 1;
}
.user-name {
font-weight: bold;
display: block;
margin-bottom: 2px;
font-size: 11px;
}
.user-role {
font-size: 9px;
opacity: 0.9;
}
/* ====== Блок лучшего эпизода ====== */
.episode-block-side {
background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
padding: 15px;
border-radius: 8px;
border: 1px solid var(--accent-soft);
text-align: center;
display: flex;
flex-direction: column;
justify-content: center;
}
.episode-info-side h5 {
margin: 0 0 8px 0;
font-size: 14px;
}
.episode-desc {
font-size: 11px;
color: var(--muted);
margin: 0 0 10px 0;
line-height: 1.3;
}
.episode-link {
color: var(--accent);
text-decoration: none;
font-weight: bold;
font-size: 11px;
transition: color 0.3s;
display: inline-block;
padding: 5px 10px;
background: var(--accent-soft);
border-radius: 4px;
}
.episode-link:hover {
color: #c40066;
text-decoration: underline;
background: #ffcce8;
}
/* ====== Блок цитаты ====== */
.quote-block-compact {
background: linear-gradient(135deg, #fff 0%, #f8f9fa 100%);
padding: 12px;
border-radius: 8px;
border-left: 3px solid var(--accent);
margin: 15px 0;
position: relative;
}
.quote-block-compact::before {
content: '"';
position: absolute;
top: 8px;
left: 8px;
font-size: 24px;
color: var(--accent-soft);
font-family: serif;
}
.quote-text {
font-style: italic;
font-size: 11px;
line-height: 1.4;
margin: 0 0 8px 0;
color: #555;
padding-left: 15px;
}
.quote-author {
font-size: 10px;
color: var(--muted);
text-align: right;
font-weight: 600;
}
/* ====== Разделитель ====== */
.section-divider-compact {
height: 40px;
background:
linear-gradient(rgba(0,0,0,0.3), rgba(0,0,0,0.4)),
url('https://i.imgur.com/eeutJYr.jpeg') center/cover;
border-radius: 6px;
margin: 20px 0;
position: relative;
display: flex;
align-items: center;
justify-content: center;
}
.divider-text {
position: relative;
z-index: 2;
color: white;
font-weight: bold;
font-size: 14px;
text-shadow: 1px 1px 3px rgba(0,0,0,0.8);
letter-spacing: 0.5px;
}
/* ====== Блок "Лучшие из лучших" ====== */
.best-of-the-best-compact {
background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
border-radius: 8px;
padding: 15px;
margin: 20px 0;
border: 1px solid var(--edge);
}
.best-section-compact {
margin-bottom: 20px;
}
.best-section-compact:last-child {
margin-bottom: 0;
}
.best-title-compact {
font-size: 14px;
font-weight: bold;
color: var(--accent);
margin: 20 20 12px 0;
text-align: center;
border-bottom: 1px solid var(--accent-soft);
padding-bottom: 6px;
}
/* ====== Адаптивность ====== */
@media (max-width: 700px) {
.users-episode-row {
grid-template-columns: 1fr;
gap: 15px;
}
.announcement-header {
flex-direction: column;
text-align: center;
padding: 20px;
gap: 15px;
}
.header-meta {
justify-content: center;
}
.admin-avatar-large {
width: 70px;
height: 70px;
}
.header-title {
font-size: 18px;
}
}
@media (max-width: 480px) {
.content-body {
padding: 15px;
}
.header-meta {
gap: 8px;
}
.header-meta a {
font-size: 10px;
padding: 1px 6px;
}
.users-gallery-side {
gap: 8px;
}
.user-avatar-tooltip {
width: 45px;
height: 45px;
}
}
.player {
width: 280px;
margin: 15px auto;
padding: 12px;
border-radius: 12px;
background: #fff;
border: 1px solid var(--edge);
box-shadow: 0 4px 8px rgba(0,0,0,0.1);
font-family: Montserrat, sans-serif;
text-align: center;
}
.controls {
display: flex;
justify-content: center;
gap: 10px;
margin-bottom: 10px;
}
.btn {
width: 36px;
height: 36px;
border: none;
border-radius: 50%;
cursor: pointer;
font-size: 16px;
color: #fff;
background: var(--accent);
transition: background 0.3s;
}
.btn:hover {
background: #c00065;
}
.progress {
-webkit-appearance: none;
appearance: none;
width: 100%;
height: 6px;
border-radius: 5px;
background: #ddd;
cursor: pointer;
}
.progress::-webkit-slider-thumb {
-webkit-appearance: none;
width: 12px;
height: 12px;
border-radius: 50%;
background: var(--accent);
cursor: pointer;
}
.time {
font-size: 11px;
color: var(--muted);
margin-top: 5px;
}
</style>
<!-- Шапка с фоновым изображением -->
<div class="announcement-header">
<div class="admin-avatar-large">
<img src="https://64.media.tumblr.com/332e8e782612767e33adaa7bea2abb80/4cedc058422508ca-23/s400x600/3efe049a595a16781cad550c8e09fdacd4f1aa74.gif" alt="Конни-малыш">
</div>
<div class="header-info">
<h3 class="header-title">ЗАПОЗДАЛЫЕ НОВОСТИ ОТ КОННИ</h1>
<h4 class="header-subtitle">Ссылочки на обновления:</h2>
<div class="header-meta">
<a href="https://separation.rusff.me/viewtopic.php?id=70#p14095">расы</a>
<a href="https://separation.rusff.me/viewtopic.php?id=74#p15074">лотерея</a>
</div>
</div>
</div>
<!-- Основной контент -->
<div class="main-content">
<div class="content-body">
<!-- 🎵 Кастомный MP3-плеер -->
<div class="player">
<audio id="audio" src="https://forumstatic.ru/files/001c/8d/01/88748.mp3" controls></audio>
</div>
<!-- 🎵 конец плеера -->
<p>Ну что, мои любимые котятки (давайте нам придумаем форумное название?), держитесь за метла (и не только за них) — мы официально прошли ЭКВАТОР тестового форума! Да-да, вы за процентами следите лучше нас, так что даже стыдно стало немножко, поэтому небольшие новости и обновления:</p>
<p>📌 <b>Во-первых:</b> чистовик планируется уже в эти выходные! ЗАКУПАЕМСЯ
<br>
(представьте, как я здесь счастлив, а вы в панике доделываете анкеты)</p>
<p>📌 <b>Во-вторых:</b> чтобы не скучали, запустили <a href="https://separation.rusff.me/viewtopic.php?id=74#p15074"><b>лотерейку</b></a>. Суть проста: выбираете носок 🧦, а в нем — вопросик из матчасти.<br>
Правильно ответили — вас ждет приз.<br>
Неправильно — ну… считайте, что вы теперь гордый обладатель виртуального дырявого носка, но с прочитанной матчастью
(осталось ТРИ носка на момент написания и пока я допишу новости - боюсь вы все разберете - Я НЕ ПЕРЕСТАЮ ПРЕКЛОНЯТЬСЯ ПЕРЕД ВАШЕЙ АКТИВНОСТЬЮ! но вы же знаете, что крепостное право домовиков отменили?)
<p>📌 <b>В-третьих:</b> у нас в матчасти появились <a href="https://separation.rusff.me/viewtopic.php?id=70#p14095"><b>расы</b></a>. Хотите бонус к харизме? Переставайте быть обычным магом и станьте хагом!</p>
<p>В общем, все идет по плану: половина пути за плечами, чистовик на горизонте, носки ждут своих героев, а я вас люблю, целую, обнимаю! ♥ ♥ ♥</p>
<div class="dashed-divider"></div>
<p style="text-align: center; margin-top: 20px; font-size: 11px; color: var(--muted);">
!</p>админ: мне показали наш диз!</p>
сепаратовцы: ПОКАЖИ!</p>
админ: меня выебет скорп!</p>
сепаратовцы: ТЕМ БОЛЕЕ ПОКАЖИ!</p>
и скажите еще что мы не дружная семья, которая стоит за счастье друг друга</p>
@чаризард
</div>
</div>
</div>
</div>
</div>
</div>
<script>
const audio = document.getElementById("audio");
const playBtn = document.getElementById("playBtn");
const pauseBtn = document.getElementById("pauseBtn");
const progress = document.getElementById("progress");
const current = document.getElementById("current");
const duration = document.getElementById("duration");
playBtn.addEventListener("click", () => audio.play());
pauseBtn.addEventListener("click", () => audio.pause());
audio.addEventListener("loadedmetadata", () => {
progress.max = Math.floor(audio.duration);
duration.textContent = formatTime(audio.duration);
});
audio.addEventListener("timeupdate", () => {
progress.value = Math.floor(audio.currentTime);
current.textContent = formatTime(audio.currentTime);
});
progress.addEventListener("input", () => {
audio.currentTime = progress.value;
});
function formatTime(seconds) {
const mins = Math.floor(seconds / 60);
const secs = Math.floor(seconds % 60);
return `${mins}:${secs < 10 ? "0" + secs : secs}`;
}
</script>
[/html]
[hideprofile]
- Подпись автора
» конред монтегю «
«наперегонки с землей на край земли»
» аврора нотт «
искра, буря, безумие