Информация

JavaScript должен быть включен. С отключенным JavaScript функционал форума недоступен.
</noscript> <!-- Мгновенные уведомления © Alex_63, 2024 --> <link rel="stylesheet" type="text/css" href="//forumstatic.ru/f/ru/bestbb/notifications.css" /> <script type="text/javascript" src="//forumstatic.ru/f/ru/bestbb/notifications.js"></script> <!-- посты из важных тем --> <script type="text/javascript"> notifications.load('common', {}); notifications.load('important', {topics: [2921,6505,8996]}); </script> <script>notifications.load('subscriptions');</script><!-- подписки на форум/тему --> <script>notifications.load('fields', {fields: [1, 2], emptyNotify: true})</script><!-- изменения в полях профиля --> <script>notifications.load('mentions');</script><!-- упоминания --> <script>notifications.load('reports');</script><!-- Жалобы --> <script>notifications.load('new_user')</script><!-- регистрация юзеров --> <script>notifications.addons.tgbot.noInvite = true;</script> <!-- убрать подсказку про телегу --> <script>notifications.load('premod')</script><!-- премодерация --> <!-- Правка для уведомлений по клику на ник, в связи с измененной версткой профиля --> <script type="text/javascript"> $('#pun-viewtopic').on('click', '.fd-name a', function(e) {$(this).parents('.post').find('.pa-author a').trigger('click');}); </script> <!-- Голосовые сообщения © Alex_63, 2024 --> <link rel="stylesheet" type="text/css" href="//forumstatic.ru/f/ru/bestbb/voice.css" /> <script type="text/javascript" src="https://forumstatic.ru/f/ru/bestbb/voice.js"></script> <script>voice.startOnOpen = false</script> <style> .voice-modal .container { overflow: hidden; } </style> <!-- иконки font awesome --> <script src="https://kit.fontawesome.com/f50f12bcbf.js" crossorigin="anonymous"></script> <!-- free --> <script src="https://kit.fontawesome.com/c06ba4bb64.js" crossorigin="anonymous"></script> <!-- pro --> <!-- Скрипт для создания анкет © Alex_63 --> <style> .postlink a[href*="questionary"] {background: #f98561; border-bottom: 6px solid #e63737;} .postlink a[href*="questionary"]:hover {background: #e63737;} </style> <script type="text/javascript"> var Questnr = {}; Questnr.groups = [1,2,6,12,16]; //Группы, которым разрешено создавать шаблоны для анкет Questnr.forums = [4,5,6,19,2,22,108,121,1,144,90,179,151,133,184,123]; //Форумы с допуском к анкетированию Questnr.title = 'Заказ от '; //Начало заголовка темы с анкетой (по умолчанию) Questnr.noedit = 0; //Запрет редактирования заполненной анкеты пользователем </script> <script type="text/javascript"> ['viewforum','viewtopic','post','edit','searchposts'].indexOf($('.punbb')[0].id.substr(4))!=-1&& $().pun_mainReady(function(){var s='script',l='/files/0007/e3/f7/32678.js'; var f=$('#pun-viewforum').length?$('link[rel="alternate"]'):$('.crumbs a[href*="viewforum"]:last'); f=+f[0].href.match(/id=(\d+)$/)[1];Questnr.forums.indexOf(f)!=-1&&document.write('<'+s+' src="'+l+'"></'+s+'>')}); </script> <script> //работающий у всех кроме динозавров вариант //Questnr.allowReply = [+$('link[rel="alternate"]')[0].href.match(/id=(\d+)$/)?.[1]]; //текущая тема var curReplyMatch = $('link[rel="alternate"]')[0].href.match(/id=(\d+)$/); //если нашел текущую тему - массив, иначе 0 if (curReplyMatch) { Questnr.allowReply = [+curReplyMatch[1]]; } </script> <script> // Проверенные спецы var verifiedData = [ { id: '2', color: 'orange', fld: '<span class="material-symbols-outlined red rus" title="Ведущий специалист: <b>UI/UX дизайн</b>, <b>CSS/Верстка</b>, Javascript">verified</span><span class="material-symbols-outlined orange eng" title="Qualified developer">verified</span>' }, { id: '7032', color: 'orange', fld: '<span class="material-symbols-outlined red rus" title="Ведущий специалист: <b>PHP/Javascript</b>">verified</span><span class="material-symbols-outlined orange eng" title="Qualified developer">verified</span>' }, { id: '7907', color: 'orange', fld: '<span class="material-symbols-outlined red rus" title="Ведущий специалист: <b>PHP/Javascript</b>">verified</span><span class="material-symbols-outlined orange eng" title="Qualified developer">verified</span>' }, { id: '7006', color: 'orange', fld: '<span class="material-symbols-outlined red rus" title="Ведущий специалист: <b>Вебдизайн</b>, <b>Графический дизайн</b>">verified</span><span class="material-symbols-outlined orange eng" title="Qualified developer">verified</span>' }, { id: '7181', color: 'orange', fld: '<span class="material-symbols-outlined red rus" title="Ведущий специалист: <b>DigitalArt</b> - цифровой рисунок, pixelart, анимация">verified</span><span class="material-symbols-outlined orange eng" title="Qualified developer">verified</span>' }, { id: '7130', color: 'orange', fld: '<span class="material-symbols-outlined orange rus" title="Проверенный специалист: <b>CSS/Верстка</b>">verified</span><span class="material-symbols-outlined orange eng" title="Qualified developer">verified</span>' }, { id: '7639', color: 'orange', fld: '<span class="material-symbols-outlined orange rus" title="Проверенный специалист: <b>Вебдизайн</b>">verified</span><span class="material-symbols-outlined orange eng" title="Qualified developer">verified</span>' }, { id: '6797', color: 'orange', fld: '<span class="material-symbols-outlined orange rus" title="Проверенный специалист: <b>Javascript</b>">verified</span><span class="material-symbols-outlined orange eng" title="Qualified developer">verified</span>' }, { id: '6489', color: 'orange', fld: '<span class="material-symbols-outlined orange rus" title="Проверенный специалист: <b>PHP/Javascript</b>">verified</span><span class="material-symbols-outlined orange eng" title="Qualified developer">verified</span>' }, { id: '8926', color: 'orange', fld: '<span class="material-symbols-outlined orange rus" title="Проверенный специалист: <b>Вебдизайн</b>, <b>Верстка</b>">verified</span><span class="material-symbols-outlined orange eng" title="Qualified developer">verified</span>' }, { id: '5063', color: 'orange', fld: '<span class="material-symbols-outlined orange rus" title="Проверенный специалист: <b>Вебдизайн</b>">verified</span><span class="material-symbols-outlined orange eng" title="Qualified developer">verified</span>' }, { id: '7884', color: 'orange', fld: '<span class="material-symbols-outlined orange rus" title="Проверенный специалист: <b>дизайны для форумов MyBB</b>">verified</span><span class="material-symbols-outlined orange eng" title="Qualified developer">verified</span>' } ]; // Должности var dutyData = [ { id: '2', color: 'red', fld: '<li class="fd-duty rus">Главный администратор</li><li class="fd-duty eng">System support administrator</li>', }, { id: '7842', color: 'green', fld: '<li class="fd-duty rus">Модератор каталога графики</li><li class="fd-duty eng">Graphics Catalog Moderator</li>', }, { id: '7151', color: 'green', fld: '<li class="fd-duty rus">Модератор ролевых разделов</li><li class="fd-duty eng">Role-Playing Sections Moderator</li>', }, { id: '6995', color: 'green', fld: '<li class="fd-duty rus">Модератор стримов</li><li class="fd-duty eng">Streams Moderator</li>' }, { id: '9439', color: 'green', fld: '<li class="fd-duty rus">Модератор системы бонусов</li><li class="fd-duty eng">Bonus System Moderator</li>' }, { id: '9734', color: 'green', fld: '<li class="fd-duty rus">Ассистент англоязычной версии</li><li class="fd-duty eng">English Content Assistant</li>' }, { id: '9758', color: 'green', fld: '<li class="fd-duty rus">SMM менеджер</li><li class="fd-duty eng">SMM Manager</li>' } ]; // группы с доступом к закладкам var BookmGroups = [1,2,6,16,4,8,12]; </script> <!-- Редирект на портал <script> var portal = '/pages/index'; var TimeRedirect = 24*60*60; //Редирект при последнем посещении более суток var url = document.URL.split('#')[0]; if(!localStorage.LastVisit || RequestTime-localStorage.LastVisit > TimeRedirect){ if((url+'%a').split('/%')[1]=='a'&&url.indexOf('mod')==-1)location.href=portal; }localStorage.LastVisit = RequestTime; $(document).ready(function(){ var a = $('#pun-navlinks #navindex a')[0]; a.href = a.href+'=&forum' }); </script> --> <!-- стили спец постов --> <link rel="stylesheet" type="text/css" href="https://forumstatic.ru/files/0007/e3/f7/34232.css?v=7"> <!-- Yandex.Metrika counter --> <script type="text/javascript" > (function(m,e,t,r,i,k,a){m[i]=m[i]||function(){(m[i].a=m[i].a||[]).push(arguments)}; m[i].l=1*new Date(); for (var j = 0; j < document.scripts.length; j++) {if (document.scripts[j].src === r) { return; }} k=e.createElement(t),a=e.getElementsByTagName(t)[0],k.async=1,k.src=r,a.parentNode.insertBefore(k,a)}) (window, document, "script", "https://mc.yandex.ru/metrika/tag.js", "ym"); ym(93794845, "init", { clickmap:true, trackLinks:true, accurateTrackBounce:true, webvisor:true }); </script> <noscript><div><img src="https://mc.yandex.ru/watch/93794845" style="position:absolute; left:-9999px;" alt="" /></div></noscript> <!-- /Yandex.Metrika counter --> </div> <div id="pun-title" class="section"> <table id="title-logo-table" cellspacing="0"> <tbody id="title-logo-tbody"> <tr id="title-logo-tr"> <td id="title-logo-tdl" class="title-logo-tdl"> <h1 class="title-logo"><span>ForumD.ru - Дизайн, графика, скрипты, техническая поддержка для форумов и сайтов</span></h1> </td> <td id="title-logo-tdr" class="title-logo-tdr"><!-- banner_top --></td> </tr> </tbody> </table> </div> <div id="pun-navlinks" class="section"> <h2><span>Меню навигации</span></h2> <ul class="container"> <li id="navindex"><a href="https://forumd.ru/"><span>Форум</span></a></li> <li id="navuserlist"><a href="https://forumd.ru/userlist.php" rel="nofollow"><span>Участники</span></a></li> <li id="navrules"><a href="https://forumd.ru/misc.php?action=rules" rel="nofollow"><span>Правила</span></a></li> <li id="navsearch"><a href="https://forumd.ru/search.php" rel="nofollow"><span>Поиск</span></a></li> <li id="navregister"><a href="https://forumd.ru/register.php" rel="nofollow"><span>Регистрация</span></a></li> <li id="navlogin"><a href="https://forumd.ru/login.php" rel="nofollow"><span>Войти</span></a></li> </ul> </div> <div id="pun-ulinks" class="section" onclick="void(0)"> <h2><span>Пользовательские ссылки</span></h2> <ul class="container"> <li class="item1"><a href="https://forumd.ru/search.php?action=show_recent">Активные темы</a></li> </ul> </div> <!--noindex--> <div id="pun-announcement" class="section"> <h2><span>Объявление</span></h2> <div class="container"> <div class="html-box"> <!-- Юзер-меню --> <div id="user-menu" class="side-menu"> <div class="close"><i class="material-symbols-outlined">cancel</i></div> <div class="u-ava"></div> <div class="fd-guest g-inf rus"> <b>РЕГИСТРАЦИЯ</b> на форуме позволит: <li>скачивать <i>дизайны</i> и видеть <i>коды скриптов</i></li> <li>оставлять <i>ссылки</i> на сайты/картинки</li> <li><i>оформлять</i> заказы</li> <li>отправлять <i>личные</i> сообщения</li> <li><i>рекламировать</i> свои форумы/сайты или услуги</span> </div> <div class="fd-guest g-inf eng"> <b>REGISTRATION</b> on the forum allows you to: <li>download <i>designs</i> and view <i>script codes</i></li> <li>leave <i>links</i> to websites/images</li> <li><i>place</i> orders</li> <li>send <i>private</i> messages</li> <li><i>advertise</i> your forums/websites or services</li> </div> <ul class="u-menu"> <li class="fd-guest rus"><a href='/register.php'><span class='material-icons'>person</span> Регистрация</a></li> <li class="fd-guest rus"><a href='/login.php'><span class='material-icons'>login</span> Вход</a></li> <li class="fd-guest rus"><a href='/viewtopic.php?id=4506'><span class='material-icons'>message</span> Обратная связь</a></li> <li class="fd-guest eng"><a href='/register.php'><span class='material-icons'>person</span> Register</a></li> <li class="fd-guest eng"><a href='/login.php'><span class='material-icons'>login</span> Login</a></li> <li class="fd-guest eng"><a href='/viewtopic.php?id=7165'><span class='material-icons'>message</span> Feedback</a></li> </ul> </div> <!-- Сайдбар --> <div id="sidebar" class="rus"> <div class="u-ava" title="Меню профиля"></div> <div class="u-notif fd-user icon remake" title="Уведомления" id="notify-link" data-number-unread="0"> <a><em class="notify-link"><strong class="unreads">0</strong></em></a> </div> <div class="u-pm fd-user icon remake" title="Личные сообщения"></div> <div class="u-options icon"> <i class="material-symbols-outlined dark" title="Включить темную тему">dark_mode</i> <i class="material-symbols-outlined light" title="Включить светлую тему">light_mode</i> </div> <div class="u-arrow icon"> <div title="Наверх страницы" class="toTop"><i class="material-symbols-outlined">arrow_circle_up</i></div> <div title="Вниз страницы" class="onBottom"><i class="material-symbols-outlined">arrow_circle_down</i></div> </div> </div> <div id="sidebar" class="eng"> <div class="u-ava" title="Profile menu"></div> <div class="u-notif fd-user icon remake" title="Notifications" id="notify-link" data-number-unread="0"> <a><em class="notify-link"><strong class="unreads">0</strong></em></a> </div> <div class="u-pm fd-user icon remake" title="Private messages"></div> <div class="u-arrow icon"> <div title="Scroll to top" class="toTop"><i class="material-symbols-outlined">arrow_circle_up</i></div> <div title="Scroll to bottom" class="onBottom"><i class="material-symbols-outlined">arrow_circle_down</i></div> </div> </div> <!--кнопки стрелки вверх вниз--> <script type="text/javascript"> $(function(){ $(window).scroll(function(){ if ($(window).scrollTop() > 250) { $(".toTop").fadeIn("slow"); } else { $(".toTop").fadeOut("slow"); } if ($(window).scrollTop() < $(document).height() - 999) { $(".onBottom").fadeIn("slow"); } else { $(".onBottom").fadeOut("slow"); } }); $(".toTop").click(function(){ $("html, body").animate({scrollTop: 0}, "slow"); }); $(".onBottom").click(function(){ $("html, body").animate({scrollTop: $(document).height()}, "slow"); }); }); </script> <!-- Меню --> <div id="nav"><ul class="inner"> <li id="logo"></li> <!-- <li id="navindex"><a href="/pages/index"><i class="material-symbols-outlined">home</i><span class="rus">Главная</span><span class="eng">Home</span></a></li> --> <li id="navforum"><a href="/=&forum"><i class="material-symbols-outlined">forum</i><span class="rus">Форум</span><span class="eng">Forum</span></a></li> <li id="navactive"><a href="/search.php?action=show_recent"><i class="material-symbols-outlined">chat</i><span class="rus">Активные темы</span><span class="eng">Active topics</span></a></li> <li id="navmembers"><a href="/userlist.php"><i class="material-symbols-outlined">group</i><span class="rus">Участники</span><span class="eng">Members</span></a></li> <li id="navsearch"><a href="/search.php"><i class="material-symbols-outlined">search</i><span class="rus">Поиск</span><span class="eng">Search</span></a></li> <li id="navadmin"><a href="/admin_index.php"><i class="material-symbols-outlined">shield_person</i><span class="rus">Админка</span><span class="eng">Admin</span></a></li> <li id="navguest"><a href="/register.php"><i class="material-symbols-outlined">passkey</i><span class="rus">Регистрация</span><span class="eng">Register</span></a></li> <li id="navguest"><a href="/login.php"><i class="material-symbols-outlined">login</i><span class="rus">Вход</span><span class="eng">Login</span></a></li> </ul></div> <!-- Смена языка --> <div id="langChange"><a class="material-icons">language</a><span class="eng"><b>Eng</b>/<a>Ru</a></span><span class="rus"><a>Eng</a>/<b>Ru</b></span></div> <!-- СЛАЙДЕР --> <div class="fd-slider"><!-- НАЧАЛО --> <div class="slide rus" data-bg="https://forumupload.ru/uploads/0007/e3/f7/2/236383.jpg"> <div class="content"> <h3>&#127911; Подкаст «НЕ<b>ТЕ</b>РОЛЕВЫЕ»</h3> <p> Рассказываем и обсуждаем Форумные Ролевые Игры (ФРПГ). </p> <a id="store" target="_blank" href="https://t.me/neterolevye">Telegram</a> <a id="store" href="/viewtopic.php?id=8954">Обсудить</a> </div> </div> <div class="slide rus" data-bg="https://forumupload.ru/uploads/0007/e3/f7/2/808399.jpg"> <div class="content"> <h3>&#127809; Что такое осень? <b>Конкурс</b> осенних дизайнов!</h3> <p> Как вы выражаете осень на своём форуме/сайте? Что осень для вас? <br> Вас ждут вкусные призы за участие, призовой фонд растет вместе с числом участников! <br> Все участники гарантировано получают <b>рекламные места</b>. </p> <a id="store" href="/viewtopic.php?id=8918#p207189">Участвовать</a> </div> </div> <div class="slide rus" data-bg="https://forumupload.ru/uploads/0007/e3/f7/2/965290.jpg"> <div class="content"> <h3>&#128293; Акция! Осенние <b>скидки</b> на Мгновенные уведомления</h3> <p> Оплачивая уведомления <b>до 1 ноября 2024</b>, вы можете получить скидки в 10% или 20% за наградные баллы! <br> <a href="/viewtopic.php?id=8045">Скрипт уведомлений</a> поддерживается уже более 5 лет и имеет много бесплатных дополнений. <br> Мы принимаем <b>все способы оплаты из любых стран</b>. </p> <a id="store" href="/viewtopic.php?id=8924#p207222">Подробности</a> </div> </div> <div class="slide rus" data-bg="https://forumupload.ru/uploads/0007/e3/f7/2/993126.jpg"> <div class="content"> <h3>&#10084;&#65039; Поддержи проект! Стань модератором!</h3> <p> Разыскиваются модераторы на должности: <br> Модератор вебмастерских разделов, Ассистент англоязычной версии, Видеомонтажер и другие<br> <a href="/viewtopic.php?id=5787#p134326">Посмотреть вакансии и условия.</a> </p> <a id="store" href="/viewtopic.php?id=5787#p134326">Подать заявку</a> </div> </div> <div class="slide rus" data-bg="https://forumupload.ru/uploads/0007/e3/f7/2/435761.jpg"> <div class="content"> <h3>&#128140; <b>Акция!</b> Подписка, лайк, коммент, репост!</h3> <p> В рамках акции вы можете помочь нам в продвижении и заработать НАГРАДНЫЕ БАЛЛЫ.<br> НБ можно обменивать на платные скрипты, скидки на заказы, рекламу на нашем форуме и т.д. <br> Подробнее о том, где еще можно потратить баллы, можно <a href="https://forumd.ru/viewtopic.php?id=8324#p206561">в теме акции</a>. </p> <a id="store" href="https://forumd.ru/viewtopic.php?id=8324#p206561">Участвовать</a> </div> </div> <div class="slide eng" data-bg="https://forumupload.ru/uploads/0007/e3/f7/2/209339.jpg"> <div class="content"> <h3>&#127775; SPECIAL OFFER: We distribute designs for free</h3> <p> Finalizing the layout for your project;<br> Developing a style code; <br> Mobile version included if you wish.<br> </p> <a id="store" href="/viewtopic.php?id=7243">Details</a> </div> </div> <div class="slide eng" data-bg="https://forumupload.ru/uploads/0007/e3/f7/2/209339.jpg"> <div class="content"> <h3>&#10084;&#65039; Support the project</h3> <p> If you want to help us:<br> <a href=/viewtopic.php?id=5787>Become a moderator</a><br> <a href="/viewtopic.php?id=7167">Suggestions</a> &#8226; <a href="/viewtopic.php?id=7168">Reviews</a> </p> <a id="store" href="/viewtopic.php?id=6616">Details</a> </div> </div> <!-- КОНЕЦ --><div class="fd-slider-dots"></div></div> <div class="bot-hr"></div> <!-- мини объявы --> <div id="ann" class="rus"> &#127809; Конкурс! <a href="/viewtopic.php?id=8918#p207189" target='blank'>Что такое осень? Конкурс осенних дизайнов!</a> Вас ждут вкусные призы за участие, призовой фонд растет вместе с числом участников! </div> <!-- <div id="ann" class="rus"> &#128140; Акция! <a href="/viewtopic.php?id=8324#p206561" target='blank'>Подписка, лайк, коммент, репост!</a> Поделись нашими YouTube видео и получи наградные баллы.</div> --> <!-- <div id="ann" class="rus">Требуются модераторы! <a href="https://forumd.ru/viewtopic.php?id=5787#p134326" target='blank'>Посмотреть вакансии и подать заявку.</a> Денежную оплату и "плюшки" гарантируем &#128178; </div> --> <!-- <div id="ann" class="rus"> &#10071; &#10071; &#10071; На форуме временные проблемы с регистрацией пользователей! &#10071; &#10071; &#10071; <br> Если вам не пришел пароль от аккаунта на почту пишите сюда свой никнейм и e-mail: <a href="/viewtopic.php?id=4506" target='blank'>Диалог с администрацией</a> <br>Администраторы зарегистрируют и активируют аккаунт вручную. </div> --> <!-- <div id="ann" class="rus"> &#127876; <a href="/viewtopic.php?id=2921&p=21#p191508" target='blank'>Подборка новогодних украшений вашего проекта</a></div> --> <!-- --><div id="ann" class="eng"> &#10071; &#10071; &#10071; Technical work is underway. We'll fix it soon. :) If you're english-speaker and want to use our forum, <a href="https://i.imgur.com/mg0OGtT.png" target='blank'>switch to the russian language.</a> This is temporary, until the works with multi-language option will be done. Sorry for the inconvenience. </div> <!-- <div id="ann" class="rus moderator-ann">Пожалуйста <a href="/viewtopic.php?id=7206" target='blank'>заполните анкету</a> и расскажите о вашей готовности к англоязычным пользователям. </div> --> <!-- Скрипт слайдера --> <script type="text/javascript" src="https://forumstatic.ru/files/0007/e3/f7/14086.js?v=2" async></script> </div> </div> </div> <!--/noindex--> <div id="pun-status" class="section"> <h2><span>Информация о пользователе</span></h2> <p class="container"> <span class="item1">Привет, Гость!</span> <span class="item2"><a href="/login.php" rel="nofollow">Войдите</a> или <a href="/register.php" rel="nofollow">зарегистрируйтесь</a>.</span> </p> </div> <div id="pun-break1" class="divider"><hr /></div> <div id="pun-crumbs1" class="section"> <p class="container crumbs"><strong>Вы здесь</strong> <em>&#187;&#160;</em><a href="https://forumd.ru/">ForumD.ru - Дизайн, графика, скрипты, техническая поддержка для форумов и сайтов</a> <em>&#187;&#160;</em><a href="https://forumd.ru/viewforum.php?id=123">Коворкинг: обмен вдохновением и опытом</a> <em>&#187;&#160;</em>Эксперименты Will O The Wisp</p> </div> <div id="pun-break2" class="divider"><hr /></div> <!-- banner_mini_top --> <div id="pun-main" class="main multipage"> <h1><span>Эксперименты Will O The Wisp</span></h1> <div class="linkst"> <div class="pagelink">Страница: <a class="prev" href="https://forumd.ru/viewtopic.php?id=7075&amp;p=17">&laquo;</a>&#160;&#160;<a href="https://forumd.ru/viewtopic.php?id=7075">1</a>&#160;<span class="ellipsis">&#8230;</span>&#160;<a href="https://forumd.ru/viewtopic.php?id=7075&amp;p=16">16</a>&#160;<a href="https://forumd.ru/viewtopic.php?id=7075&amp;p=17">17</a>&#160;<strong>18</strong>&#160;<a href="https://forumd.ru/viewtopic.php?id=7075&amp;p=19">19</a>&#160;<a href="https://forumd.ru/viewtopic.php?id=7075&amp;p=20">20</a>&#160;<a href="https://forumd.ru/viewtopic.php?id=7075&amp;p=21">21</a>&#160;&#160;<a class="next" href="https://forumd.ru/viewtopic.php?id=7075&amp;p=19">&raquo;</a></div> <div class="postlink"><span><a href="https://forumd.ru/post.php?tid=7075" rel="nofollow">Ответить</a></span></div> </div> <div id="topic_t7075" class="topic"> <h2><span class="item1">Сообщений</span> <span class="item2">171 страница 180 из 203</span></h2> <div id="p181296" class="post toppost" data-posted="1677835764" data-user-id="7629" data-group-id="8"> <h3><span><a class="sharelink" rel="nofollow" href="#p181296" onclick="return false;">Поделиться</a><strong>171</strong><a class="permalink" rel="nofollow" href="https://forumd.ru/viewtopic.php?id=7075&amp;p=18#p181296">03.03.23 12:29</a></span></h3> <div class="container"> <div class="post-author"> <ul> <li class="pa-author"><span class="acchide">Автор:&nbsp;</span><a href="https://forumd.ru/profile.php?id=7629" rel="nofollow">Will O The Wisp</a></li> <li class="pa-title">Участник</li> <li class="pa-avatar item2"><img src="https://forumavatars.ru/img/avatars/0007/e3/f7/7629-1628896044.jpg" alt="Will O The Wisp" title="Will O The Wisp" /></li> <li class="pa-last-visit"><span class="fld-name">Последний визит:</span><br />10.12.24 18:09</li> <li class="pa-respect"><span class="fld-name">Уважение:</span> <span>+594</span></li> <li class="pa-fld2"><img src="https://forumstatic.ru/files/0007/e3/f7/71606.svg" alt="Стажер" title="Стажер" /> <img src="https://forumstatic.ru/files/0007/e3/f7/43425.svg" alt="Изыскатель" title="Изыскатель" /></li> </ul> </div> <div class="post-body"> <div class="post-box"> <div id="p181296-content" class="post-content"> <p>стикер-анимация</p><div class="code-box"><strong class="legend">Код:</strong><div class="blockcode"><div class="scrollbox" style="height: 35em"><pre>[html] &lt;style&gt; .anim750{ transition: all 750ms ease-in-out; } #Awesome{ position: relative; width: 180px; height: 180px; margin: 0 auto; backface-visibility: hidden; } #Awesome .sticky{ transform: rotate(45deg); } #Awesome:hover .sticky{ transform: rotate(10deg); } #Awesome .sticky{ position: absolute; top: 0; left: 0; width:180px; height: 180px; } #Awesome .reveal .circle{ box-shadow: 0 1px 0px rgba(0,0,0,.15); font-family: 'helvetica neue', arial; font-weight: 200; line-height: 140px; text-align: center; cursor: pointer; } #Awesome .reveal .circle{ background: #fafafa; } #Awesome .circle_wrapper{ position: absolute; width: 180px; height: 180px; left: 0px; top: 0px; overflow: hidden; } #Awesome .circle{ position: absolute; width: 140px; height: 140px; margin: 20px; border-radius: 999px; } #Awesome .back{ height: 10px; top: 30px; } #Awesome:hover .back{ height: 90px; top: 110px; } #Awesome .back .circle{ margin-top: -130px; background-color: #fbec3f; background-image: -webkit-linear-gradient(bottom, rgba(251,236,63,.0), rgba(255,255,255,.8)); } #Awesome:hover .back .circle{ margin-top: -50px; } #Awesome .front{ height: 150px; bottom: 0; top: auto; -webkit-box-shadow: 0 -140px 20px -140px rgba(0,0,0,.3); } #Awesome:hover .front{ height: 70px; -webkit-box-shadow: 0 -60px 10px -60px rgba(0,0,0,.1); } #Awesome .front .circle{ margin-top: -10px; background: #fbec3f; background-image: -webkit-linear-gradient(bottom, rgba(251,236,63,.0) 75%, #f7bb37 95%); background-image: -moz-linear-gradient(bottom, rgba(251,236,63,.0) 75%, #f7bb37 95%); background-image: linear-gradient(bottom, rgba(251,236,63,.0) 75%, #f7bb37 95%); } #Awesome h4{ font-family: 'helvetica neue', arial; font-weight: 200; text-align: center; position: absolute; width: 180px; height: 140px; line-height: 140px; transition: opacity 50ms linear 400ms; } #Awesome:hover h4{ opacity: 0; transition: opacity 50ms linear 300ms; } #Awesome:hover .front .circle{ margin-top: -90px; background-color: #e2d439; background-position: 0 100px; } &lt;/style&gt; &lt;div id=&quot;Awesome&quot; class=&quot;anim750&quot;&gt; &lt;div class=&quot;reveal circle_wrapper&quot;&gt; &lt;div class=&quot;circle&quot;&gt;У того есть паренек&lt;/div&gt; &lt;/div&gt; &lt;div class=&quot;sticky anim750&quot;&gt; &lt;div class=&quot;front circle_wrapper anim750&quot;&gt; &lt;div class=&quot;circle anim750&quot;&gt;&lt;/div&gt; &lt;/div&gt; &lt;/div&gt; &lt;h4&gt;Кто откроет уголок&lt;/h4&gt; &lt;div class=&quot;sticky anim750&quot;&gt; &lt;div class=&quot;back circle_wrapper anim750&quot;&gt; &lt;div class=&quot;circle anim750&quot;&gt;&lt;/div&gt; &lt;/div&gt; &lt;/div&gt; &lt;/div&gt; [/html]</pre></div></div></div> </div> <div class="post-rating"><p class="container"><a title="Вы не можете дать оценку участнику">+2</a></p></div> </div> <div class="clearer"><!-- --></div> </div> <div class="post-links"> <ul> <li class="pl-quote"><a href="javascript:quote('Will O The Wisp', 181296)">Цитировать<span class="acchide">&nbsp;Сообщение 171</span></a></li> </ul> </div> </div> </div> <div id="p181475" class="post altstyle" data-posted="1678354244" data-user-id="7629" data-group-id="8"> <h3><span><a class="sharelink" rel="nofollow" href="#p181475" onclick="return false;">Поделиться</a><strong>172</strong><a class="permalink" rel="nofollow" href="https://forumd.ru/viewtopic.php?id=7075&amp;p=18#p181475">09.03.23 12:30</a></span></h3> <div class="container"> <div class="post-author"> <ul> <li class="pa-author"><span class="acchide">Автор:&nbsp;</span><a href="https://forumd.ru/profile.php?id=7629" rel="nofollow">Will O The Wisp</a></li> <li class="pa-title">Участник</li> <li class="pa-avatar item2"><img src="https://forumavatars.ru/img/avatars/0007/e3/f7/7629-1628896044.jpg" alt="Will O The Wisp" title="Will O The Wisp" /></li> <li class="pa-last-visit"><span class="fld-name">Последний визит:</span><br />10.12.24 18:09</li> <li class="pa-respect"><span class="fld-name">Уважение:</span> <span>+594</span></li> <li class="pa-fld2"><img src="https://forumstatic.ru/files/0007/e3/f7/71606.svg" alt="Стажер" title="Стажер" /> <img src="https://forumstatic.ru/files/0007/e3/f7/43425.svg" alt="Изыскатель" title="Изыскатель" /></li> </ul> </div> <div class="post-body"> <div class="post-box"> <div id="p181475-content" class="post-content"> <p>игра-кликер<br /><a href="https://codepen.io/grantjenkins/pen/wvErxmz" rel="nofollow ugc" target="_blank">https://codepen.io/grantjenkins/pen/wvErxmz</a></p><div class="code-box"><strong class="legend">Код:</strong><div class="blockcode"><div class="scrollbox" style="height: 35em"><pre>[html] &lt;style&gt; /* global css variables */ :root { --how-color: rgba(249, 133, 70, 0.7); --scores-color: rgba(46, 191, 158, 0.7); --game-color: rgba(170, 145, 224, 0.7); --play-color: rgba(30, 152, 166, 0.8); --special-color: rgba(173, 168, 28, 0.7); } #box34{ text-align: center; margin:0; padding:0; font-family: 'Handlee', cursive; font-size:18px; color: rgba(255, 255, 255, 0.75); background: radial-gradient(#f09e7287 15%, transparent 16%) 0 0, radial-gradient(#f09e7287 15%, transparent 16%) 8px 8px, radial-gradient(rgba(255,255,255,.1) 15%, transparent 20%) 0 1px, radial-gradient(rgba(255,255,255,.1) 15%, transparent 20%) 8px 9px; background-size:16px 16px; background-color:#615d5d; background-attachment: fixed; min-height: 500px; } /* top navigation */ #header { font-size: 45px; } header nav { position: fixed; top: 0px; height:auto; padding:0px; width: 100%; transition: transform 0.6s; z-index:20; } header nav.begone { transform: translate3d(0, -100%, 0); } nav button{ position:absolute; width:100%; left:0; background-color: rgb(51, 50, 51); color: rgb(255, 255, 255); padding: 10px; border: none; font-size: 17px; transition: background-color 0.3s, opacity 0.3s linear; outline: none; height:40px; } #homeButton { background-color: rgba(222, 85, 88, 0.7); left:0; width:50px; } #howButton { background-color: var(--how-color); left:50px; width: calc((100% - 50px) / 3); } #scoresButton { background-color: var(--scores-color); left: calc(((100% - 50px) / 3) + 50px); width: calc((100% - 50px) / 3); } #gameButton { background-color: var(--game-color); left: calc(((100% - 50px) / 3 * 2) + 50px); width: calc((100% - 50px) / 3); } button:hover { opacity: 0.8; cursor: pointer; } button.active { background-color: rgba(0, 0, 0, 0.2) !important; } button { font-family: 'Handlee', cursive; } /* handles the page transitions */ .showPage{ -webkit-animation: showPage 2s ease forwards; -moz-animation: showPage 2s ease forwards; -o-animation: showPage 2s ease forwards; animation: showPage 2s ease forwards; } /* style of main content */ #content { margin-top:40px; padding: 10px; } #content h1 { margin-top:30px; font-size:65px; font-family: 'Indie Flower', cursive; margin-bottom:0px; color: rgba(255, 255, 255, 0.25); } #content #how article { margin-top: 60px; } /* styling of the wolves */ .wolves div { position: absolute; width:100px; height:90px; } .wolves .top-left { top: 60px; left: 20px; -webkit-animation: wolf-rotate 4s linear infinite; -moz-animation: wolf-rotate 4s linear infinite; -o-animation: wolf-rotate 4s linear infinite; animation: wolf-rotate 4s linear infinite; } .wolves .top-right { top: 60px; left: calc(100% - 120px); -webkit-animation: wolf-rotate 4s linear -2s infinite; -moz-animation: wolf-rotate 4s linear -2s infinite; -o-animation: wolf-rotate 4s linear -2s infinite; animation: wolf-rotate 4s linear -2s infinite; } .wolf div { position: absolute; } .wolf .wolf-head { width: 0; height: 0; top: 0px; left: 0px; border-style: solid; border-width: 90px 50px 0 50px; border-color: #888 transparent transparent transparent; border-radius:100%; -webkit-animation: wolf-head-change 4s linear infinite; -moz-animation: wolf-head-change 4s linear infinite; -o-animation: wolf-head-change 4s linear infinite; animation: wolf-head-change 4s linear infinite; } .wolf .wolf-ear-left { width: 0; height: 0; top: -20px; left: 10px; border-style: solid; border-width: 0 15px 40px 15px; border-color: transparent transparent #888 transparent; transform: rotate(-20deg); } .wolf .wolf-ear-right { width: 0; height: 0; top: -20px; left: 60px; border-style: solid; border-width: 0 15px 40px 15px; border-color: transparent transparent #888 transparent; transform: rotate(20deg); } .wolf .wolf-eye-left { width: 0; height: 0; top: 25px; left: 60px; border-style: solid; border-width: 18px 14px 0 0; border-color: #444 transparent transparent transparent; transform: skew(-15deg); } .wolf .wolf-eye-right { width: 0; height: 0; top: 25px; left: 25px; border-style: solid; border-width: 0 14px 18px 0; border-color: transparent #444 transparent transparent; transform: skew(15deg); } .wolf .wolf-eyeball-left { width: 5px; height: 5px; top: 27px; left: 63px; background-color: rgb(255, 255, 255); border-radius:50%; } .wolf .wolf-eyeball-right { width: 5px; height: 5px; top: 27px; left: 31px; background-color: rgb(255, 255, 255); border-radius:50%; } .wolf .wolf-nose { width: 0; height: 0; top: 72px; left: 45px; border-style: solid; border-width: 12px 5px 0 5px; border-color: #444444 transparent transparent transparent; } /* styling of the box on the home page */ #box { padding: 20px; width: 300px; height:275px; text-align: center; margin: auto; margin-top: 20px; border-radius: 0px; box-shadow: 0 0 20px rgba(0, 0, 0, 0.9); background-color: rgba(92, 91, 92, 0.4); } #box #creator { opacity: 0.5; font-size: 16px; } #box .home-buttons { width: 100px; height: 100px; margin: 20px 10px; border: none; outline: none; transition: background-color 0.3s, opacity 0.3s linear, border-radius 0.4s ease-out; color: rgb(255, 255, 255); font-size: 18px; box-shadow: 0 0 20px rgba(0, 0, 0, 0.9); } #box #homeHowButton { background-color: var(--how-color); border-radius: 0 40px; -webkit-animation: rotate 1.5s ease-out 1.5s forwards; -moz-animation: rotate 1.5s ease-out 1.5s forwards; -o-animation: rotate 1.5s ease-out 1.5s forwards; animation: rotate 1.5s ease-out 1.5s forwards; } #box #homePlayButton { background-color: var(--game-color); border-radius: 40px 0; -webkit-animation: rotate 1.5s ease-in 1.5s reverse forwards; -moz-animation: rotate 1.5s ease-in 1.5s reverse forwards; -o-animation: rotate 1.5s ease-in 1.5s reverse forwards; animation: rotate 1.5s ease-in 1.5s reverse forwards; } #box .home-buttons:hover, #box #homeHowButton:hover, #box #homePlayButton:hover { opacity: 0.8; cursor: pointer; border-radius: 100%; } #box #welcome { font-size: 20px; } /* styling of the text on the how page */ #how .line { position: relative; margin: 0 auto; white-space: nowrap; line-height: 40px; overflow: hidden; opacity: 0; } #how .line-1 { -webkit-animation: fadein 1s ease-in 1.5s forwards; -moz-animation: fadein 1s ease-in 1.5s forwards; -o-animation: fadein 1s ease-in 1.5s forwards; animation: fadein 1s ease-in 1.5s forwards; } #how .line-2 { -webkit-animation: fadein 1s ease-in 3.5s forwards; -moz-animation: fadein 1s ease-in 3.5s forwards; -o-animation: fadein 1s ease-in 3.5s forwards; animation: fadein 1s ease-in 3.5s forwards; } #how .line-3 { -webkit-animation: fadein 1s ease-in 5.5s forwards; -moz-animation: fadein 1s ease-in 5.5s forwards; -o-animation: fadein 1s ease-in 5.5s forwards; animation: fadein 1s ease-in 5.5s forwards; } #how .line-4 { -webkit-animation: fadein 1s ease-in 7.5s forwards; -moz-animation: fadein 1s ease-in 7.5s forwards; -o-animation: fadein 1s ease-in 7.5s forwards; animation: fadein 1s ease-in 7.5s forwards; } #how .line-5 { -webkit-animation: fadein 1s ease-in 9.5s forwards; -moz-animation: fadein 1s ease-in 9.5s forwards; -o-animation: fadein 1s ease-in 9.5s forwards; animation: fadein 1s ease-in 9.5s forwards; } #how .particle-gold { width: 60px; height: 60px; margin: auto; opacity: 0; margin-top: 20px; -webkit-animation: fadein 1s ease-in 11s forwards, rotate 2s linear infinite; -moz-animation: fadein 1s ease-in 11s forwards, rotate 2s linear infinite; -o-animation: fadein 1s ease-in 11s forwards, rotate 2s linear infinite; animation: fadein 1s ease-in 11s forwards, rotate 2s linear infinite; } /* styling of the high scores table */ .table-scores { width: 275px; border: solid 0px; border: none; border-collapse: separate; border-spacing: 0 7px; line-height: 20px; margin: auto; margin-top: 30px; opacity: 0; -webkit-animation: fadein 1.5s ease-out 2s forwards; -moz-animation: fadein 1.5s ease-out 2s forwards; -o-animation: fadein 1.5s ease-out 2s forwards; animation: fadein 1.5s ease-out 2s forwards; } .table-scores th { color: rgba(50, 135, 168, 0.8); } .table-scores td { font-size: 14px; line-height: 20px; border-bottom: 1px solid rgba(220, 220, 220, 0.2); } .scores-header-name, .scores-name { text-align:left; } .scores-header-score, .scores-score { text-align: right; } /* styling of the game */ #game { position: absolute; top: 0; left: 0; width: 100%; height: 100%; overflow: hidden; } #game .game-title { padding-top: 50px; font-size: 60px; color: rgba(200, 200, 200, 0.15); } #gameComponents { display: none; } #gameComponents .game-score { margin: auto; margin-top: 100px; text-align: center; font-size: 60px; color: rgba(200, 200, 200, 0.2); opacity: 0; z-index: -1; position: relative; transition: opacity 0.3s linear; -webkit-animation: fadein 1.5s ease-in forwards; -moz-animation: fadein 1.5s ease-in forwards; -o-animation: fadein 1.5s ease-in forwards; animation: fadein 1.5s ease-in forwards; } #gameComponents #gameTimer { margin: auto; margin-top: 100px; text-align: center; font-size: 50px; color: rgba(200, 200, 200, 0.2); opacity: 0; z-index: -1; position: relative; transition: opacity 0.3s linear; -webkit-animation: fadein 1.5s ease-in forwards; -moz-animation: fadein 1.5s ease-in forwards; -o-animation: fadein 1.5s ease-in forwards; animation: fadein 1.5s ease-in forwards; } #gameScore, #gameScoreBest { margin: auto; text-align: center; font-size: 60px; color: rgba(200, 200, 200, 0.15); opacity: 0; } #gameScore { margin-top: 120px; opacity: 0; -webkit-animation: show-scores 0.75s forwards 0.25s; -moz-animation: show-scores 0.75s forwards 0.25s; -o-animation: show-scores 0.75s forwards 0.25s; animation: show-scores 0.75s forwards 0.25s; } #gameScoreBest { opacity: 0; -webkit-animation: show-scores 0.75s forwards 1s; -moz-animation: show-scores 0.75s forwards 1s; -o-animation: show-scores 0.75s forwards 1s; animation: show-scores 0.75s forwards 1s; } #gameStartButton, #gameReplayButton { position: absolute; left: calc(50% - 75px); top: calc(50%); margin: auto; background-color: var(--play-color); width: 150px; height: 50px; font-size: 18px; color: rgb(255, 255, 255); border: none; outline: none; box-shadow: 0 0 20px rgba(0, 0, 0, 0.9); transition: background-color 0.3s, opacity 0.3s linear; } #gameReplayButton { top: calc(60%); opacity: 0; -webkit-animation: spin 1.5s forwards 2s; -moz-animation: spin 1.5s forwards 2s; -o-animation: spin 1.5s forwards 2s; animation: spin 1.5s forwards 2s; } #gameStartButton:hover, #gameReplayButton:hover { opacity: 0.8 !important; } /* styling of the particles */ #particle-box { position: absolute; overflow: hidden; top: 0; left: 0; width: 100%; height: 100%; } .particle { position:absolute; opacity: 0; transition: all 1s ease-in-out; box-shadow: 0 0 10px rgba(0, 0, 0, 0.8); } .particle-red, .bit-red { background-color: rgba(222, 85, 88, 1); } .particle-green, .bit-green { background-color: rgba(46, 191, 158, 1); } .particle-blue, .bit-blue { background-color: rgba(0, 145, 224, 1); } .particle-gold, .bit-gold { background-color: var(--special-color); border-radius: 30% 0; } div.particle:hover { cursor: pointer; width: 150px !important; height: 150px !important; opacity: 0.5 !important; -webkit-animation-play-state: paused !important; -moz-animation-play-state: paused !important; -o-animation-play-state: paused !important; animation-play-state: paused !important; } /* styling of the explosions when you click a particle */ .explosion { position: absolute; width: 600px; height: 600px; pointer-events: none; } .bit { position: absolute; width: 10px; height: 10px; -webkit-animation: pop 1.5s ease-in reverse forwards; -moz-animation: pop 1.5s ease-in reverse forwards; -o-animation: pop 1.5s ease-in reverse forwards; animation: pop 1.5s ease-in reverse forwards; } @-webkit-keyframes showPage { from { opacity:0; transform: translateY(-100%); } to { opacity:1; transform: translateY(0%); } } @-moz-keyframes showPage { from { opacity:0; transform: translateY(-100%); } to { opacity:1; transform: translateY(0%); } } @-o-keyframes showPage { from { opacity:0; transform: translateY(-100%); } to { opacity:1; transform: translateY(0%); } } @keyframes showPage { from { opacity:0; transform: translateY(-100%); } to { opacity:1; transform: translateY(0%); } } @-webkit-keyframes wolf-rotate { 0% { transform: rotate(0deg); } 25% { transform: rotate(20deg); } 50% { transform: rotate(0deg); } 75% { transform: rotate(-20deg); } 100% { transform: rotate(0deg); } } @-moz-keyframes wolf-rotate { 0% { transform: rotate(0deg); } 25% { transform: rotate(20deg); } 50% { transform: rotate(0deg); } 75% { transform: rotate(-20deg); } 100% { transform: rotate(0deg); } } @-o-keyframes wolf-rotate { 0% { transform: rotate(0deg); } 25% { transform: rotate(20deg); } 50% { transform: rotate(0deg); } 75% { transform: rotate(-20deg); } 100% { transform: rotate(0deg); } } @keyframes wolf-rotate { 0% { transform: rotate(0deg); } 25% { transform: rotate(20deg); } 50% { transform: rotate(0deg); } 75% { transform: rotate(-20deg); } 100% { transform: rotate(0deg); } } @-webkit-keyframes wolf-head-change { 0% { border-color: #F98546 transparent transparent transparent; } 20% { border-color: #2EBF9E transparent transparent transparent; } 40% { border-color: #218F76 transparent transparent transparent; } 60% { border-color: #0091e0 transparent transparent transparent; } 80% { border-color: #f3554a transparent transparent transparent; } 100% { border-color: #F98546 transparent transparent transparent; } } @-moz-keyframes wolf-head-change { 0% { border-color: #F98546 transparent transparent transparent; } 20% { border-color: #2EBF9E transparent transparent transparent; } 40% { border-color: #218F76 transparent transparent transparent; } 60% { border-color: #0091e0 transparent transparent transparent; } 80% { border-color: #f3554a transparent transparent transparent; } 100% { border-color: #F98546 transparent transparent transparent; } } @-o-keyframes wolf-head-change { 0% { border-color: #F98546 transparent transparent transparent; } 20% { border-color: #2EBF9E transparent transparent transparent; } 40% { border-color: #218F76 transparent transparent transparent; } 60% { border-color: #0091e0 transparent transparent transparent; } 80% { border-color: #f3554a transparent transparent transparent; } 100% { border-color: #F98546 transparent transparent transparent; } } @keyframes wolf-head-change { 0% { border-color: #F98546 transparent transparent transparent; } 20% { border-color: #2EBF9E transparent transparent transparent; } 40% { border-color: #218F76 transparent transparent transparent; } 60% { border-color: #0091e0 transparent transparent transparent; } 80% { border-color: #f3554a transparent transparent transparent; } 100% { border-color: #F98546 transparent transparent transparent; } } @-webkit-keyframes fadein { from { opacity: 0; } to { opacity: 1; } } @-moz-keyframes fadein { from { opacity: 0; } to { opacity: 1; } } @-o-keyframes fadein { from { opacity: 0; } to { opacity: 1; } } @keyframes fadein { from { opacity: 0; } to { opacity: 1; } } @-webkit-keyframes rotate { from { transform: rotate(0deg); } to { transform: rotate(360deg); } } @-moz-keyframes rotate { from { transform: rotate(0deg); } to { transform: rotate(360deg); } } @-o-keyframes rotate { from { transform: rotate(0deg); } to { transform: rotate(360deg); } } @keyframes rotate { from { transform: rotate(0deg); } to { transform: rotate(360deg); } } @-webkit-keyframes spin { 0% { opacity: 0; transform: rotate(0deg); } 50% { transform: rotate(360deg); } 100% { opacity: 1; transform: rotate(0deg); } } @-moz-keyframes spin { 0% { opacity: 0; transform: rotate(0deg); } 50% { transform: rotate(360deg); } 100% { opacity: 1; transform: rotate(0deg); } } @-o-keyframes spin { 0% { opacity: 0; transform: rotate(0deg); } 50% { transform: rotate(360deg); } 100% { opacity: 1; transform: rotate(0deg); } } @keyframes spin { 0% { opacity: 0; transform: rotate(0deg); } 50% { transform: rotate(360deg); } 100% { opacity: 1; transform: rotate(0deg); } } @-webkit-keyframes show-scores { from { opacity: 0; transform: rotate(0deg); } to { opacity: 1; transform: rotate(360deg); } } @-moz-keyframes show-scores { from { opacity: 0; transform: rotate(0deg); } to { opacity: 1; transform: rotate(360deg); } } @-o-keyframes show-scores { from { opacity: 0; transform: rotate(0deg); } to { opacity: 1; transform: rotate(360deg); } } @keyframes show-scores { from { opacity: 0; transform: rotate(0deg); } to { opacity: 1; transform: rotate(360deg); } } @-webkit-keyframes move { 0% { transform: translateY(500px) rotate(0deg); opacity: 1; } 100% { transform: translateY(-100px) rotate(360deg); opacity: 0; } } @-moz-keyframes move { 0% { transform: translateY(500px) rotate(0deg); opacity: 1; } 100% { transform: translateY(-100px) rotate(360deg); opacity: 0; } } @-o-keyframes move { 0% { transform: translateY(500px) rotate(0deg); opacity: 1; } 100% { transform: translateY(-100px) rotate(360deg); opacity: 0; } } @keyframes move { 0% { transform: translateY(500px) rotate(0deg); opacity: 1; } 100% { transform: translateY(-100px) rotate(360deg); opacity: 0; } } @-webkit-keyframes pop { from { transform: rotate(360deg); opacity: 0; } to { transform: rotate(0deg); top: 50%; left: 50%; opacity: 1; } } @-moz-keyframes pop { from { transform: rotate(360deg); opacity: 0; } to { transform: rotate(0deg); top: 50%; left: 50%; opacity: 1; } } @-o-keyframes pop { from { transform: rotate(360deg); opacity: 0; } to { transform: rotate(0deg); top: 50%; left: 50%; opacity: 1; } } @keyframes pop { from { transform: rotate(360deg); opacity: 0; } to { transform: rotate(0deg); top: 50%; left: 50%; opacity: 1; } } &lt;/style&gt; &lt;script&gt; var game_score = 0; var game_score_best = 0; var GAME_TIMER_START = 30; var game_timer = 0; var game_highscores = false; var game_over = false; var gameCountdownTimer; var gameSpecialTimer = 0; var game_scores = [ { name: &quot;Grant Jenkins&quot;, score: 131 }, { name: &quot;Could be you&quot;, score: 0 }, { name: &quot;Could be you&quot;, score: 0 }, { name: &quot;Could be you&quot;, score: 0 }, { name: &quot;Could be you&quot;, score: 0 }, { name: &quot;Could be you&quot;, score: 0 }, { name: &quot;Could be you&quot;, score: 0 }, { name: &quot;Could be you&quot;, score: 0 }, { name: &quot;Could be you&quot;, score: 0 }, { name: &quot;Could be you&quot;, score: 0 } ]; game_scores.sort(function(a, b) { return b.score - a.score; }); // get random number between min and max value function rand(min, max) { return Math.floor(Math.random() * (max + 1)) + min; } //add explosions when you click on a particle function explode(x, y, bitcolor) { var particles = 15, // explosion container and its reference to be able to delete it on animation end explosion = $('&lt;div class=&quot;explosion&quot;&gt;&lt;/div&gt;'); //put the explosion container into the game page $('#game').append(explosion); //position the container to be centered explosion.css('left', x - explosion.width() / 2); explosion.css('top', y - explosion.height() / 2); for (var i = 0; i &lt; particles; i++) { //random end positions for each of the particles var x = (explosion.width() / 2) + rand(80, 150) * Math.cos(2 * Math.PI * i / rand(particles - 10, particles + 10)); var y = (explosion.height() / 2) + rand(80, 150) * Math.sin(2 * Math.PI * i / rand(particles - 10, particles + 10)); //create the particle elements elm = $('&lt;div class=&quot;bit bit-' + bitcolor + '&quot; style=&quot;' + 'top: ' + y + 'px; ' + 'left: ' + x + 'px&quot;&gt;&lt;/div&gt;'); // no need to add the listener on all generated elements if (i == 0) { //when animation ends then it will automatically remove the element elm.one('webkitAnimationEnd oanimationend msAnimationEnd animationend', function(e) { explosion.remove(); }); } //add the particle explosion.append(elm); } } //event triggered when the user clicks on a particle var particleClick = function(e) { let particleWidth = this.offsetWidth; //if particle reached full width if(particleWidth === 150) { //add appropriate score/time based on type of particle switch($(this).data(&quot;type&quot;)) { case &quot;time&quot;: game_score++; game_timer+=5; break; case &quot;points&quot;: game_score+=5; game_timer++; break; default: game_score++; game_timer++; } //add the score to the screen $(&quot;.game-score&quot;).text(game_score); //get the color of the particle var arr = $(this).attr(&quot;class&quot;).split('-'); var item = arr[arr.length-1]; //remove the particle this.remove(); //add explosions explode(e.pageX, e.pageY, item); //create a new particle in place if the existing one createParticle(); } } //creates each particle var createParticle = function() { //initiate and set properties on particle let particle = { x: Math.random() * window.innerWidth, y: Math.random() * window.innerHeight + 20, size: Math.random() * 25 + 10, speed: Math.random() * 6 + 3, delay: Math.random() * 0.3 + 0.2, color: Math.random() &lt; 0.33 ? &quot;red&quot; : Math.random() &lt; 0.5 ? &quot;green&quot; : &quot;blue&quot;, data: &quot;normal&quot; }; //increase the special timer so that we get a //special particle at least every 5 particles gameSpecialTimer = (gameSpecialTimer + 1) % 5; //if special particle the set properties here if(Math.random() &lt; 0.1 || gameSpecialTimer === 0) { particle.color = &quot;gold&quot;; particle.data = Math.random() &lt; 0.3 ? &quot;time&quot; : &quot;points&quot;; } //append the particle to the particle box $(&quot;#particle-box&quot;).append(&quot;&lt;div class='particle particle-&quot; + particle.color + &quot;' data-type='&quot; + particle.data + &quot;'&gt;&lt;/div&gt;&quot;); //get the particle that was just added var last = $(&quot;#particle-box&quot;).children().last(); //setup the click event for the particle last.on( &quot;click&quot;, particleClick ); //add appropriate css properties including css animation last.css( &quot;animation&quot;, &quot;move &quot; + particle.speed + &quot;s infinite linear &quot; + particle.delay + &quot;s&quot;); last.css( &quot;left&quot;, particle.x); last.css( &quot;top&quot;, particle.y); last.css( &quot;width&quot;, particle.size); last.css( &quot;height&quot;, particle.size); } //setup the initial particles for each game var setupParticles = function() { //remove any existing particles $(&quot;#particle-box&quot;).empty(); //create an initial set of 40 particles for(var i = 0; i &lt; 40; i++) { createParticle(); } } //reset the game var resetGame = function() { //reset game timer game_timer = 0; //set game over to true game_over = true; //reset special timer gameSpecialTimer = 0; //clear the existing interval if it exists clearInterval(gameCountdownTimer); //remove any existing explosions $(&quot;.explosion&quot;).empty(); //remove all particles $(&quot;#particle-box&quot;).empty(); //show/hide appropriate components $(&quot;#gameStartButton&quot;).show(); $(&quot;#gameComponents&quot;).hide(); $(&quot;#gameOver&quot;).hide(); } //starts the game var startGame = function() { //reset score game_score = 0; //set game over to false game_over = false; //reset game score $(&quot;.game-score&quot;).text(game_score); //reset timer game_timer = GAME_TIMER_START; //hide/show components $(&quot;#gameStartButton&quot;).hide(); $(&quot;#gameOver&quot;).hide(); $(&quot;#gameComponents&quot;).show(); //setup particles setupParticles(); //display initial timer $(&quot;#gameTimer&quot;).text(game_timer + &quot; seconds remaining&quot;); //setup interval to control the timing of the game gameCountdownTimer = setInterval(function(){ //if game over... if(game_timer &lt;= 0){ //clear the interval (remove it) clearInterval(gameCountdownTimer); if(!game_over) { //set best score to be the max score game_score_best = Math.max(game_score_best, game_score); //display the scores $(&quot;#gameScore&quot;).text(&quot;Score: &quot; + game_score); $(&quot;#gameScoreBest&quot;).text(&quot;Best Score: &quot; + game_score_best); //display the game over box $(&quot;#gameOver&quot;).show(); //remove the particles $(&quot;#particle-box&quot;).empty(); //hide the start button and game components $(&quot;#gameStartButton&quot;).hide(); $(&quot;#gameComponents&quot;).hide(); } } //else if game still in progress else { $(&quot;#gameTimer&quot;).text(game_timer + &quot; seconds remaining&quot;); } //decrease the timer by 1 each second game_timer -= 1; }, 1000); //interval set to 1 second } setupScores = function() { var scoresTable = '&lt;table cellspacing=&quot;0&quot; class=&quot;table-scores&quot;&gt;' + '&lt;thead&gt;' + '&lt;tr&gt;' + '&lt;th class=&quot;scores-header-name&quot;&gt;Name&lt;/th&gt;' + '&lt;th class=&quot;scores-header-score&quot;&gt;Score&lt;/th&gt;' + '&lt;/tr&gt;' + '&lt;/thead&gt;' + '&lt;tbody&gt;'; for(var i = 0; i &lt; game_scores.length; i++) { let score = game_scores[i]; scoresTable += '&lt;tr&gt;' + '&lt;td class=&quot;scores-name&quot;&gt;' + score.name + '&lt;/td&gt;' + '&lt;td class=&quot;scores-score&quot;&gt;' + score.score + '&lt;/td&gt;' + '&lt;/tr&gt;'; } scoresTable += '&lt;/tbody&gt;&lt;/table&gt;'; $(&quot;#scoresTable&quot;).empty(); $(&quot;#scoresTable&quot;).append(scoresTable); } $(&quot;.page&quot;).css({display: &quot;none&quot;}); $(&quot;#home&quot;).css({display: &quot;block&quot;}); var switchPage = function (page){ $(&quot;.page&quot;).css({display: &quot;none&quot;}); $(page).css({display: &quot;block&quot;,}); $(&quot;.page&quot;).removeClass('showPage'); $(page).addClass('showPage'); $('button').removeClass('active'); $(page+&quot;Button&quot;).addClass('active'); //reset game if(page === &quot;#game&quot;) { resetGame(); } //build highscores (only once) else if(page === &quot;#scores&quot; &amp;&amp; !game_highscores) { setupScores(); } }; //switch to the home page when first get to the site switchPage(&quot;#home&quot;); &lt;/script&gt; &lt;!-- Particles (Game) Grant Jenkins, March 2023 #cpc-random-button, #codepenchallenge - All animations using CSS animations - All particles are divs with translations - Wolves are pure HTML/CSS (style/animations) - CSS caters for all major browsers (webkit, moz, o) Check out my Khan Academy projects here: https://www.khanacademy.org/profile/grantjenkins/projects Find me in the Microsoft Power Automate forums here: https://powerusers.microsoft.com/t5/user/viewprofilepage/user-id/76589 ----------------------------------------------------- If you want to submit your score, let me know :) ----------------------------------------------------- --&gt; &lt;div id=&quot;box34&quot;&gt; &lt;html&gt; &lt;head&gt; &lt;meta charset=&quot;utf-8&quot;&gt; &lt;title&gt;Particles (Game)&lt;/title&gt; &lt;link href=&quot;https://fonts.googleapis.com/css?family=Indie+Flower|Material+Icons|Handlee&amp;display=swap&quot; rel=&quot;stylesheet&quot;&gt; &lt;/head&gt; &lt;body&gt; &lt;header&gt; &lt;nav&gt; &lt;button id=&quot;homeButton&quot; onClick=&quot;switchPage('#home');&quot; class=&quot;active material-icons&quot;&gt;house&lt;/button&gt; &lt;button id=&quot;howButton&quot; onClick=&quot;switchPage('#how');&quot;&gt;How To Play&lt;/button&gt; &lt;button id=&quot;scoresButton&quot; onClick=&quot;switchPage('#scores');&quot;&gt;High Scores&lt;/button&gt; &lt;button id=&quot;gameButton&quot; onClick=&quot;switchPage('#game');&quot;&gt;Play&lt;/button&gt; &lt;/nav&gt; &lt;/header&gt; &lt;!--Navigation--&gt; &lt;div id=&quot;content&quot;&gt; &lt;div id=&quot;home&quot; class=&quot;page&quot;&gt; &lt;!--Home Page--&gt; &lt;div class=&quot;wolves&quot;&gt; &lt;div class=&quot;wolf top-left&quot;&gt; &lt;div class=&quot;wolf-ear-left&quot;&gt;&lt;/div&gt; &lt;div class=&quot;wolf-ear-right&quot;&gt;&lt;/div&gt; &lt;div class=&quot;wolf-head&quot;&gt;&lt;/div&gt; &lt;div class=&quot;wolf-eye-left&quot;&gt;&lt;/div&gt; &lt;div class=&quot;wolf-eye-right&quot;&gt;&lt;/div&gt; &lt;div class=&quot;wolf-eyeball-left&quot;&gt;&lt;/div&gt; &lt;div class=&quot;wolf-eyeball-right&quot;&gt;&lt;/div&gt; &lt;div class=&quot;wolf-nose&quot;&gt;&lt;/div&gt; &lt;/div&gt; &lt;div class=&quot;wolf top-right&quot;&gt; &lt;div class=&quot;wolf-ear-left&quot;&gt;&lt;/div&gt; &lt;div class=&quot;wolf-ear-right&quot;&gt;&lt;/div&gt; &lt;div class=&quot;wolf-head&quot;&gt;&lt;/div&gt; &lt;div class=&quot;wolf-eye-left&quot;&gt;&lt;/div&gt; &lt;div class=&quot;wolf-eye-right&quot;&gt;&lt;/div&gt; &lt;div class=&quot;wolf-eyeball-left&quot;&gt;&lt;/div&gt; &lt;div class=&quot;wolf-eyeball-right&quot;&gt;&lt;/div&gt; &lt;div class=&quot;wolf-nose&quot;&gt;&lt;/div&gt; &lt;/div&gt; &lt;/div&gt; &lt;!--Wolves--&gt; &lt;h1 id=&quot;header&quot;&gt;Particles&lt;/h1&gt; &lt;div id=&quot;box&quot;&gt; &lt;p id=&quot;creator&quot;&gt;A game by Grant Jenkins&lt;/p&gt; &lt;p id=&quot;welcome&quot;&gt;Welcome to Particles, a game of speed and accuracy.&lt;/p&gt; &lt;div id=&quot;circles&quot;&gt; &lt;button id=&quot;homeHowButton&quot; class=&quot;home-buttons&quot; onClick=&quot;switchPage('#how');&quot;&gt;How&lt;/button&gt; &lt;button id=&quot;homePlayButton&quot; class=&quot;home-buttons&quot; onClick=&quot;switchPage('#game');&quot;&gt;Play&lt;/button&gt; &lt;/div&gt; &lt;/div&gt; &lt;/div&gt; &lt;!--home--&gt; &lt;div id=&quot;how&quot; class=&quot;page&quot;&gt; &lt;!--How page--&gt; &lt;h1&gt;How&lt;/h1&gt; &lt;article&gt; &lt;p class=&quot;line line-1&quot;&gt;You need to hover over the particles as they move up the screen.&lt;/p&gt; &lt;p class=&quot;line line-2&quot;&gt;When a particle reaches full size you need to click on it.&lt;/p&gt; &lt;p class=&quot;line line-3&quot;&gt;Clicking on a particle will award you one point and add one second to your time.&lt;/p&gt; &lt;p class=&quot;line line-4&quot;&gt;There are special gold particles that award you even more points/time.&lt;/p&gt; &lt;p class=&quot;line line-5&quot;&gt;Click on the Play button to get started.&lt;/p&gt; &lt;div class=&quot;particle-gold&quot;&gt;&lt;/div&gt; &lt;/article&gt; &lt;div class=&quot;wolves&quot;&gt; &lt;div class=&quot;wolf top-left&quot;&gt; &lt;div class=&quot;wolf-ear-left&quot;&gt;&lt;/div&gt; &lt;div class=&quot;wolf-ear-right&quot;&gt;&lt;/div&gt; &lt;div class=&quot;wolf-head&quot;&gt;&lt;/div&gt; &lt;div class=&quot;wolf-eye-left&quot;&gt;&lt;/div&gt; &lt;div class=&quot;wolf-eye-right&quot;&gt;&lt;/div&gt; &lt;div class=&quot;wolf-eyeball-left&quot;&gt;&lt;/div&gt; &lt;div class=&quot;wolf-eyeball-right&quot;&gt;&lt;/div&gt; &lt;div class=&quot;wolf-nose&quot;&gt;&lt;/div&gt; &lt;/div&gt; &lt;div class=&quot;wolf top-right&quot;&gt; &lt;div class=&quot;wolf-ear-left&quot;&gt;&lt;/div&gt; &lt;div class=&quot;wolf-ear-right&quot;&gt;&lt;/div&gt; &lt;div class=&quot;wolf-head&quot;&gt;&lt;/div&gt; &lt;div class=&quot;wolf-eye-left&quot;&gt;&lt;/div&gt; &lt;div class=&quot;wolf-eye-right&quot;&gt;&lt;/div&gt; &lt;div class=&quot;wolf-eyeball-left&quot;&gt;&lt;/div&gt; &lt;div class=&quot;wolf-eyeball-right&quot;&gt;&lt;/div&gt; &lt;div class=&quot;wolf-nose&quot;&gt;&lt;/div&gt; &lt;/div&gt; &lt;/div&gt; &lt;!--Wolves--&gt; &lt;/div&gt; &lt;!--how--&gt; &lt;div id=&quot;scores&quot; class=&quot;page&quot;&gt; &lt;!--Scores page--&gt; &lt;h1&gt;Scores&lt;/h1&gt; &lt;div id=&quot;scoresTable&quot;&gt;&lt;/div&gt; &lt;div class=&quot;wolves&quot;&gt; &lt;div class=&quot;wolf top-left&quot;&gt; &lt;div class=&quot;wolf-ear-left&quot;&gt;&lt;/div&gt; &lt;div class=&quot;wolf-ear-right&quot;&gt;&lt;/div&gt; &lt;div class=&quot;wolf-head&quot;&gt;&lt;/div&gt; &lt;div class=&quot;wolf-eye-left&quot;&gt;&lt;/div&gt; &lt;div class=&quot;wolf-eye-right&quot;&gt;&lt;/div&gt; &lt;div class=&quot;wolf-eyeball-left&quot;&gt;&lt;/div&gt; &lt;div class=&quot;wolf-eyeball-right&quot;&gt;&lt;/div&gt; &lt;div class=&quot;wolf-nose&quot;&gt;&lt;/div&gt; &lt;/div&gt; &lt;div class=&quot;wolf top-right&quot;&gt; &lt;div class=&quot;wolf-ear-left&quot;&gt;&lt;/div&gt; &lt;div class=&quot;wolf-ear-right&quot;&gt;&lt;/div&gt; &lt;div class=&quot;wolf-head&quot;&gt;&lt;/div&gt; &lt;div class=&quot;wolf-eye-left&quot;&gt;&lt;/div&gt; &lt;div class=&quot;wolf-eye-right&quot;&gt;&lt;/div&gt; &lt;div class=&quot;wolf-eyeball-left&quot;&gt;&lt;/div&gt; &lt;div class=&quot;wolf-eyeball-right&quot;&gt;&lt;/div&gt; &lt;div class=&quot;wolf-nose&quot;&gt;&lt;/div&gt; &lt;/div&gt; &lt;/div&gt; &lt;!--Wolves--&gt; &lt;/div&gt; &lt;!--scores--&gt; &lt;div id=&quot;game&quot; class=&quot;page&quot;&gt; &lt;!--game page--&gt; &lt;div id=&quot;particle-box&quot;&gt;&lt;/div&gt; &lt;div id=&quot;gameComponents&quot;&gt; &lt;div id=&quot;gameTimer&quot;&gt;&lt;/div&gt; &lt;div class=&quot;game-score&quot;&gt;0&lt;/div&gt; &lt;/div&gt; &lt;div id=&quot;gameOver&quot;&gt; &lt;div id=&quot;gameScore&quot; class=&quot;game-score&quot;&gt;0&lt;/div&gt; &lt;div id=&quot;gameScoreBest&quot;&gt;0&lt;/div&gt; &lt;button id=&quot;gameReplayButton&quot; onclick=&quot;startGame();&quot;&gt;Replay&lt;/button&gt; &lt;/div&gt; &lt;button id=&quot;gameStartButton&quot; onclick=&quot;startGame();&quot;&gt;Start&lt;/button&gt; &lt;/div&gt; &lt;!--Game--&gt; &lt;/div&gt; &lt;!--Content--&gt; &lt;!--jQuery library--&gt; &lt;script src=&quot;https://ajax.googleapis.com/ajax/libs/jquery/2.1.4/jquery.min.js&quot;&gt;&lt;/script&gt; &lt;/body&gt; &lt;/html&gt; &lt;/div&gt; [/html]</pre></div></div></div> </div> <div class="post-rating"><p class="container"><a title="Вы не можете дать оценку участнику">+3</a></p></div> </div> <div class="clearer"><!-- --></div> </div> <div class="post-links"> <ul> <li class="pl-quote"><a href="javascript:quote('Will O The Wisp', 181475)">Цитировать<span class="acchide">&nbsp;Сообщение 172</span></a></li> </ul> </div> </div> </div> <div id="p181613" class="post" data-posted="1678778632" data-user-id="7629" data-group-id="8"> <h3><span><a class="sharelink" rel="nofollow" href="#p181613" onclick="return false;">Поделиться</a><strong>173</strong><a class="permalink" rel="nofollow" href="https://forumd.ru/viewtopic.php?id=7075&amp;p=18#p181613">14.03.23 10:23</a></span></h3> <div class="container"> <div class="post-author"> <ul> <li class="pa-author"><span class="acchide">Автор:&nbsp;</span><a href="https://forumd.ru/profile.php?id=7629" rel="nofollow">Will O The Wisp</a></li> <li class="pa-title">Участник</li> <li class="pa-avatar item2"><img src="https://forumavatars.ru/img/avatars/0007/e3/f7/7629-1628896044.jpg" alt="Will O The Wisp" title="Will O The Wisp" /></li> <li class="pa-last-visit"><span class="fld-name">Последний визит:</span><br />10.12.24 18:09</li> <li class="pa-respect"><span class="fld-name">Уважение:</span> <span>+594</span></li> <li class="pa-fld2"><img src="https://forumstatic.ru/files/0007/e3/f7/71606.svg" alt="Стажер" title="Стажер" /> <img src="https://forumstatic.ru/files/0007/e3/f7/43425.svg" alt="Изыскатель" title="Изыскатель" /></li> </ul> </div> <div class="post-body"> <div class="post-box"> <div id="p181613-content" class="post-content"> <div class="quote-box spoiler-box media-box"><div onclick="toggleSpoiler(this);">И еще один дизайн где много чего двигается просто так</div><blockquote></blockquote><script type="text/html"><p><img class="postimg" loading="lazy" src="https://forumupload.ru/uploads/0007/e3/f7/7629/615666.jpg" alt="https://forumupload.ru/uploads/0007/e3/f7/7629/615666.jpg" /><br /><img class="postimg" loading="lazy" src="https://forumupload.ru/uploads/0007/e3/f7/7629/858668.jpg" alt="https://forumupload.ru/uploads/0007/e3/f7/7629/858668.jpg" /></p></script></div><p>Озадачился панелью юзера слева тела форума (отключена при особом расширении экрана). Добавил эффект на название и аватарки. В целом полное баловство без ограничений. Да, так тоже можно. </p><div class="quote-box hide-box term-login"><cite>Скрытый текст:</cite><blockquote><p>Для просмотра скрытого текста - <a href="/login.php" rel="nofollow ugc" target="_blank">войдите</a> или <a rel="nofollow ugc" href="/register.php" target="_blank">зарегистрируйтесь</a>.</p></blockquote></div> </div> <div class="post-rating"><p class="container"><a title="Вы не можете дать оценку участнику">+3</a></p></div> </div> <div class="clearer"><!-- --></div> </div> <div class="post-links"> <ul> <li class="pl-quote"><a href="javascript:quote('Will O The Wisp', 181613)">Цитировать<span class="acchide">&nbsp;Сообщение 173</span></a></li> </ul> </div> </div> </div> <div id="p181616" class="post altstyle" data-posted="1678790770" data-user-id="6822" data-group-id="8"> <h3><span><a class="sharelink" rel="nofollow" href="#p181616" onclick="return false;">Поделиться</a><strong>174</strong><a class="permalink" rel="nofollow" href="https://forumd.ru/viewtopic.php?id=7075&amp;p=18#p181616">14.03.23 13:46</a></span></h3> <div class="container"> <div class="post-author"> <ul> <li class="pa-author"><span class="acchide">Автор:&nbsp;</span><a href="https://forumd.ru/profile.php?id=6822" rel="nofollow">Automation Baby</a></li> <li class="pa-title">Атаманша</li> <li class="pa-avatar item2"><img src="https://forumavatars.ru/img/avatars/0007/e3/f7/6822-1718740142.jpg" alt="Automation Baby" title="Automation Baby" /></li> <li class="pa-last-visit"><span class="fld-name">Последний визит:</span><br />18.08.24 17:56</li> <li class="pa-respect"><span class="fld-name">Уважение:</span> <span>+9027</span></li> <li class="pa-fld2"><img src="https://forumstatic.ru/files/0007/e3/f7/55248.svg" alt="Неравнодушный" title="Неравнодушный" /> <img src="https://forumstatic.ru/files/0007/e3/f7/39098.svg" alt="Инициатор" title="Инициатор" /> <img src="https://forumstatic.ru/files/0007/e3/f7/96572.svg" alt="Резидент" title="Резидент" /> <img src="https://forumstatic.ru/files/0007/e3/f7/31483.svg" alt="Мыслитель" title="Мыслитель" /> <img src="https://forumstatic.ru/files/0007/e3/f7/87304.svg" alt="Советник" title="Советник" /> <img src="https://forumstatic.ru/files/0007/e3/f7/29029.svg" alt="Амбассадор" title="Амбассадор" /> <img src="https://forumstatic.ru/files/0007/e3/f7/82723.svg" alt="Обозреватель" title="Обозреватель" /> <img src="https://forumstatic.ru/files/0007/e3/f7/12318.svg" alt="Почитатель" title="Почитатель" /> <img src="https://forumstatic.ru/files/0007/e3/f7/24855.svg" alt="Ценитель" title="Ценитель" /> <img src="https://forumstatic.ru/files/0007/e3/f7/52250.svg" alt="Причастный" title="Причастный" /> <img src="https://forumstatic.ru/files/0007/e3/f7/80069.svg" alt="Конкурсант" title="Конкурсант" /> <img src="https://forumstatic.ru/files/0007/e3/f7/78276.svg" alt="Вовлеченный" title="Вовлеченный" /> <img src="https://forumstatic.ru/files/0007/e3/f7/71606.svg" alt="Стажер" title="Стажер" /> <img src="https://forumstatic.ru/files/0007/e3/f7/43425.svg" alt="Изыскатель" title="Изыскатель" /> <img src="https://forumstatic.ru/files/0007/e3/f7/31061.svg" alt="Теоретик" title="Теоретик" /> <img src="https://forumstatic.ru/files/0007/e3/f7/44107.svg" alt="Практикант" title="Практикант" /> <img src="https://forumstatic.ru/files/0007/e3/f7/75278.svg" alt="Экспериментатор" title="Экспериментатор" /> <img src="https://forumstatic.ru/files/0007/e3/f7/51030.svg" alt="Тестер" title="Тестер" /> <img src="https://forumstatic.ru/files/0007/e3/f7/82607.svg" alt="Джун" title="Джун" /> <img src="https://forumstatic.ru/files/0007/e3/f7/71934.svg" alt="Технарь" title="Технарь" /> <img src="https://forumstatic.ru/files/0007/e3/f7/40694.svg" alt="Дэв" title="Дэв" /> <img src="https://forumstatic.ru/files/0007/e3/f7/21677.svg" alt="Пробужденный" title="Пробужденный" /> <img src="https://forumstatic.ru/files/0007/e3/f7/59727.svg" alt="Попаданец" title="Попаданец" /></li> </ul> </div> <div class="post-body"> <div class="post-box"> <div id="p181616-content" class="post-content"> <div class="quote-box answer-box"><cite>#p181613,Will O The Wisp написал(а):</cite><blockquote><p>Озадачился панелью юзера слева тела форума (отключена при особом расширении экрана). Добавил эффект на название и аватарки. В целом полное баловство без ограничений. Да, так тоже можно.</p></blockquote></div><p>На самом деле, у тебя интересные и свежие идеи в плане дизайна. Ими можно только вдохновляться!</p> <dl class="post-sig"><dt><span>Подпись автора</span></dt><dd><p><a href="https://forumd.ru/viewtopic.php?id=7924">Отвечаю на вопросы вот здесь</a> | <a href="https://forumd.ru/viewtopic.php?id=8057">Мой блог</a><br /></p><p style="text-align:left;"><span style="font-style: italic">&quot;Никогда не сомневайтесь в себе и любите каждую свою работу, даже если она кажется вам грязью на окне. Через это окно люди смотрят на мир, тогда как разводы замечаете только вы.&quot;</span> © Николай Ободников. &quot;Лиллехейм. Волчий ветер&#8204;&#8205;</p><p style="text-align:right;"><abbr title="2017 год. Альтернативная реальность. Есть СССР (в изменённом виде), ФРГ и ГДР, соответственно существует ШТАЗИ. В повседневную жизнь медленно входят роботы, учёные занимаются клонированием, IT-технологиями, вирусологией."><a href="https://nolf.mybb.ru/" rel="nofollow" target="_blank"><img class="sigimage" loading="lazy" src="https://forumstatic.ru/files/0015/1e/ae/69675.gif" alt="https://forumstatic.ru/files/0015/1e/ae/69675.gif" /></a> </abbr><abbr title="Ролевая в жанре альтернативной истории: Российская империя, 1812. Серебряный век русской магии. В центре сюжета - магия, признанная на государственном уровне. Маги - привилегированный слой общества. Только здесь - мир Толстого и чары, Наполеон и боевая магия, поэты золотого века и волшебство."><a href="https://rusmagic.mybb.ru/" rel="nofollow" target="_blank"><img class="sigimage" loading="lazy" src="https://forumstatic.ru/files/0018/3d/6c/77729.jpg" alt="https://forumstatic.ru/files/0018/3d/6c/77729.jpg" /></a></abbr></p></dd></dl> </div> <div class="post-rating"><p class="container"><a title="Вы не можете дать оценку участнику">+1</a></p></div> </div> <div class="clearer"><!-- --></div> </div> <div class="post-links"> <ul> <li class="pl-email social-discord has-display-name no-link"><em>Discord<span class="acchide">&nbsp;esymeo#3573</span></em></li></li> <li class="pl-email social-telegram has-display-name"><a href="https://t.me/Esymeo" target="_blank">Telegram<span class="acchide">&nbsp;@Esymeo</span></a></li></li> <li class="pl-quote"><a href="javascript:quote('Automation Baby', 181616)">Цитировать<span class="acchide">&nbsp;Сообщение 174</span></a></li> </ul> </div> </div> </div> <div id="p181621" class="post" data-posted="1678792201" data-user-id="7629" data-group-id="8"> <h3><span><a class="sharelink" rel="nofollow" href="#p181621" onclick="return false;">Поделиться</a><strong>175</strong><a class="permalink" rel="nofollow" href="https://forumd.ru/viewtopic.php?id=7075&amp;p=18#p181621">14.03.23 14:10</a></span></h3> <div class="container"> <div class="post-author"> <ul> <li class="pa-author"><span class="acchide">Автор:&nbsp;</span><a href="https://forumd.ru/profile.php?id=7629" rel="nofollow">Will O The Wisp</a></li> <li class="pa-title">Участник</li> <li class="pa-avatar item2"><img src="https://forumavatars.ru/img/avatars/0007/e3/f7/7629-1628896044.jpg" alt="Will O The Wisp" title="Will O The Wisp" /></li> <li class="pa-last-visit"><span class="fld-name">Последний визит:</span><br />10.12.24 18:09</li> <li class="pa-respect"><span class="fld-name">Уважение:</span> <span>+594</span></li> <li class="pa-fld2"><img src="https://forumstatic.ru/files/0007/e3/f7/71606.svg" alt="Стажер" title="Стажер" /> <img src="https://forumstatic.ru/files/0007/e3/f7/43425.svg" alt="Изыскатель" title="Изыскатель" /></li> </ul> </div> <div class="post-body"> <div class="post-box"> <div id="p181621-content" class="post-content"> <div class="quote-box spoiler-box media-box"><div onclick="toggleSpoiler(this);">Свернутый текст</div><blockquote></blockquote><script type="text/html"><p><img class="postimg" loading="lazy" src="https://forumupload.ru/uploads/0007/e3/f7/7629/856461.jpg" alt="https://forumupload.ru/uploads/0007/e3/f7/7629/856461.jpg" /><br /><img class="postimg" loading="lazy" src="https://forumupload.ru/uploads/0007/e3/f7/7629/362654.jpg" alt="https://forumupload.ru/uploads/0007/e3/f7/7629/362654.jpg" /></p></script></div><p>Закончил сегодня с реализацией шаблона ни для чего конкретного. Это дизайн наоборот, основанный на сочетании однотонного задника и картиночнтого тела форума. Ярко, сочно, вычурно как бархатцы. В качестве пробы пера изменена форма входа, картинка с задника множится, вертится и фильтруется. Шаблон действительно очень яркий.</p><div class="quote-box hide-box term-login"><cite>Скрытый текст:</cite><blockquote><p>Для просмотра скрытого текста - <a href="/login.php" rel="nofollow ugc" target="_blank">войдите</a> или <a rel="nofollow ugc" href="/register.php" target="_blank">зарегистрируйтесь</a>.</p></blockquote></div> </div> <div class="post-rating"><p class="container"><a title="Вы не можете дать оценку участнику">+3</a></p></div> </div> <div class="clearer"><!-- --></div> </div> <div class="post-links"> <ul> <li class="pl-quote"><a href="javascript:quote('Will O The Wisp', 181621)">Цитировать<span class="acchide">&nbsp;Сообщение 175</span></a></li> </ul> </div> </div> </div> <div id="p182005" class="post altstyle" data-posted="1679467582" data-user-id="7629" data-group-id="8"> <h3><span><a class="sharelink" rel="nofollow" href="#p182005" onclick="return false;">Поделиться</a><strong>176</strong><a class="permalink" rel="nofollow" href="https://forumd.ru/viewtopic.php?id=7075&amp;p=18#p182005">22.03.23 09:46</a></span></h3> <div class="container"> <div class="post-author"> <ul> <li class="pa-author"><span class="acchide">Автор:&nbsp;</span><a href="https://forumd.ru/profile.php?id=7629" rel="nofollow">Will O The Wisp</a></li> <li class="pa-title">Участник</li> <li class="pa-avatar item2"><img src="https://forumavatars.ru/img/avatars/0007/e3/f7/7629-1628896044.jpg" alt="Will O The Wisp" title="Will O The Wisp" /></li> <li class="pa-last-visit"><span class="fld-name">Последний визит:</span><br />10.12.24 18:09</li> <li class="pa-respect"><span class="fld-name">Уважение:</span> <span>+594</span></li> <li class="pa-fld2"><img src="https://forumstatic.ru/files/0007/e3/f7/71606.svg" alt="Стажер" title="Стажер" /> <img src="https://forumstatic.ru/files/0007/e3/f7/43425.svg" alt="Изыскатель" title="Изыскатель" /></li> </ul> </div> <div class="post-body"> <div class="post-box"> <div id="p182005-content" class="post-content"> <p>Сториз </p><div class="code-box"><strong class="legend">Код:</strong><div class="blockcode"><div class="scrollbox" style="height: 35em"><pre>[html] &lt;style&gt; h5 { opacity: 0.66; font-weight: normal; font-size: 1.25rem; } .container { position: relative; width: 430px; height: 350px; margin: 50px auto; background: #fafafa; display: flex; flex-direction: column; justify-content: space-between; color: #fff; } .time { padding: 10px; display: flex; justify-content: space-around; } .time-item { flex: 1 1 auto; border-radius: 5px; margin-right: 5px; height: 10px; background-color: rgba(0,0,0,0.10); position: relative; overflow: hidden; } .time-item:last-child { margin-right: 0; } .time-item &gt; div { position: absolute; width: 0%; height: 100%; background-color: rgba(255,255,255,0.5); } .content { position: absolute; height: 350px; width:430px; background-image: linear-gradient(-180deg, rgba(255,255,255,0.00) 0%, rgba(0,0,0,0.15) 100%); display: flex; flex-direction: column; justify-content: flex-end; } .texts { padding: 7%; } #back, #next { position: absolute; top: 0; } #back { left: 0; height: 100%; width: 50%; } #next { left: 50%; height: 100%; width: 50%; } &lt;/style&gt; &lt;script&gt; const stories = [ { title: 'Story 1', description: 'description 1', image: 'https://i.pinimg.com/736x/2e/be/62/2ebe623d6d27d70ea13731a01b4210e9.jpg', time: 3500 }, { title: 'Story 2', description: 'description 2', image: 'https://i.pinimg.com/736x/7c/f8/18/7cf818809ed21f9d21263b8a8417d504.jpg', time: 4000 },{ title: 'Story 3', description: 'description 3', image: 'https://i.pinimg.com/736x/b7/7b/e1/b77be1a020e21187490bb65859d2832c.jpg', time: 2500 }, { title: 'Story 4', description: 'description 4', image: 'https://i.pinimg.com/736x/8d/77/5e/8d775e040b58466a44518ad6b5c2a678.jpg', time: 7500 } ] const container = document.querySelector('.container') const nextButton = document.querySelector('#next') const backButton = document.querySelector('#back') function Storyfier(storiesArray, rootEl) { this.stories = storiesArray this.root = rootEl this.times = rootEl.querySelector('#times') this.currentTime = 0 this.currentIndex = 0 // create breakpoints for when the slides should change this.intervals = this.stories.map((story, index) =&gt; { // TODO change so that it just uses the previous value + current time let sum = 0 for (let i = 0; i &lt; index; i++){ sum += this.stories[i].time } return sum }) // necessary to make sure the last slide plays to completion this.maxTime = this.intervals[this.intervals.length - 1] + this.stories[this.stories.length - 1].time // render progress bars this.progressBars = this.stories.map(() =&gt; { const el = document.createElement('div') el.classList.add('time-item') el.innerHTML = '&lt;div style=&quot;width: 0%&quot;&gt;&lt;/div&gt;' return el }) this.progressBars.forEach((el) =&gt; { this.times.appendChild(el) }) // methods this.render = () =&gt; { const story = this.stories[this.currentIndex] this.root.style.background = `url('${story.image}')` this.root.querySelector('#title').innerHTML = story.title this.root.querySelector('#description').innerHTML = story.description } this.updateProgress = () =&gt; { this.progressBars.map((bar, index) =&gt; { // Fill already passed bars if (this.currentIndex &gt; index) { bar.querySelector('div').style.width = '100%' return } if (this.currentIndex &lt; index) { bar.querySelector('div').style.width = '0%' return } // update progress of current bar if (this.currentIndex == index) { const timeStart = this.intervals[this.currentIndex] let timeEnd; if (this.currentIndex == this.stories.length - 1){ timeEnd = this.maxTime } else { timeEnd = this.intervals[this.currentIndex + 1] } const animatable = bar.querySelector('div') animatable.style.width = `${((this.currentTime - timeStart)/(timeEnd - timeStart))*100}%` } }) } } Storyfier.prototype.start = function(){ // Render initial state this.render() // START INTERVAL const test = setInterval(() =&gt; { this.currentTime += 10 this.updateProgress() if (this.currentIndex &gt;= this.stories.length - 1 &amp;&amp; (this.currentTime &gt; this.maxTime)){ clearInterval(test) return } const lastIndex = this.currentIndex if (this.currentTime &gt;= this.intervals[this.currentIndex + 1]){ this.currentIndex += 1 } if (this.currentIndex != lastIndex) { this.render() } }, 10) } Storyfier.prototype.next = function(){ const next = this.currentIndex + 1 if (next &gt; this.stories.length - 1){ return } this.currentIndex = next this.currentTime = this.intervals[this.currentIndex] this.render() } Storyfier.prototype.back = function(){ if ((this.currentTime &gt; (this.intervals[this.currentIndex] + 350)) || this.currentIndex === 0){ this.currentTime = this.intervals[this.currentIndex] return } this.currentIndex -= 1 this.currentTime = this.intervals[this.currentIndex] this.render() } const setup = async () =&gt; { const loadImages = stories.map(({ image }) =&gt; { return new Promise((resolve, reject) =&gt; { let img = new Image() img.onload = () =&gt; { resolve(image) } img.src = image }) }) await Promise.all(loadImages) const s = new Storyfier(stories, container); s.start() nextButton.addEventListener('click', () =&gt; { s.next() }) backButton.addEventListener('click', () =&gt; { s.back() }) } setup() &lt;/script&gt; &lt;div class=&quot;container&quot;&gt; &lt;div id=&quot;times&quot; class=&quot;time&quot;&gt; &lt;/div&gt; &lt;div class=&quot;content&quot;&gt; &lt;div class=&quot;texts&quot;&gt; &lt;h1 id=&quot;title&quot;&gt;&lt;/h1&gt; &lt;h5 id=&quot;description&quot;&gt;&lt;/h5&gt; &lt;/div&gt; &lt;/div&gt; &lt;div id=&quot;back&quot;&gt;&lt;/div&gt; &lt;div id=&quot;next&quot;&gt;&lt;/div&gt; &lt;/div&gt; [/html]</pre></div></div></div> </div> <div class="post-rating"><p class="container"><a title="Вы не можете дать оценку участнику">+2</a></p></div> </div> <div class="clearer"><!-- --></div> </div> <div class="post-links"> <ul> <li class="pl-quote"><a href="javascript:quote('Will O The Wisp', 182005)">Цитировать<span class="acchide">&nbsp;Сообщение 176</span></a></li> </ul> </div> </div> </div> <div id="p183198" class="post" data-posted="1682504919" data-user-id="7629" data-group-id="8"> <h3><span><a class="sharelink" rel="nofollow" href="#p183198" onclick="return false;">Поделиться</a><strong>177</strong><a class="permalink" rel="nofollow" href="https://forumd.ru/viewtopic.php?id=7075&amp;p=18#p183198">26.04.23 13:28</a></span></h3> <div class="container"> <div class="post-author"> <ul> <li class="pa-author"><span class="acchide">Автор:&nbsp;</span><a href="https://forumd.ru/profile.php?id=7629" rel="nofollow">Will O The Wisp</a></li> <li class="pa-title">Участник</li> <li class="pa-avatar item2"><img src="https://forumavatars.ru/img/avatars/0007/e3/f7/7629-1628896044.jpg" alt="Will O The Wisp" title="Will O The Wisp" /></li> <li class="pa-last-visit"><span class="fld-name">Последний визит:</span><br />10.12.24 18:09</li> <li class="pa-respect"><span class="fld-name">Уважение:</span> <span>+594</span></li> <li class="pa-fld2"><img src="https://forumstatic.ru/files/0007/e3/f7/71606.svg" alt="Стажер" title="Стажер" /> <img src="https://forumstatic.ru/files/0007/e3/f7/43425.svg" alt="Изыскатель" title="Изыскатель" /></li> </ul> </div> <div class="post-body"> <div class="post-box"> <div id="p183198-content" class="post-content"> <p><img class="postimg" loading="lazy" src="https://forumupload.ru/uploads/0007/e3/f7/7629/284747.jpg" alt="https://forumupload.ru/uploads/0007/e3/f7/7629/284747.jpg" /><br />Как может выглядеть контейнер под статистику если применить к нему display: flex;</p> </div> <div class="post-rating"><p class="container"><a title="Вы не можете дать оценку участнику">+4</a></p></div> </div> <div class="clearer"><!-- --></div> </div> <div class="post-links"> <ul> <li class="pl-quote"><a href="javascript:quote('Will O The Wisp', 183198)">Цитировать<span class="acchide">&nbsp;Сообщение 177</span></a></li> </ul> </div> </div> </div> <div id="p183917" class="post altstyle" data-posted="1684301463" data-user-id="7629" data-group-id="8"> <h3><span><a class="sharelink" rel="nofollow" href="#p183917" onclick="return false;">Поделиться</a><strong>178</strong><a class="permalink" rel="nofollow" href="https://forumd.ru/viewtopic.php?id=7075&amp;p=18#p183917">17.05.23 08:31</a></span></h3> <div class="container"> <div class="post-author"> <ul> <li class="pa-author"><span class="acchide">Автор:&nbsp;</span><a href="https://forumd.ru/profile.php?id=7629" rel="nofollow">Will O The Wisp</a></li> <li class="pa-title">Участник</li> <li class="pa-avatar item2"><img src="https://forumavatars.ru/img/avatars/0007/e3/f7/7629-1628896044.jpg" alt="Will O The Wisp" title="Will O The Wisp" /></li> <li class="pa-last-visit"><span class="fld-name">Последний визит:</span><br />10.12.24 18:09</li> <li class="pa-respect"><span class="fld-name">Уважение:</span> <span>+594</span></li> <li class="pa-fld2"><img src="https://forumstatic.ru/files/0007/e3/f7/71606.svg" alt="Стажер" title="Стажер" /> <img src="https://forumstatic.ru/files/0007/e3/f7/43425.svg" alt="Изыскатель" title="Изыскатель" /></li> </ul> </div> <div class="post-body"> <div class="post-box"> <div id="p183917-content" class="post-content"> <p>Стильные кнопочки<br /><a href="https://codepen.io/jkantner/pen/QWZrMeB" rel="nofollow ugc" target="_blank">https://codepen.io/jkantner/pen/QWZrMeB</a></p><div class="code-box"><strong class="legend">Код:</strong><div class="blockcode"><div class="scrollbox" style="height: 35em"><pre>[html] &lt;style&gt; :root { --hue: 223; --bg: hsl(var(--hue),10%,90%); --fg: hsl(var(--hue),10%,10%); --trans-dur: 0.3s; font-size: calc(16px + (24 - 16) * (100vw - 320px) / (2560 - 320)); } .icon-btns { display: grid; grid-gap: 3em; grid-template-columns: repeat(2,1fr); margin: auto; padding: 3em 0; } .icon-btn { background-color: transparent; outline: transparent; position: relative; width: 4.5em; height: 4.5em; perspective: 24em; transform-style: preserve-3d; -webkit-tap-highlight-color: transparent; border: none; } .icon-btn__back, .icon-btn__front, .icon-btn__label { transition: opacity var(--trans-dur) cubic-bezier(0.83,0,0.17,1), transform var(--trans-dur) cubic-bezier(0.83,0,0.17,1); } .icon-btn__back, .icon-btn__front { border-radius: 1.25em; position: absolute; top: 0; left: 0; width: 100%; height: 100%; } .icon-btn__back { background: linear-gradient(hsl(var(--hue),10%,50%),hsl(208,10%,50%)); box-shadow: 0.5em -0.5em 0.75em hsla(var(--hue),10%,10%,0.15); display: block; transform: rotate(15deg); transform-origin: 100% 100%; } .icon-btn__front { background-color: hsla(0,0%,100%,0.3); box-shadow: 0 0 0 0.125em hsla(0,0%,100%,0.3) inset; backdrop-filter: blur(0.75em); -webkit-backdrop-filter: blur(0.75em); display: flex; transform-origin: 80% 50%; } .icon-btn--blue .icon-btn__back { background: linear-gradient(hsl(var(--hue),90%,50%),hsl(208,90%,50%)); } .icon-btn--green .icon-btn__back { background: linear-gradient(hsl(123,90%,40%),hsl(108,90%,40%)); } .icon-btn--indigo .icon-btn__back { background: linear-gradient(hsl(253,90%,50%),hsl(238,90%,50%)); } .icon-btn--purple .icon-btn__back { background: linear-gradient(hsl(283,90%,50%),hsl(268,90%,50%)); } .icon-btn--red .icon-btn__back { background: linear-gradient(hsl(3,90%,50%),hsl(348,90%,50%)); } .icon-btn--orange .icon-btn__back { background: linear-gradient(hsl(43,90%,50%),hsl(28,90%,50%)); } .icon-btn__icon { margin: auto; width: 1.5em; height: 1.5em; } .icon-btn__label { font-size: 0.75em; line-height: 2; opacity: 0; position: absolute; top: 100%; right: 0; left: 0; transform: translateY(0); color: #fff; } .icon-btn:focus-visible .icon-btn__back, .icon-btn:hover .icon-btn__back { transform: rotate(22.5deg); } .icon-btn:focus-visible .icon-btn__front, .icon-btn:hover .icon-btn__front { transform: translateZ(3em) rotateX(20deg) rotateY(20deg); } .icon-btn:focus-visible .icon-btn__label, .icon-btn:hover .icon-btn__label { opacity: 1; transform: translateY(20%); } .sprites { display: block; position: fixed; transform: translateY(-100%); } /* Dark theme */ @media (prefers-color-scheme: dark) { :root { --bg: hsl(var(--hue),10%,30%); --fg: hsl(var(--hue),10%,90%); } } /* Beyond mobile */ @media (min-width: 768px) { .icon-btns { grid-template-columns: repeat(3,1fr); } } &lt;/style&gt; &lt;container style=&quot;background: #6e5a5a; display: block; padding: 20px 0px 10px 60px;&quot;&gt; &lt;svg class=&quot;sprites&quot; display=&quot;none&quot;&gt; &lt;defs&gt; &lt;linearGradient id=&quot;icon-grad&quot; x1=&quot;0&quot; y1=&quot;0&quot; x2=&quot;1&quot; y2=&quot;1&quot;&gt; &lt;stop offset=&quot;0%&quot; stop-color=&quot;#fff&quot; /&gt; &lt;stop offset=&quot;100%&quot; stop-color=&quot;#222&quot; /&gt; &lt;/linearGradient&gt; &lt;mask id=&quot;icon-mask&quot;&gt; &lt;rect x=&quot;0&quot; y=&quot;0&quot; width=&quot;24&quot; height=&quot;24&quot; fill=&quot;url(#icon-grad)&quot; /&gt; &lt;/mask&gt; &lt;symbol id=&quot;files&quot; viewBox=&quot;0 0 24 24&quot;&gt; &lt;g fill=&quot;hsl(0,0%,100%)&quot; mask=&quot;url(#icon-mask)&quot;&gt; &lt;path d=&quot;m2.003,3h3.997c1.105,0,2,.895,2,2h0s14.005,0,14.005,0c1.102,0,1.995.893,1.995,1.995v1.005H0v-2.997c0-1.106.897-2.003,2.003-2.003Z&quot;/&gt; &lt;path d=&quot;m22.005,21H1.996c-1.102,0-1.996-.893-1.996-1.996v-9.004l24-.172v9.177c0,1.102-.893,1.995-1.995,1.995Z&quot;/&gt; &lt;/g&gt; &lt;/symbol&gt; &lt;symbol id=&quot;books&quot; viewBox=&quot;0 0 24 24&quot;&gt; &lt;g fill=&quot;hsl(0,0%,100%)&quot; mask=&quot;url(#icon-mask)&quot;&gt; &lt;path d=&quot;m14.113,22.696c-.356.389-1.022.176-1.022-.351V3.287c1.091-1.091,2.277-1.558,3.509-1.83,2.182-.481,4.125-.377,5.314-.222,1.317.171,2.087,1.342,2.087,2.495v14.357c0,1.553-1.296,2.777-2.802,2.727-1.246-.041-2.975.003-4.541.382-1.195.289-1.954.856-2.544,1.501Z&quot;/&gt; &lt;path d=&quot;m9.887,22.696c.356.389,1.022.176,1.022-.351V3.287c-1.091-1.091-2.277-1.558-3.509-1.83-2.182-.481-4.125-.377-5.314-.222C.77,1.406,0,2.577,0,3.729v14.357c0,1.553,1.296,2.777,2.802,2.727,1.246-.041,2.975.003,4.541.382,1.194.289,1.954.856,2.544,1.501Z&quot;/&gt; &lt;/g&gt; &lt;/symbol&gt; &lt;symbol id=&quot;graph&quot; viewBox=&quot;0 0 24 24&quot;&gt; &lt;g fill=&quot;hsl(0,0%,100%)&quot; mask=&quot;url(#icon-mask)&quot;&gt; &lt;rect rx=&quot;1&quot; ry=&quot;1&quot; x=&quot;0&quot; y=&quot;12&quot; width=&quot;6&quot; height=&quot;12&quot; /&gt; &lt;rect rx=&quot;1&quot; ry=&quot;1&quot; x=&quot;9&quot; y=&quot;0&quot; width=&quot;6&quot; height=&quot;24&quot; /&gt; &lt;rect rx=&quot;1&quot; ry=&quot;1&quot; x=&quot;18&quot; y=&quot;6&quot; width=&quot;6&quot; height=&quot;18&quot; /&gt; &lt;/g&gt; &lt;/symbol&gt; &lt;symbol id=&quot;weather&quot; viewBox=&quot;0 0 24 24&quot;&gt; &lt;g fill=&quot;hsl(0,0%,100%)&quot; mask=&quot;url(#icon-mask)&quot;&gt; &lt;path d=&quot;m2.65,10.95c.916-.546,1.986-.858,3.129-.858.138,0,.276.004.414.013.388-1.331,1.13-2.499,2.113-3.403-.187-2.126-1.971-3.791-4.144-3.791-2.299,0-4.162,1.863-4.162,4.162,0,1.766,1.1,3.273,2.65,3.877Z&quot;/&gt; &lt;path d=&quot;m19.687,12.464s-.003,0-.005,0c.002-.072.005-.144.005-.216,0-3.454-2.8-6.254-6.253-6.254-3.235,0-5.897,2.457-6.22,5.607-.454-.14-.936-.216-1.435-.216-2.679,0-4.852,2.172-4.852,4.852s2.172,4.852,4.852,4.852h13.908c2.382,0,4.313-1.931,4.313-4.312,0-2.382-1.931-4.313-4.313-4.313Z&quot;/&gt; &lt;/g&gt; &lt;/symbol&gt; &lt;symbol id=&quot;pen&quot; viewBox=&quot;0 0 24 24&quot;&gt; &lt;g fill=&quot;hsl(0,0%,100%)&quot; mask=&quot;url(#icon-mask)&quot;&gt; &lt;path d=&quot;M3.1,0C2.5-0.1,2.1,0.6,2.5,1L10,8.5c0.2,0,0.4-0.1,0.6-0.1c1.2,0,2.2,1,2.2,2.2c0,1.2-1,2.2-2.2,2.2c-1.2,0-2.2-1-2.2-2.2c0-0.2,0-0.4,0.1-0.6L1,2.5C0.6,2.1-0.1,2.5,0,3.1L3.4,17c0.1,0.4,0.4,0.7,0.9,0.8l6.4,1.3c-0.2,0.4-0.1,0.9,0.2,1.2l3.3,3.3c0.4,0.4,1.1,0.4,1.6,0l7.8-7.8c0.4-0.4,0.4-1.1,0-1.6l-3.3-3.3c-0.3-0.3-0.8-0.4-1.2-0.2l-1.3-6.4c-0.1-0.4-0.4-0.8-0.8-0.9L3.1,0z&quot;/&gt; &lt;/g&gt; &lt;/symbol&gt; &lt;symbol id=&quot;heart&quot; viewBox=&quot;0 0 24 24&quot;&gt; &lt;g fill=&quot;hsl(0,0%,100%)&quot; mask=&quot;url(#icon-mask)&quot;&gt; &lt;path d=&quot;m.204,9.117c.272,1.039.791,1.942,1.558,2.709l10.238,10.597,10.238-10.597c.767-.767,1.287-1.67,1.558-2.709.272-1.039.272-2.07,0-3.093-.272-1.023-.791-1.918-1.558-2.685-.767-.767-1.662-1.287-2.685-1.558-1.023-.272-2.062-.272-3.117,0-1.055.272-1.95.791-2.685,1.558l-1.75,2.11-1.75-2.11c-.767-.767-1.662-1.287-2.685-1.558s-2.054-.272-3.093,0c-1.039.272-1.942.791-2.709,1.558-.767.767-1.287,1.662-1.558,2.685-.272,1.023-.272,2.054,0,3.093Z&quot;/&gt; &lt;/g&gt; &lt;/symbol&gt; &lt;/defs&gt; &lt;/svg&gt; &lt;div class=&quot;icon-btns&quot;&gt; &lt;button class=&quot;icon-btn icon-btn--blue&quot; type=&quot;button&quot;&gt; &lt;span class=&quot;icon-btn__back&quot;&gt;&lt;/span&gt; &lt;span class=&quot;icon-btn__front&quot;&gt; &lt;svg class=&quot;icon-btn__icon&quot; width=&quot;24px&quot; height=&quot;24px&quot; aria-hidden=&quot;true&quot;&gt; &lt;use xlink:href=&quot;#files&quot; /&gt; &lt;/svg&gt; &lt;/span&gt; &lt;span class=&quot;icon-btn__label&quot;&gt;Files&lt;/span&gt; &lt;/button&gt; &lt;button class=&quot;icon-btn icon-btn--purple&quot; type=&quot;button&quot;&gt; &lt;span class=&quot;icon-btn__back&quot;&gt;&lt;/span&gt; &lt;span class=&quot;icon-btn__front&quot;&gt; &lt;svg class=&quot;icon-btn__icon&quot; width=&quot;24px&quot; height=&quot;24px&quot; aria-hidden=&quot;true&quot;&gt; &lt;use xlink:href=&quot;#books&quot; /&gt; &lt;/svg&gt; &lt;/span&gt; &lt;span class=&quot;icon-btn__label&quot;&gt;Books&lt;/span&gt; &lt;/button&gt; &lt;button class=&quot;icon-btn icon-btn--red&quot; type=&quot;button&quot;&gt; &lt;span class=&quot;icon-btn__back&quot;&gt;&lt;/span&gt; &lt;span class=&quot;icon-btn__front&quot;&gt; &lt;svg class=&quot;icon-btn__icon&quot; width=&quot;24px&quot; height=&quot;24px&quot; aria-hidden=&quot;true&quot;&gt; &lt;use xlink:href=&quot;#heart&quot; /&gt; &lt;/svg&gt; &lt;/span&gt; &lt;span class=&quot;icon-btn__label&quot;&gt;Health&lt;/span&gt; &lt;/button&gt; &lt;button class=&quot;icon-btn icon-btn--indigo&quot; type=&quot;button&quot;&gt; &lt;span class=&quot;icon-btn__back&quot;&gt;&lt;/span&gt; &lt;span class=&quot;icon-btn__front&quot;&gt; &lt;svg class=&quot;icon-btn__icon&quot; width=&quot;24px&quot; height=&quot;24px&quot; aria-hidden=&quot;true&quot;&gt; &lt;use xlink:href=&quot;#weather&quot; /&gt; &lt;/svg&gt; &lt;/span&gt; &lt;span class=&quot;icon-btn__label&quot;&gt;Weather&lt;/span&gt; &lt;/button&gt; &lt;button class=&quot;icon-btn icon-btn--orange&quot; type=&quot;button&quot;&gt; &lt;span class=&quot;icon-btn__back&quot;&gt;&lt;/span&gt; &lt;span class=&quot;icon-btn__front&quot;&gt; &lt;svg class=&quot;icon-btn__icon&quot; width=&quot;24px&quot; height=&quot;24px&quot; aria-hidden=&quot;true&quot;&gt; &lt;use xlink:href=&quot;#pen&quot; /&gt; &lt;/svg&gt; &lt;/span&gt; &lt;span class=&quot;icon-btn__label&quot;&gt;Notes&lt;/span&gt; &lt;/button&gt; &lt;button class=&quot;icon-btn icon-btn--green&quot; type=&quot;button&quot;&gt; &lt;span class=&quot;icon-btn__back&quot;&gt;&lt;/span&gt; &lt;span class=&quot;icon-btn__front&quot;&gt; &lt;svg class=&quot;icon-btn__icon&quot; width=&quot;24px&quot; height=&quot;24px&quot; aria-hidden=&quot;true&quot;&gt; &lt;use xlink:href=&quot;#graph&quot; /&gt; &lt;/svg&gt; &lt;/span&gt; &lt;span class=&quot;icon-btn__label&quot;&gt;Spreadsheets&lt;/span&gt; &lt;/button&gt; &lt;/div&gt; &lt;/container&gt; [/html]</pre></div></div></div> <p class="lastedit">Отредактировано Will O The Wisp (17.05.23 08:32)</p> </div> <div class="post-rating"><p class="container"><a title="Вы не можете дать оценку участнику">+3</a></p></div> </div> <div class="clearer"><!-- --></div> </div> <div class="post-links"> <ul> <li class="pl-quote"><a href="javascript:quote('Will O The Wisp', 183917)">Цитировать<span class="acchide">&nbsp;Сообщение 178</span></a></li> </ul> </div> </div> </div> <div id="p186089" class="post" data-posted="1689317807" data-user-id="7629" data-group-id="8"> <h3><span><a class="sharelink" rel="nofollow" href="#p186089" onclick="return false;">Поделиться</a><strong>179</strong><a class="permalink" rel="nofollow" href="https://forumd.ru/viewtopic.php?id=7075&amp;p=18#p186089">14.07.23 09:56</a></span></h3> <div class="container"> <div class="post-author"> <ul> <li class="pa-author"><span class="acchide">Автор:&nbsp;</span><a href="https://forumd.ru/profile.php?id=7629" rel="nofollow">Will O The Wisp</a></li> <li class="pa-title">Участник</li> <li class="pa-avatar item2"><img src="https://forumavatars.ru/img/avatars/0007/e3/f7/7629-1628896044.jpg" alt="Will O The Wisp" title="Will O The Wisp" /></li> <li class="pa-last-visit"><span class="fld-name">Последний визит:</span><br />10.12.24 18:09</li> <li class="pa-respect"><span class="fld-name">Уважение:</span> <span>+594</span></li> <li class="pa-fld2"><img src="https://forumstatic.ru/files/0007/e3/f7/71606.svg" alt="Стажер" title="Стажер" /> <img src="https://forumstatic.ru/files/0007/e3/f7/43425.svg" alt="Изыскатель" title="Изыскатель" /></li> </ul> </div> <div class="post-body"> <div class="post-box"> <div id="p186089-content" class="post-content"> <p>Работающая авадакедавра с размещением в теме </p><div class="code-box"><strong class="legend">Код:</strong><div class="blockcode"><div class="scrollbox" style="height: 35em"><pre>[html] &lt;style&gt; #container { margin: 0; padding: 0; display: flex; flex-direction: column; justify-content: center; align-items: center; width: 100%; height: 800px; } .a-title { position: absolute; color: transparent; -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-image: conic-gradient(#ed0101, blue); pointer-events: none; mix-blend-mode: difference; filter: drop-shadow(2px 4px 6px black); } .a-second-title { position: absolute; margin-top: 25vh; pointer-events: none; -webkit-text-stroke: 1.3px white; letter-spacing: 1.125px; font-size: -webkit-xxx-large; font-weight: 900; mix-blend-mode: color-dodge; } canvas { width: 100%; height: 100%; } &lt;/style&gt; &lt;script&gt; 'use strict'; const canvas = document.getElementsByTagName('canvas')[0]; canvas.width = canvas.clientWidth; canvas.height = canvas.clientHeight; let config = { TEXTURE_DOWNSAMPLE: 1, DENSITY_DISSIPATION: 0.98, VELOCITY_DISSIPATION: 0.99, PRESSURE_DISSIPATION: 0.8, PRESSURE_ITERATIONS: 25, CURL: 28, SPLAT_RADIUS: 0.004 }; let pointers = []; let splatStack = []; const { gl, ext } = getWebGLContext(canvas); function getWebGLContext(canvas) { const params = { alpha: false, depth: false, stencil: false, antialias: false }; let gl = canvas.getContext('webgl2', params); const isWebGL2 = !!gl; if (!isWebGL2) gl = canvas.getContext('webgl', params) || canvas.getContext('experimental-webgl', params); let halfFloat; let supportLinearFiltering; if (isWebGL2) { gl.getExtension('EXT_color_buffer_float'); supportLinearFiltering = gl.getExtension('OES_texture_float_linear'); } else { halfFloat = gl.getExtension('OES_texture_half_float'); supportLinearFiltering = gl.getExtension('OES_texture_half_float_linear'); } gl.clearColor(0.0, 0.0, 0.0, 1.0); const halfFloatTexType = isWebGL2 ? gl.HALF_FLOAT : halfFloat.HALF_FLOAT_OES; let formatRGBA; let formatRG; let formatR; if (isWebGL2) { formatRGBA = getSupportedFormat(gl, gl.RGBA16F, gl.RGBA, halfFloatTexType); formatRG = getSupportedFormat(gl, gl.RG16F, gl.RG, halfFloatTexType); formatR = getSupportedFormat(gl, gl.R16F, gl.RED, halfFloatTexType); } else { formatRGBA = getSupportedFormat(gl, gl.RGBA, gl.RGBA, halfFloatTexType); formatRG = getSupportedFormat(gl, gl.RGBA, gl.RGBA, halfFloatTexType); formatR = getSupportedFormat(gl, gl.RGBA, gl.RGBA, halfFloatTexType); } return { gl, ext: { formatRGBA, formatRG, formatR, halfFloatTexType, supportLinearFiltering } }; } function getSupportedFormat(gl, internalFormat, format, type) { if (!supportRenderTextureFormat(gl, internalFormat, format, type)) { switch (internalFormat) { case gl.R16F: return getSupportedFormat(gl, gl.RG16F, gl.RG, type); case gl.RG16F: return getSupportedFormat(gl, gl.RGBA16F, gl.RGBA, type); default: return null;} } return { internalFormat, format }; } function supportRenderTextureFormat(gl, internalFormat, format, type) { let texture = gl.createTexture(); gl.bindTexture(gl.TEXTURE_2D, texture); gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MIN_FILTER, gl.NEAREST); gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MAG_FILTER, gl.NEAREST); gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_S, gl.CLAMP_TO_EDGE); gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_T, gl.CLAMP_TO_EDGE); gl.texImage2D(gl.TEXTURE_2D, 0, internalFormat, 4, 4, 0, format, type, null); let fbo = gl.createFramebuffer(); gl.bindFramebuffer(gl.FRAMEBUFFER, fbo); gl.framebufferTexture2D(gl.FRAMEBUFFER, gl.COLOR_ATTACHMENT0, gl.TEXTURE_2D, texture, 0); const status = gl.checkFramebufferStatus(gl.FRAMEBUFFER); if (status != gl.FRAMEBUFFER_COMPLETE) return false; return true; } function pointerPrototype() { this.id = -1; this.x = 0; this.y = 0; this.dx = 0; this.dy = 0; this.down = false; this.moved = false; this.color = [30, 0, 300]; } pointers.push(new pointerPrototype()); class GLProgram { constructor(vertexShader, fragmentShader) { this.uniforms = {}; this.program = gl.createProgram(); gl.attachShader(this.program, vertexShader); gl.attachShader(this.program, fragmentShader); gl.linkProgram(this.program); if (!gl.getProgramParameter(this.program, gl.LINK_STATUS)) throw gl.getProgramInfoLog(this.program); const uniformCount = gl.getProgramParameter(this.program, gl.ACTIVE_UNIFORMS); for (let i = 0; i &lt; uniformCount; i++) { const uniformName = gl.getActiveUniform(this.program, i).name; this.uniforms[uniformName] = gl.getUniformLocation(this.program, uniformName); } } bind() { gl.useProgram(this.program); }} function compileShader(type, source) { const shader = gl.createShader(type); gl.shaderSource(shader, source); gl.compileShader(shader); if (!gl.getShaderParameter(shader, gl.COMPILE_STATUS)) throw gl.getShaderInfoLog(shader); return shader; }; const baseVertexShader = compileShader(gl.VERTEX_SHADER, ` precision highp float; precision mediump sampler2D; attribute vec2 aPosition; varying vec2 vUv; varying vec2 vL; varying vec2 vR; varying vec2 vT; varying vec2 vB; uniform vec2 texelSize; void main () { vUv = aPosition * 0.5 + 0.5; vL = vUv - vec2(texelSize.x, 0.0); vR = vUv + vec2(texelSize.x, 0.0); vT = vUv + vec2(0.0, texelSize.y); vB = vUv - vec2(0.0, texelSize.y); gl_Position = vec4(aPosition, 0.0, 1.0); } `); const clearShader = compileShader(gl.FRAGMENT_SHADER, ` precision highp float; precision mediump sampler2D; varying vec2 vUv; uniform sampler2D uTexture; uniform float value; void main () { gl_FragColor = value * texture2D(uTexture, vUv); } `); const displayShader = compileShader(gl.FRAGMENT_SHADER, ` precision highp float; precision mediump sampler2D; varying vec2 vUv; uniform sampler2D uTexture; void main () { gl_FragColor = texture2D(uTexture, vUv); } `); const splatShader = compileShader(gl.FRAGMENT_SHADER, ` precision highp float; precision mediump sampler2D; varying vec2 vUv; uniform sampler2D uTarget; uniform float aspectRatio; uniform vec3 color; uniform vec2 point; uniform float radius; void main () { vec2 p = vUv - point.xy; p.x *= aspectRatio; vec3 splat = exp(-dot(p, p) / radius) * color; vec3 base = texture2D(uTarget, vUv).xyz; gl_FragColor = vec4(base + splat, 1.0); } `); const advectionManualFilteringShader = compileShader(gl.FRAGMENT_SHADER, ` precision highp float; precision mediump sampler2D; varying vec2 vUv; uniform sampler2D uVelocity; uniform sampler2D uSource; uniform vec2 texelSize; uniform float dt; uniform float dissipation; vec4 bilerp (in sampler2D sam, in vec2 p) { vec4 st; st.xy = floor(p - 0.5) + 0.5; st.zw = st.xy + 1.0; vec4 uv = st * texelSize.xyxy; vec4 a = texture2D(sam, uv.xy); vec4 b = texture2D(sam, uv.zy); vec4 c = texture2D(sam, uv.xw); vec4 d = texture2D(sam, uv.zw); vec2 f = p - st.xy; return mix(mix(a, b, f.x), mix(c, d, f.x), f.y); } void main () { vec2 coord = gl_FragCoord.xy - dt * texture2D(uVelocity, vUv).xy; gl_FragColor = dissipation * bilerp(uSource, coord); gl_FragColor.a = 1.0; } `); const advectionShader = compileShader(gl.FRAGMENT_SHADER, ` precision highp float; precision mediump sampler2D; varying vec2 vUv; uniform sampler2D uVelocity; uniform sampler2D uSource; uniform vec2 texelSize; uniform float dt; uniform float dissipation; void main () { vec2 coord = vUv - dt * texture2D(uVelocity, vUv).xy * texelSize; gl_FragColor = dissipation * texture2D(uSource, coord); gl_FragColor.a = 1.0; } `); const divergenceShader = compileShader(gl.FRAGMENT_SHADER, ` precision highp float; precision mediump sampler2D; varying vec2 vUv; varying vec2 vL; varying vec2 vR; varying vec2 vT; varying vec2 vB; uniform sampler2D uVelocity; vec2 sampleVelocity (in vec2 uv) { vec2 multiplier = vec2(1.0, 1.0); if (uv.x &lt; 0.0) { uv.x = 0.0; multiplier.x = -1.0; } if (uv.x &gt; 1.0) { uv.x = 1.0; multiplier.x = -1.0; } if (uv.y &lt; 0.0) { uv.y = 0.0; multiplier.y = -1.0; } if (uv.y &gt; 1.0) { uv.y = 1.0; multiplier.y = -1.0; } return multiplier * texture2D(uVelocity, uv).xy; } void main () { float L = sampleVelocity(vL).x; float R = sampleVelocity(vR).x; float T = sampleVelocity(vT).y; float B = sampleVelocity(vB).y; float div = 0.5 * (R - L + T - B); gl_FragColor = vec4(div, 0.0, 0.0, 1.0); } `); const curlShader = compileShader(gl.FRAGMENT_SHADER, ` precision highp float; precision mediump sampler2D; varying vec2 vUv; varying vec2 vL; varying vec2 vR; varying vec2 vT; varying vec2 vB; uniform sampler2D uVelocity; void main () { float L = texture2D(uVelocity, vL).y; float R = texture2D(uVelocity, vR).y; float T = texture2D(uVelocity, vT).x; float B = texture2D(uVelocity, vB).x; float vorticity = R - L - T + B; gl_FragColor = vec4(vorticity, 0.0, 0.0, 1.0); } `); const vorticityShader = compileShader(gl.FRAGMENT_SHADER, ` precision highp float; precision mediump sampler2D; varying vec2 vUv; varying vec2 vT; varying vec2 vB; uniform sampler2D uVelocity; uniform sampler2D uCurl; uniform float curl; uniform float dt; void main () { float T = texture2D(uCurl, vT).x; float B = texture2D(uCurl, vB).x; float C = texture2D(uCurl, vUv).x; vec2 force = vec2(abs(T) - abs(B), 0.0); force *= 1.0 / length(force + 0.00001) * curl * C; vec2 vel = texture2D(uVelocity, vUv).xy; gl_FragColor = vec4(vel + force * dt, 0.0, 1.0); } `); const pressureShader = compileShader(gl.FRAGMENT_SHADER, ` precision highp float; precision mediump sampler2D; varying vec2 vUv; varying vec2 vL; varying vec2 vR; varying vec2 vT; varying vec2 vB; uniform sampler2D uPressure; uniform sampler2D uDivergence; vec2 boundary (in vec2 uv) { uv = min(max(uv, 0.0), 1.0); return uv; } void main () { float L = texture2D(uPressure, boundary(vL)).x; float R = texture2D(uPressure, boundary(vR)).x; float T = texture2D(uPressure, boundary(vT)).x; float B = texture2D(uPressure, boundary(vB)).x; float C = texture2D(uPressure, vUv).x; float divergence = texture2D(uDivergence, vUv).x; float pressure = (L + R + B + T - divergence) * 0.25; gl_FragColor = vec4(pressure, 0.0, 0.0, 1.0); } `); const gradientSubtractShader = compileShader(gl.FRAGMENT_SHADER, ` precision highp float; precision mediump sampler2D; varying vec2 vUv; varying vec2 vL; varying vec2 vR; varying vec2 vT; varying vec2 vB; uniform sampler2D uPressure; uniform sampler2D uVelocity; vec2 boundary (in vec2 uv) { uv = min(max(uv, 0.0), 1.0); return uv; } void main () { float L = texture2D(uPressure, boundary(vL)).x; float R = texture2D(uPressure, boundary(vR)).x; float T = texture2D(uPressure, boundary(vT)).x; float B = texture2D(uPressure, boundary(vB)).x; vec2 velocity = texture2D(uVelocity, vUv).xy; velocity.xy -= vec2(R - L, T - B); gl_FragColor = vec4(velocity, 0.0, 1.0); } `); let textureWidth; let textureHeight; let density; let velocity; let divergence; let curl; let pressure; initFramebuffers(); const clearProgram = new GLProgram(baseVertexShader, clearShader); const displayProgram = new GLProgram(baseVertexShader, displayShader); const splatProgram = new GLProgram(baseVertexShader, splatShader); const advectionProgram = new GLProgram(baseVertexShader, ext.supportLinearFiltering ? advectionShader : advectionManualFilteringShader); const divergenceProgram = new GLProgram(baseVertexShader, divergenceShader); const curlProgram = new GLProgram(baseVertexShader, curlShader); const vorticityProgram = new GLProgram(baseVertexShader, vorticityShader); const pressureProgram = new GLProgram(baseVertexShader, pressureShader); const gradienSubtractProgram = new GLProgram(baseVertexShader, gradientSubtractShader); function initFramebuffers() { textureWidth = gl.drawingBufferWidth &gt;&gt; config.TEXTURE_DOWNSAMPLE; textureHeight = gl.drawingBufferHeight &gt;&gt; config.TEXTURE_DOWNSAMPLE; const texType = ext.halfFloatTexType; const rgba = ext.formatRGBA; const rg = ext.formatRG; const r = ext.formatR; density = createDoubleFBO(2, textureWidth, textureHeight, rgba.internalFormat, rgba.format, texType, ext.supportLinearFiltering ? gl.LINEAR : gl.NEAREST); velocity = createDoubleFBO(0, textureWidth, textureHeight, rg.internalFormat, rg.format, texType, ext.supportLinearFiltering ? gl.LINEAR : gl.NEAREST); divergence = createFBO(4, textureWidth, textureHeight, r.internalFormat, r.format, texType, gl.NEAREST); curl = createFBO(5, textureWidth, textureHeight, r.internalFormat, r.format, texType, gl.NEAREST); pressure = createDoubleFBO(6, textureWidth, textureHeight, r.internalFormat, r.format, texType, gl.NEAREST); } function createFBO(texId, w, h, internalFormat, format, type, param) { gl.activeTexture(gl.TEXTURE0 + texId); let texture = gl.createTexture(); gl.bindTexture(gl.TEXTURE_2D, texture); gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MIN_FILTER, param); gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MAG_FILTER, param); gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_S, gl.CLAMP_TO_EDGE); gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_T, gl.CLAMP_TO_EDGE); gl.texImage2D(gl.TEXTURE_2D, 0, internalFormat, w, h, 0, format, type, null); let fbo = gl.createFramebuffer(); gl.bindFramebuffer(gl.FRAMEBUFFER, fbo); gl.framebufferTexture2D(gl.FRAMEBUFFER, gl.COLOR_ATTACHMENT0, gl.TEXTURE_2D, texture, 0); gl.viewport(0, 0, w, h); gl.clear(gl.COLOR_BUFFER_BIT); return [texture, fbo, texId]; } function createDoubleFBO(texId, w, h, internalFormat, format, type, param) { let fbo1 = createFBO(texId, w, h, internalFormat, format, type, param); let fbo2 = createFBO(texId + 1, w, h, internalFormat, format, type, param); return { get read() { return fbo1; }, get write() { return fbo2; }, swap() { let temp = fbo1; fbo1 = fbo2; fbo2 = temp; } }; } const blit = (() =&gt; { gl.bindBuffer(gl.ARRAY_BUFFER, gl.createBuffer()); gl.bufferData(gl.ARRAY_BUFFER, new Float32Array([-1, -1, -1, 1, 1, 1, 1, -1]), gl.STATIC_DRAW); gl.bindBuffer(gl.ELEMENT_ARRAY_BUFFER, gl.createBuffer()); gl.bufferData(gl.ELEMENT_ARRAY_BUFFER, new Uint16Array([0, 1, 2, 0, 2, 3]), gl.STATIC_DRAW); gl.vertexAttribPointer(0, 2, gl.FLOAT, false, 0, 0); gl.enableVertexAttribArray(0); return destination =&gt; { gl.bindFramebuffer(gl.FRAMEBUFFER, destination); gl.drawElements(gl.TRIANGLES, 6, gl.UNSIGNED_SHORT, 0); }; })(); let lastTime = Date.now(); multipleSplats(parseInt(Math.random() * 20) + 5); update(); function update() { resizeCanvas(); const dt = Math.min((Date.now() - lastTime) / 1000, 0.016); lastTime = Date.now(); gl.viewport(0, 0, textureWidth, textureHeight); if (splatStack.length &gt; 0) multipleSplats(splatStack.pop()); advectionProgram.bind(); gl.uniform2f(advectionProgram.uniforms.texelSize, 1.0 / textureWidth, 1.0 / textureHeight); gl.uniform1i(advectionProgram.uniforms.uVelocity, velocity.read[2]); gl.uniform1i(advectionProgram.uniforms.uSource, velocity.read[2]); gl.uniform1f(advectionProgram.uniforms.dt, dt); gl.uniform1f(advectionProgram.uniforms.dissipation, config.VELOCITY_DISSIPATION); blit(velocity.write[1]); velocity.swap(); gl.uniform1i(advectionProgram.uniforms.uVelocity, velocity.read[2]); gl.uniform1i(advectionProgram.uniforms.uSource, density.read[2]); gl.uniform1f(advectionProgram.uniforms.dissipation, config.DENSITY_DISSIPATION); blit(density.write[1]); density.swap(); for (let i = 0; i &lt; pointers.length; i++) { const pointer = pointers[i]; if (pointer.moved) { splat(pointer.x, pointer.y, pointer.dx, pointer.dy, pointer.color); pointer.moved = false; } } curlProgram.bind(); gl.uniform2f(curlProgram.uniforms.texelSize, 1.0 / textureWidth, 1.0 / textureHeight); gl.uniform1i(curlProgram.uniforms.uVelocity, velocity.read[2]); blit(curl[1]); vorticityProgram.bind(); gl.uniform2f(vorticityProgram.uniforms.texelSize, 1.0 / textureWidth, 1.0 / textureHeight); gl.uniform1i(vorticityProgram.uniforms.uVelocity, velocity.read[2]); gl.uniform1i(vorticityProgram.uniforms.uCurl, curl[2]); gl.uniform1f(vorticityProgram.uniforms.curl, config.CURL); gl.uniform1f(vorticityProgram.uniforms.dt, dt); blit(velocity.write[1]); velocity.swap(); divergenceProgram.bind(); gl.uniform2f(divergenceProgram.uniforms.texelSize, 1.0 / textureWidth, 1.0 / textureHeight); gl.uniform1i(divergenceProgram.uniforms.uVelocity, velocity.read[2]); blit(divergence[1]); clearProgram.bind(); let pressureTexId = pressure.read[2]; gl.activeTexture(gl.TEXTURE0 + pressureTexId); gl.bindTexture(gl.TEXTURE_2D, pressure.read[0]); gl.uniform1i(clearProgram.uniforms.uTexture, pressureTexId); gl.uniform1f(clearProgram.uniforms.value, config.PRESSURE_DISSIPATION); blit(pressure.write[1]); pressure.swap(); pressureProgram.bind(); gl.uniform2f(pressureProgram.uniforms.texelSize, 1.0 / textureWidth, 1.0 / textureHeight); gl.uniform1i(pressureProgram.uniforms.uDivergence, divergence[2]); pressureTexId = pressure.read[2]; gl.uniform1i(pressureProgram.uniforms.uPressure, pressureTexId); gl.activeTexture(gl.TEXTURE0 + pressureTexId); for (let i = 0; i &lt; config.PRESSURE_ITERATIONS; i++) { gl.bindTexture(gl.TEXTURE_2D, pressure.read[0]); blit(pressure.write[1]); pressure.swap(); } gradienSubtractProgram.bind(); gl.uniform2f(gradienSubtractProgram.uniforms.texelSize, 1.0 / textureWidth, 1.0 / textureHeight); gl.uniform1i(gradienSubtractProgram.uniforms.uPressure, pressure.read[2]); gl.uniform1i(gradienSubtractProgram.uniforms.uVelocity, velocity.read[2]); blit(velocity.write[1]); velocity.swap(); gl.viewport(0, 0, gl.drawingBufferWidth, gl.drawingBufferHeight); displayProgram.bind(); gl.uniform1i(displayProgram.uniforms.uTexture, density.read[2]); blit(null); requestAnimationFrame(update); } function splat(x, y, dx, dy, color) { splatProgram.bind(); gl.uniform1i(splatProgram.uniforms.uTarget, velocity.read[2]); gl.uniform1f(splatProgram.uniforms.aspectRatio, canvas.width / canvas.height); gl.uniform2f(splatProgram.uniforms.point, x / canvas.width, 1.0 - y / canvas.height); gl.uniform3f(splatProgram.uniforms.color, dx, -dy, 1.0); gl.uniform1f(splatProgram.uniforms.radius, config.SPLAT_RADIUS); blit(velocity.write[1]); velocity.swap(); gl.uniform1i(splatProgram.uniforms.uTarget, density.read[2]); gl.uniform3f(splatProgram.uniforms.color, color[0] * 0.3, color[1] * 0.3, color[2] * 0.3); blit(density.write[1]); density.swap(); } function multipleSplats(amount) { for (let i = 0; i &lt; amount; i++) { const color = [Math.random() * 10, Math.random() * 10, Math.random() * 10]; const x = canvas.width * Math.random(); const y = canvas.height * Math.random(); const dx = 1000 * (Math.random() - 0.5); const dy = 1000 * (Math.random() - 0.5); splat(x, y, dx, dy, color); } } function resizeCanvas() { if (canvas.width != canvas.clientWidth || canvas.height != canvas.clientHeight) { canvas.width = canvas.clientWidth; canvas.height = canvas.clientHeight; initFramebuffers(); } } canvas.addEventListener('mousemove', e =&gt; { pointers[0].moved = pointers[0].down; pointers[0].dx = (e.offsetX - pointers[0].x) * 10.0; pointers[0].dy = (e.offsetY - pointers[0].y) * 10.0; pointers[0].x = e.offsetX; pointers[0].y = e.offsetY; }); canvas.addEventListener('touchmove', e =&gt; { e.preventDefault(); const touches = e.targetTouches; for (let i = 0; i &lt; touches.length; i++) { let pointer = pointers[i]; pointer.moved = pointer.down; pointer.dx = (touches[i].pageX - pointer.x) * 10.0; pointer.dy = (touches[i].pageY - pointer.y) * 10.0; pointer.x = touches[i].pageX; pointer.y = touches[i].pageY; } }, false); canvas.addEventListener('mousemove', () =&gt; { pointers[0].down = true; pointers[0].color = [Math.random() + 0.2, Math.random() + 0.2, Math.random() + 0.2]; }); canvas.addEventListener('touchstart', e =&gt; { e.preventDefault(); const touches = e.targetTouches; for (let i = 0; i &lt; touches.length; i++) { if (i &gt;= pointers.length) pointers.push(new pointerPrototype()); pointers[i].id = touches[i].identifier; pointers[i].down = true; pointers[i].x = touches[i].pageX; pointers[i].y = touches[i].pageY; pointers[i].color = [Math.random() + 0.2, Math.random() + 0.2, Math.random() + 0.2]; } }); window.addEventListener('mouseleave', () =&gt; { pointers[0].down = false; }); window.addEventListener('touchend', e =&gt; { const touches = e.changedTouches; for (let i = 0; i &lt; touches.length; i++) for (let j = 0; j &lt; pointers.length; j++) if (touches[i].identifier == pointers[j].id) pointers[j].down = false; }); &lt;/script&gt; &lt;section id='container'&gt; &lt;h1 class='a-title'&gt;Move the mouse&lt;/h1&gt; &lt;h2 class='a-second-title'&gt;See the magic&lt;/h2&gt; &lt;canvas&gt;&lt;/canvas&gt; &lt;/section&gt; [/html]</pre></div></div></div> </div> <div class="post-rating"><p class="container"><a title="Вы не можете дать оценку участнику">+2</a></p></div> </div> <div class="clearer"><!-- --></div> </div> <div class="post-links"> <ul> <li class="pl-quote"><a href="javascript:quote('Will O The Wisp', 186089)">Цитировать<span class="acchide">&nbsp;Сообщение 179</span></a></li> </ul> </div> </div> </div> <div id="p192056" class="post altstyle endpost" data-posted="1703173187" data-user-id="7629" data-group-id="8"> <h3><span><a class="sharelink" rel="nofollow" href="#p192056" onclick="return false;">Поделиться</a><strong>180</strong><a class="permalink" rel="nofollow" href="https://forumd.ru/viewtopic.php?id=7075&amp;p=18#p192056">21.12.23 18:39</a></span></h3> <div class="container"> <div class="post-author"> <ul> <li class="pa-author"><span class="acchide">Автор:&nbsp;</span><a href="https://forumd.ru/profile.php?id=7629" rel="nofollow">Will O The Wisp</a></li> <li class="pa-title">Участник</li> <li class="pa-avatar item2"><img src="https://forumavatars.ru/img/avatars/0007/e3/f7/7629-1628896044.jpg" alt="Will O The Wisp" title="Will O The Wisp" /></li> <li class="pa-last-visit"><span class="fld-name">Последний визит:</span><br />10.12.24 18:09</li> <li class="pa-respect"><span class="fld-name">Уважение:</span> <span>+594</span></li> <li class="pa-fld2"><img src="https://forumstatic.ru/files/0007/e3/f7/71606.svg" alt="Стажер" title="Стажер" /> <img src="https://forumstatic.ru/files/0007/e3/f7/43425.svg" alt="Изыскатель" title="Изыскатель" /></li> </ul> </div> <div class="post-body"> <div class="post-box"> <div id="p192056-content" class="post-content"> <p>Аватар в строке приветствия + код юзер-панели с аватаркой и сменой аватара по клику </p><div class="code-box"><strong class="legend">Код:</strong><div class="blockcode"><div class="scrollbox" style="height: 28.5em"><pre>&lt;!-- Аватарка в строке приветствия плюс смена аватара по клику--&gt; &lt;script&gt;$('#pun-status&gt;p').prepend('&lt;div id=&quot;u-ava&quot;&gt;&lt;/div&gt;')&lt;/script&gt; &lt;script type=&quot;text/javascript&quot;&gt; if (UserAvatar == &quot;&quot;){UserAvatar = &quot;https://i.imgur.com/S1lii2p.png&quot;} var arr=document.getElementsByTagName(&quot;div&quot;) i=0 while(arr[i] ){ if(arr[i].id==&quot;u-ava&quot;) { name=arr[i].innerHTML name=name.substring(0) arr[i].innerHTML=&quot;&lt;a href='/profile.php?section=avatar&amp;id=&quot;+UserID+&quot;' title='Изменить аватар'&gt;&lt;img style='width: 45px; height: auto; vertical-align: middle; border-radius: 5%; margin: -1.6em -50px; float: inline-end; border: 2px solid #a29c99;' src=&quot;+UserAvatar+&quot;&gt;&lt;/a&gt;&quot;+name } if(arr[i].id==&quot;u-ava&quot; &amp;&amp; GroupID == &quot;3&quot;) { arr[i].innerHTML=&quot;&lt;a href='/register.php'&gt;&lt;img style='width: 45px; height: auto; vertical-align: middle; border-radius: 5%; margin: -1.6em -50px; float: inline-end; border: 2px solid #a29c99;' src='https://i.imgur.com/rn6keOU.png' title='Регистрация'&gt;&lt;/a&gt;&quot;+name } i++} &lt;/script&gt;</pre></div></div></div> </div> <div class="post-rating"><p class="container"><a title="Вы не можете дать оценку участнику">+4</a></p></div> </div> <div class="clearer"><!-- --></div> </div> <div class="post-links"> <ul> <li class="pl-quote"><a href="javascript:quote('Will O The Wisp', 192056)">Цитировать<span class="acchide">&nbsp;Сообщение 180</span></a></li> </ul> </div> </div> </div> </div> <div class="linksb"> <div class="postlink"><span><a href="https://forumd.ru/post.php?tid=7075" rel="nofollow">Ответить</a></span></div> <div class="pagelink">Страница: <a class="prev" href="https://forumd.ru/viewtopic.php?id=7075&amp;p=17">&laquo;</a>&#160;&#160;<a href="https://forumd.ru/viewtopic.php?id=7075">1</a>&#160;<span class="ellipsis">&#8230;</span>&#160;<a href="https://forumd.ru/viewtopic.php?id=7075&amp;p=16">16</a>&#160;<a href="https://forumd.ru/viewtopic.php?id=7075&amp;p=17">17</a>&#160;<strong>18</strong>&#160;<a href="https://forumd.ru/viewtopic.php?id=7075&amp;p=19">19</a>&#160;<a href="https://forumd.ru/viewtopic.php?id=7075&amp;p=20">20</a>&#160;<a href="https://forumd.ru/viewtopic.php?id=7075&amp;p=21">21</a>&#160;&#160;<a class="next" href="https://forumd.ru/viewtopic.php?id=7075&amp;p=19">&raquo;</a></div> </div> <!-- topic_banner_bottom --> <div id="post-form" class="formal"> <h2><span>Быстрый ответ</span></h2> <form id="post" class="container" method="post" action="/post.php?tid=7075" onsubmit="this.submit.disabled=true;if(process_form(this)){return true;}else{this.submit.disabled=false;return false;}"> <fieldset> <legend><span>Напишите ваше сообщение и нажмите &laquo;Отправить&raquo;</span></legend> <div class="fs-box hashelp"> <div id="formkey"></div> <div id="formetc" style="display:none"></div> <input type="hidden" name="form_sent" value="1" /> <input type="hidden" name="form_user" value="Guest" /> <div id="form-buttons"></div> <div id="tags"> <script type="text/javascript"> html = '<table cellspacing="0" cellpadding="0"><tr>'; $.each(FORUM.get('editor'), function(key,value){ if (key != 'settings') { var icon = key; html += '<td id="button-'+key+'" title="'+value.name+'"><img onclick="FORUM.get(\'editor.'+key+'.onclick()\')" src="/i/blank.gif" /></td>'; } }); html += '</tr></table>'; $('#form-buttons').append(html); </script> <div class="container" id="font-area" style="display:none" onclick="changeVisibility('font-area')"></div> <script type="text/javascript"> html = ''; $.each(FORUM.get('editor.font.fonts'), function(key,value){ html += '<div style="font-family:'+value+'"><span>'+value+'</span><img onclick="bbcode(\'[font='+value+']\',\'[/font]\')" src="/i/blank.gif" /></div>'; }); $('#font-area').append(html); </script> <div class="container" id="size-area" style="display:none" onclick="changeVisibility('size-area')"></div> <script type="text/javascript"> html = ''; $.each(FORUM.get('editor.size.sizes'), function(key,value){ html += '<div style="font-size:'+value+FORUM.get('editor.size.unit')+'"><span>'+value+FORUM.get('editor.size.unit')+'</span><img onclick="bbcode(\'[size='+value+']\',\'[/size]\')" src="/i/blank.gif" /></div>'; }); $('#size-area').append(html); </script> <div class="container" id="color-area" style="display:none" onclick="changeVisibility('color-area')"></div> <script type="text/javascript"> html = '<table cellspacing="0" cellpadding="0"><tr>'; $.each(FORUM.get('editor.color.colors'), function(key,value){ html += '<td style="background-color:'+value+'"><img onclick="bbcode(\'[color='+value+']\',\'[/color]\')" src="/i/blank.gif" /></td>'; }); html += '</tr></table>'; $('#color-area').append(html); </script> <div class="container" id="table-area" style="display:none"></div> <script type="text/javascript"> html = '<table cellspacing="0" cellpadding="0">'; for (r=1; r<=FORUM.get('editor.table.rows'); r++){ html += '<tr>'; for (c=1; c<=FORUM.get('editor.table.cols'); c++){ html += '<td><img onclick="tag_table('+c+','+r+'); changeVisibility(\'table-area\')" src="/i/blank.gif" alt="'+c+'x'+r+'" title="'+c+'x'+r+'" /></td>'; } html += '</tr>'; } html += '</table>'; html += '<div><p><input id="table-layout" type="checkbox"'+(FORUM.get('editor.table.layout') == 'auto' ? '' : ' checked="checked"')+' onclick="FORUM.set(\'editor.table.layout\', ($(this).is(\':checked\') ? \'fixed\' : \'auto\'));" /><label for="table-layout">Ячейки одной ширины</label></p></div>'; $('#table-area').append(html); $('#table-area td').hover(function() { for (var x = 0; x <= $(this).index(); x++) { for (var y = 0; y <= $(this).parent().index(); y++) { $(this).parent().parent().children().eq(y).children().eq(x).addClass('selected'); } } }, function() { $('#table-area td').removeClass('selected'); }); </script> <div class="container" id="smilies-area" style="display:none" onclick="changeVisibility('smilies-area')"> <div id="smilies-block"></div> </div> <script type="text/javascript"> FORUM.set('editor.smile.dir', 'img/smilies/MyBB/universal'); FORUM.set('editor.smile.smilies', {":angry:":"angry.gif","o.O":"blink.gif",":blush:":"blush.gif",":canthearyou:":"canthearyou.gif",":confused:":"confused.gif",":cool:":"cool.gif",":crazyfun:":"crazyfun.gif",":crazy:":"crazy.gif",":'(":"cry.gif",":disappointed:":"disappointed.gif",":dontcare:":"dontcare.gif",":dontknow:":"dontknow.gif",":flag:":"flag.gif",":flirt:":"flirt.gif","8-)":"funny.gif",":glasses:":"glasses.gif","^^":"happy.gif",":hobo:":"hobo.gif",":huh:":"huh.gif",":idea:":"idea.gif",":insane:":"insane.gif",":jumping:":"jumping.gif",":D":"lol.gif",":love:":"love.gif",":mad:":"mad.gif",":music:":"music.gif",":mybb:":"mybb.gif",":|":"neutral.gif",":no:":"no.gif",":nope:":"nope.gif",":offtop:":"offtop.gif",":playful:":"playful.gif",":question:":"question.gif",":rain:":"rain.gif",":rofl:":"rofl.gif",":rolleyes:":"rolleyes.gif",":(":"sad.gif",":sceptic:":"sceptic.gif",":shine:":"shine.gif",":O":"shock.gif",":x":"sick.gif",":)":"smile.gif",":smoke:":"smoke.gif",":stupor:":"stupor.gif",":surprise:":"surprise.gif",":suspicious:":"suspicious.gif",":tired:":"tired.gif",":tomato:":"tomato.gif",":P":"tongue.gif",":unsure:":"unsure.gif","%-)":"wacko.gif",":whistle:":"whistle.gif",";)":"wink.gif",":writing:":"writing.gif",":yep:":"yep.gif"}); </script> <div class="container" id="image-area" style="display:none"> <div id="image-area-sels" style="display:block"> <div><strong>Выберите источник изображения</strong></div> <div id="image-source-list"> <a id="action-computer" class="turn_link">С компьютера</a> <a id="action-internet" class="turn_link">Из интернета</a> </div> </div> <div id="image-area-tcon-internet" style="display:none"> <div id="image-area-thd">Вставьте ссылки на изображения (по одной на строку)</div> <textarea id="image-area-tinp" rows="5"></textarea> </div> <div id="image-area-tcon-computer" style="display:none"> <table cellpadding="0" cellspacing="0"> <tr valign="top"> <td id="imageupload-left"> <div id="image_upload"><input id="image_upload_input" type="file" name="files[]" multiple /><input class="button" type="button" value="Выберите файлы" /></div> <div id="file"></div> <div id="image-width" style="display:none"></div> <div id="image-thumb-width" style="display:none"></div> <div id="upload-button-container" style="display:none"><input id="upload-button" class="button" type="button" value="Загрузить" /></div> <div id="image-insert-format" style="display:none"></div> </td> <td id="imageupload-right"> <div id="load-image-container" style="display:none"> <div id="imageQueue" style="display:none"></div> <div id="uploaded-images" style="display:none"></div> </div> <div id="insert-image-tip" style="display:none"><span>Нажмите на изображение, чтобы вставить в форму.</span></div> </td> </tr> </table> </div> <div id="image-area-actions" style="display:none"> <a id="action-insert-textarea" style="display:none">Вставить</a> <a id="action-insert-uploaded" style="display:none">Вставить все</a> <a id="action-clean-textarea" style="display:none">Очистить</a> <a id="action-clean-uploaded" style="display:none">Очистить</a> <a id="action-return">Другой источник</a> <a id="action-close">Закрыть</a> </div> </div> <div class="container" id="video-area" style="display:none"> <div id="video-area-hsel" style="display:block;" onclick="MYBB_vsi(this,arguments)"> <div><strong>Выберите видеохостинг</strong></div> <div id="video-host-list"></div> </div> <div id="video-area-tcon" style="display:none;"> <div id="video-area-thd">Вставьте ссылку или embed-код видеофайла</div> <textarea id="video-area-tinp" onclick="this.select();"></textarea> <div id="video-area-msg"></div> </div> <div id="video-area-actions" style="display:none"> <a href="#" onclick="MYBB_vsc.parse(); return false;">Вставить</a>&nbsp;&nbsp;&nbsp;&nbsp; <a href="#" onclick="changeVisibility('video-area'); return false;">Закрыть</a>&nbsp;&nbsp;&nbsp;&nbsp; <a href="#" onclick="MYBB_vsc.reInit(); return false;">Другой хостинг</a> </div> </div> <div class="container" id="spoiler-area" style="display:none"> <div id="spoiler-sels"> <div><strong>Выберите тип спойлера</strong></div> <div id="spoiler-type-list"> <a href="#" onclick="return tag_spoiler('media');">Спойлер для медиа</a> <a href="#" onclick="return tag_spoiler('spoiler');">Спойлер для текста</a> </div> </div> </div> <script type="text/javascript"> html = []; $.each(FORUM.get('editor.video.hosts'), function(key,value){ html.push('<a class="turn_link" href="#'+value+'">'+value+'</a>'); }); $('#video-host-list').append(html.join(', ')); </script> <div class="container" id="keyboard-area" style="display:none"> <span id="keyboard-span"></span> </div> <script type="text/javascript"> html = ''; $.each(FORUM.get('editor.keyboard.keys'), function(key,value){ html += value == '_NL_' ? '<br />' : '<input type="button" value="'+value+'" onclick="keyboard(\''+value+'\')" />'; }); $('#keyboard-span').append(html); </script> <div class="container" id="addition-area" style="display:none" onclick="changeVisibility('addition-area')"></div> <script type="text/javascript"> html = ''; $.each(FORUM.get('editor.addition.tags'), function(key,value){ html += '<div onclick="FORUM.get(\'editor.addition.tags.'+key+'.onclick()\')"><span>'+value.name+'</span></div>'; }); $('#addition-area').append(html); </script> </div> <p class="inputfield required"> <label for="fld1">Имя</label><br /> <span class="input"><input type="text" id="fld1" name="req_username" value="" size="25" maxlength="25" /></span> </p> <p class="areafield required"> <span class="input"><textarea id="main-reply" name="req_message" rows="13"></textarea></span> </p> <!-- WYSI - визуальный редактор сообщений © Alex_63, 2024 <style> /* Подсветка кнопок WYSI для новой формы ответа */ .fo-buttons span.wysi-highlight { color: #333; background-color: #aaa; } .fo-lists span.wysi-highlight { background-color: #ddd; } .fo-lists .colors span.wysi-highlight { outline: solid 3px #bbb; } </style> <link rel="stylesheet" type="text/css" href="https://forumstatic.ru/f/ru/bestbb/wysi.css" /> <script type="text/javascript" src="https://forumstatic.ru/f/ru/bestbb/wysi.js"></script> <style> #wysi-reply.post-content {margin-bottom: 0;} .wysi-active #tags.wysi-disabled .fo-lists .container {opacity: .5; cursor: not-allowed !important;} .wysi-active #form-buttons.wysi-disabled .fo-buttons, .wysi-active #tags.wysi-disabled .fo-lists .container *[onclick] {pointer-events: none;} </style> <script> //Доп.атрибуты для подсветки кнопок $(function() { $('.fo-butblok>span').attr('data-action', function() { return $(this).attr('onclick') ? $(this).attr('onclick').match(/\.([^\.]+)\.onclick/)[1] : $(this).attr('class').match(/\s([^-]+)-button/)[1] }); $('.fo-lists>.container').attr('data-container', function() { return $(this).attr('class').split('s container')[0] }) .find('span[style]').each(function() { var style = $(this).attr('style'); var prop = style && style.split(':')[0]; $(this).attr('data-style', prop + ':' + $(this).css(prop)); }) .end().find('span[onclick]').not('[style]').each(function() { var action = $(this).attr('onclick').replace(/^.+?\((.+)\)/, '$1').split('.')[3]; $(this).attr('data-tag', action); }); }); </script> --> <!-- BB-цитирование © Alex_63, 2024 --> <script type="text/javascript" src="https://forumstatic.ru/f/su/1bb/bbquote.js"></script> <script type="text/javascript" src="https://forumstatic.ru/f/su/1bb/bbquote.custom_quotes.js"></script> <!-- Перенос формы ответа под отвечаемое сообщение (c) 2017 --> <script type="text/javascript"> (function() { if (!$('#pun-viewtopic').length) return; var tstPrev = false, prevElem, form, cnt, cntPrev; $(window).on('click', '.fd-name a,.pl-quote a,.pl-BBquote,.pl-reply a,.fd-ava-but a', function() { form = $('#post-form'); if (!tstPrev) prevElem = form.prev(), tstPrev = true; $('script', form).remove(); form.insertAfter($(this).parents('.post')); if (!$('.button[name=cancel]', form).length) $('.button[name=preview]', form).after(' <input type="button" class="button" id="rus" name="cancel" value="Отмена" />'); if ($.trim($('#main-reply', form).val()) != cnt) cntPrev = $.trim($('#main-reply', form).val()); setTimeout(function() { cnt = $.trim($('#main-reply', form).val()); }, 10); }).on('click', '.button[name=cancel]', function() { form.insertAfter(prevElem); $('.fs-box .container[id]:visible', form).hide(); $(this).remove(); if ($.trim($('#main-reply', form).val()) == cnt) $('#main-reply', form).val(cntPrev); }); })(); </script> <!-- Кастомная форма ответа: начало --> <div id="my-fo"> <!-- кнопки начало --><div class="fo-buttons"> <div class="fo-butblok"> <span class="material-icons font-button ank-hide mobhide" title="<gg class='rus'>Шрифт</gg><gg class='eng'>Font</gg>">font_download</span> <span class="material-icons size-button ank-hide mobhide" title="<gg class='rus'>Размер</gg><gg class='eng'>Size</gg>">format_size</span> <span class="material-icons" onclick="FORUM.get('editor.bold.onclick()')" title="<gg class='rus'>Жирный</gg><gg class='eng'>Bold</gg>">format_bold</span> <span class="material-icons" onclick="FORUM.get('editor.italic.onclick()')" title="<gg class='rus'>Курсив</gg><gg class='eng'>Italic</gg>">format_italic</span> <span class="material-icons" onclick="FORUM.get('editor.underline.onclick()')" title="<gg class='rus'>Подчеркнутый</gg><gg class='eng'>Underline</gg>">format_underlined</span> <span class="material-icons" onclick="FORUM.get('editor.strike.onclick()')" title="<gg class='rus'>Зачеркнутый</gg><gg class='eng'>Strike</gg>">strikethrough_s</span> <span class="material-icons ank-hide" onclick="FORUM.get('editor.addition.tags.mark.onclick()')" title="<gg class='rus'>Маркированный</gg><gg class='eng'>Marked</gg>">format_paint</span> <span class="material-icons color-button ank-hide" title="<gg class='rus'>Цвет</gg><gg class='eng'>Color</gg>">color_lens</span> </div> <div class="sep"></div> <div class="fo-butblok"> <span class="material-icons" onclick="FORUM.get('editor.left.onclick()')" title="<gg class='rus'>Выравнивание слева</gg><gg class='eng'>Align left</gg>">format_align_left</span> <span class="material-icons" onclick="FORUM.get('editor.center.onclick()')" title="<gg class='rus'>Выравнивание по центру</gg><gg class='eng'>Align center</gg>">format_align_center</span> <span class="material-icons" onclick="FORUM.get('editor.right.onclick()')" title="<gg class='rus'>Выравнивание справа</gg><gg class='eng'>Align right</gg>">format_align_right</span> <span class="material-icons list-button" title="<gg class='rus'>Список</gg><gg class='eng'>List</gg>">list</span> <span class="material-icons ank-hide mobhide" onclick="FORUM.get('editor.table.onclick()')" title="<gg class='rus'>Таблица</gg><gg class='eng'>Table</gg>">table_view</span> </div> <div class="sep"></div> <div class="fo-butblok"> <span class="material-icons" onclick="FORUM.get('editor.link.onclick()')" title="<gg class='rus'>Ссылка</gg><gg class='eng'>Link</gg>">link</span> <span class="material-icons image-button" onclick="FORUM.get('editor.image.onclick()')" title="<gg class='rus'>Изображение</gg><gg class='eng'>Image</gg>">add_photo_alternate</span> <span class="material-icons video-button" onclick="FORUM.get('editor.video.onclick()')" title="<gg class='rus'>Видео</gg><gg class='eng'>Video</gg>">ondemand_video</span> <span class="material-icons smile-button ank-hide" onclick="FORUM.get('editor.smile.onclick()')" title="<gg class='rus'>Смайлы</gg><gg class='eng'>Smiles</gg>">mood</span> <span class="material-icons rus" onclick="FORUM.get('editor.voice.onclick()')" title="Голосовое сообщение">mic</span> </div> <div class="sep"></div> <div class="fo-butblok"> <span class="material-icons spoiler-button" onclick="FORUM.get('editor.spoiler.onclick()')" title="<gg class='rus'>Свернутый текст</gg><gg class='eng'>Spoiler</gg>">content_cut</span> <span onclick="FORUM.get('editor.hide.onclick()')" class="material-icons" title="<gg class='rus'>Скрытый текст</gg><gg class='eng'>Hidden text</gg>">lock_open</span> <span onclick="FORUM.get('editor.quote.onclick()')" class="material-icons" title="<gg class='rus'>Цитата</gg><gg class='eng'>Quote</gg>">format_quote</span> <span class="material-icons code-button" title="<gg class='rus'>Код/Текст для копирования</gg><gg class='eng'>Code/Text to copy</gg>">code</span> </div> <div class="sep"></div> <div class="fo-butblok"> <span onclick="FORUM.get('editor.addition.tags.hr.onclick()')" class="material-icons mobhide" title="<gg class='rus'>Горизонтальная линия</gg><gg class='eng'>Horizontal line</gg>">horizontal_rule</span> <span onclick="FORUM.get('editor.addition.tags.anchor.onclick()')" class="material-icons mobhide" title="<gg class='rus'>Якорь</gg><gg class='eng'>Anchor</gg>">anchor</span> <span onclick="FORUM.get('editor.addition.tags.abbr.onclick()')" class="material-icons mobhide" title="<gg class='rus'>Поясняющий текст</gg><gg class='eng'>Tooltip text</gg>">live_help</span> <span class="material-icons symbol-button ank-hide mobhide" title="<gg class='rus'>Символы</gg><gg class='eng'>Symbols</gg>">emoji_symbols</span> <span class="material-icons aditional-button ank-hide mobhide" title="<gg class='rus'>Дополнительно</gg><gg class='eng'>Additionally</gg>">library_add</span> </div> </div><!-- кнопки конец --> </div> <!-- раскрывающиеся списки --><div class="fo-lists"> <!-- списки --> <div class="lists container"> <span onclick="bbcode('[ul=disc]','[/ul]')" class="disc"><ul><li><gg class='rus'>Точками</gg><gg class='eng'>Dots</gg></li></ul></span> <span onclick="bbcode('[ul=circle]','[/ul]')" class="circle"><ul><li><gg class='rus'>Кружочками</gg><gg class='eng'>Circles</gg></li></ul></span> <span onclick="bbcode('[ul=square]','[/ul]')" class="square"><ul><li><gg class='rus'>Квадратами</gg><gg class='eng'>Squares</gg></li></ul></span> <span onclick="bbcode('[ul=decimal]','[/ul]')" class="decimal"><ul><li><gg class='rus'>Цифрами</gg><gg class='eng'>Numbers</gg></li></ul></span> <span onclick="bbcode('[ul=upper-roman]','[/ul]')" class="roman"><ul><li><gg class='rus'>Римскими цифрами</gg><gg class='eng'>Roman Numerals</gg></li></ul></span> <span onclick="bbcode('[ul=none]','[/ul]')" class="nopadding"><ul><li><gg class='rus'>Без обозначений</gg><gg class='eng'>No Markers</gg></li></ul></span> <span onclick="bbcode('[*',']')" class="nopadding"><gg class='rus'>Многострочный пункт списка</gg><gg class='eng'>Multiline List Item</gg></span> </div> <!-- коды --> <div class="codes container"> <span onclick="bbcode('[code]','[/code]')" class="disc"><ul><li><gg class='rus'>Текст</gg><gg class='eng'>Text</gg></li></ul></span> <span onclick="bbcode('[block=code-html][code]','[/code][/block]')" class="disc"><ul><li>HTML</li></ul></span> <span onclick="bbcode('[block=code-css][code]','[/code][/block]')" class="disc"><ul><li>CSS</li></ul></span> <span onclick="bbcode('[block=code-javascript][code]','[/code][/block]')" class="disc"><ul><li>Javascript</li></ul></span> </div> <!-- шрифты --> <div class="fonts container"> <span style="font-family:Bebas Neue" onclick="bbcode('[font=Bebas Neue]','[/font]')">Bebas Neue</span> <span style="font-family:Arial" onclick="bbcode('[font=Arial]','[/font]')">Arial</span> <span style="font-family:Georgia" onclick="bbcode('[font=Georgia]','[/font]')">Georgia</span> <span style="font-family:Microsoft Sans Serif" onclick="bbcode('[font=Microsoft Sans Serif]','[/font]')">Microsoft Sans Serif</span> <span style="font-family:Tahoma" onclick="bbcode('[font=Tahoma]','[/font]')">Tahoma</span> <span style="font-family:Verdana" onclick="bbcode('[font=Verdana]','[/font]')">Verdana</span> <span style="font-family:Century Gothic" onclick="bbcode('[font=Century Gothic]','[/font]')">Century Gothic</span> <span style="font-family:Palatino Linotype" onclick="bbcode('[font=Palatino Linotype]','[/font]')">Palatino Linotype</span> <span style="font-family:Times New Roman" onclick="bbcode('[font=Times New Roman]','[/font]')">Times New Roman</span> <span style="font-family:Franklin Gothic Medium" onclick="bbcode('[font=Franklin Gothic Medium]','[/font]')">Franklin Gothic Medium</span> <span style="font-family:Impact" onclick="bbcode('[font=Impact]','[/font]')">Impact</span> <span style="font-family:Arial Black" onclick="bbcode('[font=Arial Black]','[/font]')">Arial Black</span> <span style="font-family:Courier New" onclick="bbcode('[font=Courier New]','[/font]')">Courier New</span> <span style="font-family:Lucida Console" onclick="bbcode('[font=Lucida Console]','[/font]')">Lucida Console</span> <span style="font-family:Comic Sans Ms" onclick="bbcode('[font=Comic Sans Ms]','[/font]')">Comic Sans Ms</span> </div> <!-- размеры --> <div class="sizes container"> <span style="font-size:10px" onclick="bbcode('[size=10]','[/size]')">10px</span> <span style="font-size:12px" onclick="bbcode('[size=12]','[/size]')">12px</span> <span style="font-size:14px" onclick="bbcode('[size=14]','[/size]')">14px</span> <span style="font-size:16px" onclick="bbcode('[size=16]','[/size]')">16px</span> <span style="font-size:18px" onclick="bbcode('[size=18]','[/size]')">18px</span> <span style="font-size:20px" onclick="bbcode('[size=20]','[/size]')">20px</span> <span style="font-size:22px" onclick="bbcode('[size=22]','[/size]')">22px</span> </div> <!-- цвета --> <div class="colors container"> <span style="background-color: #f98561;" onclick="bbcode('[color=#f98561]','[/color]')"></span> <span style="background-color: #b80000;" onclick="bbcode('[color=#b80000]','[/color]')"></span> <span style="background-color: #e63737;" onclick="bbcode('[color=#e63737]','[/color]')"></span> <span style="background-color: #f7941d;" onclick="bbcode('[color=#f7941d]','[/color]')"></span> <span style="background-color: #e36120;" onclick="bbcode('[color=#e36120]','[/color]')"></span> <span style="background-color: #29aecb;" onclick="bbcode('[color=#29aecb]','[/color]')"></span> <span style="background-color: #00a1e4;" onclick="bbcode('[color=#00a1e4]','[/color]')"></span> <span style="background-color: #0481d9;" onclick="bbcode('[color=#0481d9]','[/color]')"></span> <span style="background-color: #0080b7;" onclick="bbcode('[color=#0080b7]','[/color]')"></span> <span style="background-color: #1c8426;" onclick="bbcode('[color=#1c8426]','[/color]')"></span> <span style="background-color: #26af33;" onclick="bbcode('[color=#26af33]','[/color]')"></span> <span style="background-color: #71218e;" onclick="bbcode('[color=#71218e]','[/color]')"></span> <span style="background-color: #a726af;" onclick="bbcode('[color=#a726af]','[/color]')"></span> <span style="background-color: #2e3e4f;" onclick="bbcode('[color=#2e3e4f]','[/color]')"></span> <span style="background-color: #2d343a;" onclick="bbcode('[color=#2d343a]','[/color]')"></span> <span style="background-color: #666666;" onclick="bbcode('[color=#666666]','[/color]')"></span> <span style="background-color: #a5a5a5;" onclick="bbcode('[color=#a5a5a5]','[/color]')"></span> <span style="background-color: #d7d7d7;" onclick="bbcode('[color=#d7d7d7]','[/color]')"></span> <span style="background-color: #000000;" onclick="bbcode('[color=#000000]','[/color]')"></span> <span style="background-color: #ffffff;" onclick="bbcode('[color=#ffffff]','[/color]')"></span> </div> <!-- символы --> <div class="symbols container"> <span onclick="keyboard('©')">©</span> <span onclick="keyboard('®')">®</span> <span onclick="keyboard('&#8482;')">&#8482;</span> <span onclick="keyboard('«')">«</span> <span onclick="keyboard('»')">»</span> <span onclick="keyboard('&#10077;')">&#10077;</span> <span onclick="keyboard('&#10078;')">&#10078;</span> <span onclick="keyboard('&#162;')">&#162;</span> <span onclick="keyboard('&#8364;')">&#8364;</span> <span onclick="keyboard('&#163;')">&#163;</span> <span onclick="keyboard('&#8381;')">&#8381;</span> <span onclick="keyboard('&#8383;')">&#8383;</span> <span onclick="keyboard('&#10008;')">&#10008;</span> <span onclick="keyboard('&#10004;')">&#10004;</span> <span onclick="keyboard('&#9746;')">&#9746;</span> <span onclick="keyboard('&#9745;')">&#9745;</span> <span onclick="keyboard('&#9744;')">&#9744;</span> <span onclick="keyboard('&#9679;')">&#9679;</span> <span onclick="keyboard('&#8226;')">&#8226;</span> <span onclick="keyboard('&#9724;')">&#9724;</span> <span onclick="keyboard('&#9706;')">&#9706;</span> <span onclick="keyboard('&#9726;')">&#9726;</span> <span onclick="keyboard('&#9673;')">&#9673;</span> <span onclick="keyboard('&#9670;')">&#9670;</span> <span onclick="keyboard('&#9684;')">&#9684;</span> <span onclick="keyboard('&#9792;')">&#9792;</span> <span onclick="keyboard('&#9794;')">&#9794;</span> <span onclick="keyboard('&#10084;')">&#10084;</span> <span onclick="keyboard('&#9835;')">&#9835;</span> <span onclick="keyboard('&#12483;')">&#12483;</span> <span onclick="keyboard('&#10052;')">&#10052;</span> <span onclick="keyboard('&#9728;')">&#9728;</span> <span onclick="keyboard('&#9729;')">&#9729;</span> <span onclick="keyboard('&#10059;')">&#10059;</span> <span onclick="keyboard('&#10047;')">&#10047;</span> <span onclick="keyboard('&#9998;')">&#9998;</span> <span onclick="keyboard('&#9986;')">&#9986;</span> <span onclick="keyboard('&#9733;')">&#9733;</span> <span onclick="keyboard('&#9734;')">&#9734;</span> <span onclick="keyboard('&#8249;')">&#8249;</span> <span onclick="keyboard('&#8250;')">&#8250;</span> <span onclick="keyboard('&#8592;')">&#8592;</span> <span onclick="keyboard('&#8593;')">&#8593;</span> <span onclick="keyboard('&#8594;')">&#8594;</span> <span onclick="keyboard('&#8595;')">&#8595;</span> <span onclick="keyboard('&#8596;')">&#8596;</span> <span onclick="keyboard('&#8597;')">&#8597;</span> <span onclick="keyboard('&#9668;')">&#9668;</span> <span onclick="keyboard('&#9650;')">&#9650;</span> <span onclick="keyboard('&#9658;')">&#9658;</span> <span onclick="keyboard('&#9660;')">&#9660;</span> <span onclick="keyboard('&#9666;')">&#9666;</span> <span onclick="keyboard('&#9652;')">&#9652;</span> <span onclick="keyboard('&#9656;')">&#9656;</span> <span onclick="keyboard('&#9662;')">&#9662;</span> <span onclick="keyboard('&#9471;')">&#9471;</span> <span onclick="keyboard('&#10102;')">&#10102;</span> <span onclick="keyboard('&#10103;')">&#10103;</span> <span onclick="keyboard('&#10104;')">&#10104;</span> <span onclick="keyboard('&#10105;')">&#10105;</span> <span onclick="keyboard('&#10106;')">&#10106;</span> <span onclick="keyboard('&#10107;')">&#10107;</span> <span onclick="keyboard('&#10108;')">&#10108;</span> <span onclick="keyboard('&#10109;')">&#10109;</span> <span onclick="keyboard('&#10110;')">&#10110;</span> <span onclick="keyboard('&#10111;')">&#10111;</span> </div> <!-- Дополнительно --> <div class="aditionals container"> <span onclick="bbcode('[size=28][font=Bebas Neue]','[/font][/size]');"><gg class='rus'>Заголовок</gg><gg class='eng'>Title</gg></span> <span onclick="bbcode('[block=prev][align=center]','[/align][/block]');"><gg class='rus'>Автосжатие больших картинок</gg><gg class='eng'>Auto-resize large images</gg></span> <span onclick="bbcode('[block=hidecode][hide]','[/hide][/block]');"><gg class='rus'>Скрыть от гостей</gg><gg class='eng'>Hide from guests</gg></span> <span class="rus" onclick="bbcode('[block=hidelink][hide][block=superlink][url=',']СКАЧАТЬ[/url][/block][/hide][/block]');">Ссылка «скачать»</span> <span class="eng" onclick="bbcode('[block=hidelink][hide][block=superlink][url=',']DOWNLOAD[/url][/block][/hide][/block]');">Download link</span> <span onclick="FORUM.get('editor.addition.tags.you.onclick()')"><gg class='rus'>Имя читателя</gg><gg class='eng'>Reader's name</gg></span> <span onclick="FORUM.get('editor.addition.tags.add.onclick()')"><gg class='rus'>Добавлено спустя&#8230;</gg><gg class='eng'>Added after...</gg></span> <span onclick="FORUM.get('editor.addition.tags.sup.onclick()')"><gg class='rus'>Надстрочный текст</gg><gg class='eng'>Superscript text</gg></span> <span onclick="FORUM.get('editor.addition.tags.sub.onclick()')"><gg class='rus'>Подстрочный текст</gg><gg class='eng'>Subscript text</gg></span> <span onclick="bbcode('[block=class]','[/block]');" class="userhide"><gg class='rus'>Блок</gg><gg class='eng'>Block</gg></span> <span onclick="bbcode('[html]','[/html]');" class="userhide">HTML</span> <span onclick="bbcode('[icon]verified','[/icon]');" class="userhide">иконка</span> </div> </div><!-- раскрывающиеся списки --> <!-- ---------------- --> <script type="text/javascript"> $('#my-fo').appendTo('#form-buttons'); $('.fo-lists').appendTo('#tags'); var buttonList = [ {button: ".code-button", list: ".codes"}, {button: ".font-button", list: ".fonts"}, {button: ".size-button", list: ".sizes"}, {button: ".color-button", list: ".colors"}, {button: ".list-button", list: ".lists"}, {button: ".symbol-button", list: ".symbols"}, {button: ".aditional-button", list: ".aditionals"} ]; buttonList.forEach(function(item) { $("#form-buttons " + item.button).click(function() { $("#tags .fo-lists " + item.list).toggleClass('show'); }); }); </script> <!-- Новая форма ответа: Конец --> <!-- Кнопка шаблона для новой формы --> <script type="text/javascript"> $(document).ready(function() { if ($('#post #addition-area div[onclick*="addition.tags.pattern"]').length) { $('#my-fo .fo-butblok').first().before('<span id="fo-shablon" class="material-icons tip" onclick="FORUM.get(\'editor.addition.tags.pattern.onclick()\')" title="Шаблон добавления материала">note_add</span><div class="sep sep-shab"></div>'); } //Скрытие кнопки шаблонов в некоторых разделах var shabforums = [5, 6, 19]; for (var i = 0; i < shabforums.length; i++) { var crumbsSelector = 'a[href="/viewforum.php?id=' + shabforums[i] + '"]'; var hideShab = document.querySelector(crumbsSelector); if (hideShab) { $("#fo-shablon").not('[onclick*="voice"]').addClass('moderator-ann2'); $(".sep-shab").addClass('moderator-ann2'); } } }); </script> <style> .fo-buttons #fo-shablon {background-color: #e63737; color: #fff;} .fo-buttons #fo-shablon:hover {background-color: #2e3e4f; color: #e63737;} </style> <!--дополнительные смайлы--> <script type="text/javascript" src="https://forumstatic.ru/files/0007/e3/f7/75411.js" defer></script> <!-- Инструментарий: Пресеты тегов для топиков портфолио --> <div id="pt-swich" class="superlink"><a class="pt-hide tip" title="убрать инструментарий спец-топиков">Скрыть инструментарий</a><a class="pt-show tip" title=" инструментарий спец-топиков">Показать инструментарий</a></div> <div id="pt-inside"> <div id="portfolio-tags"> <h4>Теги оформления специальных постов</h4> <div class="pt-row"> <div class="pt-click red tip" title="Обязательный тег для создания специального поста:<br><img src='https://i.imgur.com/sXmPgWq.jpg'>">Сделать пост специальным<span class="pttag-cont">[block="portfoliopost"]portfoliopost[/block],</span></div> <div class="pt-click tip" title="Перекрашивает специальный пост в более светлые тона">Светлый фон<span class="pttag-cont">[block="makeportfoliolight"]makeportfoliolight[/block],</span></div> <div class="pt-click tip" title="Элементы поста красного цвета:<br><img src='https://i.imgur.com/2yNshzv.jpg'>">Красный пост<span class="pttag-cont">[block="saledpost"]saledpost[/block],</span></div> <div class="pt-click tip" title="Элементы поста синего цвета:<br><img src='https://i.imgur.com/YnDb3Ar.jpg'>">Синий пост<span class="pttag-cont">[block="forsalepost"]forsalepost[/block],</span></div> <div class="pt-click tip"title="Элементы поста зеленого цвета:<br><img src='https://i.imgur.com/H4ATE6K.jpg'>">Зеленый пост<span class="pttag-cont">[block="freepost"]freepost[/block],</span></div> <br> <div class="pt-click red tip" title="Обязательный тег для создания поста в рамочке на всю ширину форума (но без профиля):<br><img src='https://i.imgur.com/7k916GZ.png'>">Пост без профиля<span class="pttag-cont">[block="no-prof"]no-prof[/block],</span></div> </div> <h4>Теги оформления картинок</h4> <p><b>Обложки: </b>Для одной картинки по центру в рамке, автоматически уменьшается до ширины 480px</p> <div class="pt-row"> <div class="pt-click tip" title="Вставить простую обложку:<br><img src='https://i.imgur.com/DpG7E19.jpg'>">Обложка<span class="pttag-cont">[block="cover"][block="picture"][img]ссылка на картинку,[/img][/block][/block]</span></div> <div class="pt-click tip" title="Обложка с иконкой замка:<br><img src='https://i.imgur.com/akk5tJr.jpg'>">Закрыто<span class="pttag-cont">[block="cover"][block="icon material-icons"]lock[/block][block="picture"][img]ссылка на картинку,[/img][/block][/block]</span></div> <div class="pt-click tip" title="Обложка с иконкой доллара:<br><img src='https://i.imgur.com/VtsGPlx.jpg'>">Продажа<span class="pttag-cont">[block="cover"][block="icon fa-solid fa-sack-dollar"][/block][block="picture"][img]ссылка на картинку,[/img][/block][/block]</span></div> <div class="pt-click tip" title="Обложка с иконкой подарка:<br><img src='https://i.imgur.com/VHGTul4.jpg'>">Подарок<span class="pttag-cont">[block="cover"][block="icon fa-solid fa-gift"][/block][block="picture"][img]ссылка на картинку,[/img][/block][/block]</span></div> <br> <p><b>Превью: </b>Для любого количества картинок по центру в рамке, автоматически уменьшается до ширины или высоты 300px</p> <div class="pt-click tip" title="Вставить блок для превью картинок:<br><img src='https://i.imgur.com/00hJCG0.jpg'>">Блок для превью<span class="pttag-cont">[block="morepics"],[/block]</span></div> <br> <p><b>Разноцветные картинки-ссылки: </b>Для любого количества картинок по центру в разноцветных рамках с заголовком, автоматически уменьшается до ширины 350px, минимальная высота 230px (если высота больше, картинка "обрезается" снизу, но не сжимается)</p> <div class="pt-click tip" title="Вставляет блок для ОТОБРАЖЕНИЯ и выравнивания их по центру:<br><img src='https://i.imgur.com/tLqbv3Z.jpg'>">Блок для картинок-ссылок<span class="pttag-cont">[block="port-block"],[/block]</span></div> <div class="pt-click tip" title="Вставляет красный блок картинки-ссылки:<br><img src='https://i.imgur.com/a3D74QO.jpg'>">Красный<span class="pttag-cont">[block="p-out saled"] [url=ссылка]заголовок,[/url] [block="picture"][img]ссылка на картинку[/img][/block] [/block]</span></div> <div class="pt-click tip" title="Вставляет синий блок картинки-ссылки:<br><img src='https://i.imgur.com/m8s4vcP.jpg'>">Синий<span class="pttag-cont">[block="p-out forsale"] [url=ссылка]заголовок,[/url] [block="picture"][img]ссылка на картинку[/img][/block] [/block]</span></div> <div class="pt-click tip" title="Вставляет зеленый блок картинки-ссылки:<br><img src='https://i.imgur.com/JLSrWtL.jpg'>">Зеленый<span class="pttag-cont">[block="p-out free"] [url=ссылка]заголовок,[/url] [block="picture"][img]ссылка на картинку[/img][/block] [/block]</span></div> <div class="pt-click tip" title="Вставляет желтый блок картинки-ссылки:<br><img src='https://i.imgur.com/jOJ7EsQ.jpg'>">Желтый<span class="pttag-cont">[block="p-out yellow"] [url=ссылка]заголовок,[/url] [block="picture"][img]ссылка на картинку[/img][/block] [/block]</span></div> </div> <h4>Теги оформления контента</h4> <div class="pt-row"> <div class="pt-click tip" title="Создает блок с обведенным текстом:<br><img src='https://i.imgur.com/ouNs2Hb.jpg'>">Обведенный текст<span class="pttag-cont">[block="details"] [block="det"],[/block] [/block]</span></div> <div class="pt-click tip" title="Добавить еще один внутренний блок для текста в ряд:<br><img src='https://i.imgur.com/pTAQB0C.jpg'>">Добавить еще блок<span class="pttag-cont">[block="det"],[/block]</span></div> <br> <div class="pt-click tip" title="Добавляет блок с ссылками-кнопками:<br><img src='https://i.imgur.com/PNFlJfB.jpg'>">Блок с кнопками<span class="pttag-cont">[block="links"] [block="demo"][url=ссылка]синяя кнопка,[/url][/block] [block="store"][url=ссылка]оранжевая кнопка[/url][/block] [/block]</span></div> <div class="pt-click tip" title="Вставляет синюю кнопку:<br><img src='https://i.imgur.com/KblQToG.jpg'>">Синяя кнопка<span class="pttag-cont">[block="demo"][url=ссылка]текст,[/url][/block]</span></div> <div class="pt-click tip" title="Вставляет оранжевую кнопку:<br><img src='https://i.imgur.com/xmMJL1b.jpg'>">Оранжевая кнопка<span class="pttag-cont">[block="store"][url=ссылка]текст,[/url][/block]</span></div> </div> </div></div> <style> .pttag-cont, #portfolio-tags .pt-click.admin, #pt-inside, #pt-swich, #pt-swich.show .pt-show, #pt-swich .pt-hide {display:none;} .isadmin #portfolio-tags .pt-click.admin {display:inline-block;} .ismoderator #pt-swich, .gid6 #pt-swich, .gid16 #pt-swich, .ismoderator #pt-inside.show, .gid6 #pt-inside.show, .gid16 #pt-inside.show, .ismoderator #pt-swich.show .pt-hide, .gid6 #pt-swich.show .pt-hide, .gid16 #pt-swich.show .pt-hide {display:block;} #portfolio-tags {padding: 10px;} #portfolio-tags h4 {margin: 0 0 5px; font-family: 'Bebas Neue'; font-size: 20px; font-weight: normal;} #portfolio-tags p {margin:0;} #portfolio-tags .pt-row {padding-bottom: 10px;} #portfolio-tags .pt-click {cursor: pointer; display: inline-block; padding: 5px; border-radius: 5px; margin: 5px; font-size: 16px; text-transform: uppercase; background: #cacaca; color: #0080b7;} .dark #portfolio-tags .pt-click {background: #4f4f4f; color: #4eafc1;} #portfolio-tags .pt-click:hover, .dark #portfolio-tags .pt-click:hover {background: #2e3e4f; color: #e63737;} #portfolio-tags .pt-click.red, .dark #portfolio-tags .pt-click.red {background-color: #f98561; color: #fff;} #portfolio-tags .pt-click.red:hover, .dark #portfolio-tags .pt-click.red:hover {background-color: #e63737; color: #fff;} #portfolio-tags .pt-click.admin, .dark #portfolio-tags .pt-click.admin {background-color: #a726af; color: #fff;} #portfolio-tags .pt-click.admin:hover, .dark #portfolio-tags .pt-click.admin:hover {background-color: #71218e; color: #fff;} #pt-swich {margin: 10px 0 0;} #pt-swich.superlink a {cursor:pointer;} </style> <script type="text/javascript"> $("#portfolio-tags div").click(function(){ var L=$(this).find(".pttag-cont").html(); var P=L.split(','); bbcode(P[0],P[1]) return false; }); $(document).ready(function() { $(".pt-hide").click(function(){ $("#pt-inside").removeClass("show"); $("#pt-swich").removeClass("show"); }); $(".pt-show").click(function(){ $("#pt-inside").addClass("show"); $("#pt-swich").addClass("show"); }); }); </script> <!-- ------------------------------------------------------ админские инструментарии навигаторов ------------------------------------------------------ --> <!-- Пресеты тегов для навигатора по общему портфолио --> <div id="supertags2"><div id="meny-styles2" class="container"> <span class="addscript"><p>добавить работу <i>[block="wow bounceIn p-out,"] иконка [block="p-descr"][url=https://forumd.ru/viewtopic.php?id=]описание[/url][/block] [block="p-inner"][url=https://forumd.ru/viewtopic.php?id=][img]картинка[/img][/url][/block] [/block] </i> </p></span> <div class="icons"> <span class="menustylestext">Иконки:</span> <p><span class="icon material-icons">lock</span><i>[block="icon material-icons"]lock,[/block]</i></p> <p><span class="icon fa-solid fa-sack-dollar"></span><i>[block="icon fa-solid fa-sack-dollar"],[/block]</i></p> <p><span class="icon fa-solid fa-gift"></span><i>[block="icon fa-solid fa-gift"],[/block]</i></p> </div> <div class="sttags"> <span class="menustylestext">ТЕГИ</span> <span class="menustylestext2">(вставить в <b>p-out</b> через пробел)</span> <br> <div class="forumtags"> <span class="menustylestext3">Тип работы: </span> <span class="tag red"><p>под заказ<i> saled,</i></p></span> <span class="tag lightblue"><p>на продажу<i> forsale,</i></p></span> <span class="tag green"><p>бесплатно<i> free,</i></p></span> <br><br> <span class="menustylestext3">Основная категория: </span> <span class="tag"><p>Вебдизайн<i> dis,</i></p><em>(для всего связанного с работой на сайтах/форумах, кроме готовых скриптов и мелкой графики)</em></span> <span class="tag"><p>Графика<i> graf,</i></p><em>(для графона, НЕ включающего кодинг/скрипты)</em></span> <span class="tag"><p>Скрипты/коды<i> code,</i></p><em>(для готовых разработок и работы по верстке/кодингу)</em></span> <br> <span class="menustylestext3">Мини-фильтры дизайнов: </span> <span class="tag orange"><p>адаптивные<i> mob,</i></p></span> <span class="tag blue"><p>ролевые игры<i> frpg,</i></p></span> <span class="tag yellow"><p>компьютерные игры<i> game,</i></p></span> <span class="tag orange"><p>нейтральные<i> flat,</i></p></span> </div> <div class="forumtags"> <span class="menustylestext3">Подкатегории: </span> <span class="tag"><p>Дизайн форумов/сайтов<i> fulldis,</i></p><em>(для полных работ по дизайну)</em></span> <span class="tag"><p>Макеты<i> layout,</i></p><em>(для дизайнов, где только макет без кода, или работ по созданию макетов чего-либо)</em></span> <span class="tag"><p>Верстка<i> dis-code,</i></p><em>(для работ по верстке чужих дизайнов или отдельных штук)</em></span> <span class="tag"><p>Соц-сети/стримы<i> graf-s,</i></p><em>(графон для оформления соцсетей/стримов)</em></span> <span class="tag"><p>Ролевая графика/арт<i> art,</i></p><em>(для мелкой графики)</em></span> <span class="tag"><p>Javascript/CSS<i> js,</i></p><em>(для скриптов или выложенных цсс кодов)</em></span> </div> </div> </div></div> <style> #meny-styles3 i,#supertags2, #supertags3 {display: none;} #supertags2.show, #supertags3.show {display:block!important;} #supertags2 .container p, #supertags3 .container p { padding: 3px; border-radius: 3px; color: #fff; cursor:pointer; margin: 2px 0; font-size: 14px; display: inline-block; } #supertags2 .container p:hover, #supertags3 .container p:hover {background-color: #939393;} #supertags2 .container .addscript p, #supertags3 .container .addscript p {text-transform: uppercase;font-family: 'Bebas Neue', Impact;padding: 2px 10px 0;background: #f98561;border-bottom: 6px solid #e63737;border-radius: 0;font-size: 24px;} #supertags2 .container .addscript p:hover, #supertags3 .container .addscript p:hover {background: #e63737;} #supertags2 .addscript, #supertags3 .addscript {margin: 10px 10px 5px 0px; display: inline-block;} #supertags2 .icons {display: inline-block;vertical-align: bottom;} .menustylestext2 b {color: #e63737;} #supertags2 .icon.fa-gift {color: #26af33;} #supertags2 .icon.fa-sack-dollar {color: #00a1e4;} #supertags2 .icon.material-icons {color: #e63737;} .tag p {background: #1e1d1d;} .forumtags {margin-top: 6px;} .forumtags em {display: block;margin-bottom: 5px;font-size: 11px;} </style> <script type="text/javascript"> $("#supertags2").appendTo('#tags'); $("#meny-styles3 p").click(function(){ var L=$(this).find("i").html(); var P=L.split(','); bbcode(P[0],P[1]) return false; }); if(window.location.toString().indexOf('/viewtopic.php?id=7108')>0) {$("#supertags2").addClass('show');} else if(window.location.toString().indexOf('/edit.php?id=178198')>0) {$("#supertags2").addClass('show');} else if(window.location.toString().indexOf('/edit.php?id=178360')>0) {$("#supertags2").addClass('show');} else if(window.location.toString().indexOf('/edit.php?id=178361')>0) {$("#supertags2").addClass('show');} else if(window.location.toString().indexOf('/edit.php?id=178362')>0) {$("#supertags2").addClass('show');} else if(window.location.toString().indexOf('/edit.php?id=178363')>0) {$("#supertags2").addClass('show');} </script> <!-- Пресеты тегов для навигатора по бесплатным дизам --> <div id="supertags3"><div id="meny-styles2" class="container"> <span class="addscript fd"><p>Бесплатный диз от FD <i>[block="p-out free fd"] [url=https://forumd.ru/viewtopic.php?id=]заголовок,[/url] [block="picture"][img]ссылка на картинку[/img][/block][/block] </i> </p></span> <span class="addscript fdpay"><p>Платный диз от FD <i>[block="p-out forsale fd"] [url=https://forumd.ru/viewtopic.php?id=]заголовок,[/url] [block="picture"][img]ссылка на картинку[/img][/block][/block] </i> </p></span> <span class="addscript norm"><p>Дизайн от юзеров <i>[block="p-out yellow"] [url=https://forumd.ru/viewtopic.php?id=]заголовок,[/url] [block="picture"][img]ссылка на картинку[/img][/block][/block] </i> </p></span> <div class="sttags"> <span class="menustylestext">ТЕГИ</span> <span class="menustylestext2">(вставить в <b>p-out</b> через пробел)</span> <br> <div class="forumtags"> <span class="menustylestext3">Платформа: </span> <span class="tag blue"><p>MyBB.ru<i> mybb-ru,</i></p></span> <span class="tag red"><p>Макет (любая платформа)<i> any,</i></p></span> <br><br> <span class="menustylestext3">Параметры: </span> <span class="tag"><p>+ PSD<i> psd-in,</i></p><em>(в наличии макет помимо кодов)</em></span> <span class="tag"><p>+ адаптивка<i> mob,</i></p><em>(есть версия для мобилок)</em></span> </div> <div class="forumtags"> <span class="menustylestext3">Тематика: </span> <span class="tag orange"><p>нейтральные<i> flat,</i></p></span> <span class="tag blue"><p>ролевые игры<i> frpg,</i></p></span> <span class="tag yellow"><p>компьютерные игры<i> game,</i></p></span> <span class="tag lightblue"><p>фентези<i> fant,</i></p></span> <span class="tag red"><p>аниме<i> anime,</i></p></span> <span class="tag yellow"><p>кино/сериалы<i> kino,</i></p></span> <span class="tag green"><p>стимпанк/киберпанк<i> cyb,</i></p></span> <span class="tag yellow"><p>мультфильмы<i> kids,</i></p></span> <span class="tag orange"><p>животные<i> cats,</i></p></span> <br><br> <span class="menustylestext3">Цвета: </span> <span class="tag"><p>тёмные<i> darkst,</i></p></span> <span class="tag gray"><p>светлые<i> light,</i></p></span> <span class="tag orange"><p>яркие<i> bright,</i></p></span> </div> </div> </div></div> <style> #supertags3 .container .addscript.fd p {background: #26af33; border-bottom: 6px solid #1c8426;} #supertags3 .container .addscript.fd p:hover {background: #1c8426;} #supertags3 .container .addscript.fdpay p {background: #23afc8; border-bottom: 6px solid #0080b7;} #supertags3 .container .addscript.fdpay p:hover {background: #0080b7;} #supertags3 .container .addscript.norm p {background: #f7941d; border-bottom: 6px solid #e36120;} #supertags3 .container .addscript.norm p:hover {background: #e36120;} </style> <script type="text/javascript"> $("#supertags3").appendTo('#tags'); if(window.location.toString().indexOf('/viewtopic.php?id=7140')>0) {$("#supertags3").addClass('show');} else if(window.location.toString().indexOf('/edit.php?id=178837')>0) {$("#supertags3").addClass('show');} else if(window.location.toString().indexOf('/edit.php?id=178838')>0) {$("#supertags3").addClass('show');} </script> <!-- Пресеты тегов для навигатора по скриптам --> <div id="supertags"><div id="meny-styles2" class="container"> <span class="addscript"><p>добавить скрипт/код <i>[block="SCRBLOCK"] [block="stforlink"] иконка, [block="link"][url=https://forumd.ru/viewtopic.php?id=]название[/url][/block] [/block] [block="sttags"] теги [/block] [/block] </i> </p></span> <div class="icons"> <span class="menustylestext">Иконки:</span> <p><span class="icon fa-brands fa-js"></span><i>[block="icon fa-brands fa-js"],[/block]</i></p> <p><span class="icon fa-brands fa-css3-alt"></span><i>[block="icon fa-brands fa-css3-alt"],[/block]</i></p> <p><span class="icon fa-regular fa-file-lines"></span><i>[block="icon fa-regular fa-file-lines"],[/block]</i></p> <p><span class="icon fa-solid fa-file-code"></span><i>[block="icon fa-solid fa-file-code"],[/block]</i></p> <p><span class="icon fa-solid fa-file-invoice-dollar"></span><i>[block="icon fa-solid fa-file-invoice-dollar"],[/block]</i></p> </div> <div class="sttags"> <span class="menustylestext">ТЕГИ</span> <span class="menustylestext2">(*значение в скобках вставить в SCRBLOCK через пробел)</span> <div class="maintags"> <span class="menustylestext2">Тип кода: </span> <span class="tag blue"><p>скрипт (js)<i>[block="js"]скрипт, js[/block]</i></p></span> <span class="tag lightblue"><p>css код (css)<i>[block="css"]css код, css[/block]</i></p></span> <span class="tag orange"><p>HTML/CSS шаблоны (shab)<i>[block="shab"]HTML/CSS шаблоны, shab[/block]</i></p></span> <span class="tag red"><p>Модули/Расширения (global)<i>[block="global"]Модули/Расширения, global[/block]</i></p></span> <span class="menustylestext2">Платформа: </span> <span class="tag blue"><p>MyBB.ru (mybb-ru)<i>[block="mybb-ru"]MyBB.ru, mybb-ru[/block]</i></p></span> <span class="tag red"><p>Любой движок (any)<i>[block="any"]Любой движок, any[/block]</i></p></span> </div> <div class="forumtags"> <span class="menustylestext3">Тип для форума: </span> <span class="tag orange"><p>Пользователи (users)<i>[block="users"]Пользователи, users[/block]</i></p></span> <span class="tag green"><p>Профиль (userprof)<i>[block="userprof"]Профиль, userprof[/block]</i></p></span> <span class="tag lightblue"><p>Доп. поля профиля (adfield)<i>[block="adfield"]Доп. поля профиля, adfield[/block]</i></p></span> <span class="tag yellow"><p>Аватары (avatars)<i>[block="avatars"]Аватары, avatars[/block]</i></p></span> <span class="tag lightblue"><p>Репутация (repa)<i>[block="repa"]Репутация, repa[/block]</i></p></span> <br> <span class="tag orange"><p>Группы (groups)<i>[block="groups"]Группы, groups[/block]</i></p></span> <span class="tag green"><p>Гoсти (guest)<i>[block="guest"]Гoсти, guest[/block]</i></p></span> <span class="tag red"><p>Администраторы (admins)<i>[block="admins"]Администраторы, admins[/block]</i></p></span> <span class="tag blue"><p>Модераторы (moders)<i>[block="moders"]Модераторы, moders[/block]</i></p></span> <br> <span class="tag yellow"><p>Регистрация (regis)<i>[block="regis"]Регистрация, regis[/block]</i></p></span> <span class="tag lightblue"><p>Личные сообщения (ls)<i>[block="ls"]Личные сообщения, ls[/block]</i></p></span> <span class="tag yellow"><p>Вход (login)<i>[block="login"]Вход, login[/block]</i></p></span> <span class="tag lightblue"><p>Подписки (subsc)<i>[block="subsc"]Подписки, subsc[/block]</i></p></span> <br> <span class="tag yellow"><p>Поиск (search)<i>[block="search"]Поиск, search[/block]</i></p></span> <span class="tag lightblue"><p>Цитирование (quotes)<i>[block="quotes"]Цитирование, quotes[/block]</i></p></span> <span class="tag yellow"><p>Пагинация (pagin)<i>[block="pagin"]Пагинация, pagin[/block]</i></p></span> <span class="tag green"><p>Опросы (polls)<i>[block="polls"]Опросы, polls[/block]</i></p></span> <span class="tag yellow"><p>Смайлы (smiles)<i>[block="smiles"]Смайлы, smiles[/block]</i></p></span> <br> <span class="tag lightblue"><p>Фикс скриптов QuadroBoards (qbfix)<i>[block="qbfix"]Фикс скриптов QuadroBoards, qbfix[/block]</i></p></span> </div> <div class="forumtags"> <span class="menustylestext3">Страница форума: </span> <span class="tag red"><p>На всех страницах (allpages)<i>[block="allpages"]На всех страницах, allpages[/block]</i></p></span> <span class="tag orange"><p>Страницы (созд. в админке) (fpages)<i>[block="fpages"]Страницы (соз. в админке), fpages[/block]</i></p></span> <br> <span class="tag orange"><p>Главная страница (mainpage)<i>[block="mainpage"]Главная страница, mainpage[/block]</i></p></span> <span class="tag yellow"><p>Объявление (announ)<i>[block="announ"]Объявление, announ[/block]</i></p></span> <span class="tag green"><p>Категории (categ)<i>[block="categ"]Категории, categ[/block]</i></p></span> <span class="tag yellow"><p>Форумы (forums)<i>[block="forums"]Форумы, forums[/block]</i></p></span> <span class="tag lightblue"><p>Статистика (stats)<i>[block="stats"]Статистика, stats[/block]</i></p></span> <br> <span class="tag orange"><p>Список тем (topiclist)<i>[block="topiclist"]Список тем, topiclist[/block]</i></p></span> <span class="tag yellow"><p>Страница профиля (profpage)<i>[block="profpage"]Страница профиля, profpage[/block]</i></p></span> <br> <span class="tag orange"><p>Тема (topics)<i>[block="topics"]Тема, topics[/block]</i></p></span> <span class="tag green"><p>Сообщения (posts)<i>[block="posts"]Сообщения, posts[/block]</i></p></span> <span class="tag yellow"><p>Контент сообщений (p-content)<i>[block="p-content"]Контент сообщений, p-content[/block]</i></p></span> <span class="tag yellow"><p>Рейтинг постов (p-repa)<i>[block="p-repa"]Рейтинг постов, p-repa[/block]</i></p></span> <span class="tag green"><p>Профиль автора поста (p-prof)<i>[block="p-prof"]Профиль автора поста, p-prof[/block]</i></p></span> <br> <span class="tag orange"><p>Форма ответа (fo)<i>[block="fo"]Форма ответа, fo[/block]</i></p></span> <span class="tag green"><p>Модификация ФО (fomod)<i>[block="fomod"]Модификация ФО, fomod[/block]</i></p></span> <span class="tag yellow"><p>Новые BB-теги (newbb)<i>[block="newbb"]Новые BB-теги, newbb[/block]</i></p></span> <span class="tag lightblue"><p>Инструментарий спец тем/постов (spesh)<i>[block="spesh"]Инструментарий спец тем/постов, spesh[/block]</i></p></span> </div> <div class="speztags"> <span class="menustylestext3">Универсальные теги: </span> <span class="tag red"><p>Дизайн/стиль (dis)<i>[block="dis"]Дизайн/стиль, dis[/block]</i></p></span> <span class="tag blue"><p>Замена элементов/атрибутов (chan)<i>[block="chan"]Замена элементов/атрибутов, chan[/block]</i></p></span> <span class="tag green"><p>Загрузка (load)<i>[block="load"]Загрузка, load[/block]</i></p></span> <span class="tag lightblue"><p>Переадресация (redir)<i>[block="redir"]Переадресация, redir[/block]</i></p></span> <span class="tag lightblue"><p>Скроллинг (scroll)<i>[block="scroll"]Скроллинг, scroll[/block]</i></p></span> <br> <span class="tag orange"><p>Виджеты (vidjet)<i>[block="vidjet"]Виджеты, vidjet[/block]</i></p></span> <span class="tag lightblue"><p>Меню (menu)<i>[block="menu"]Меню, menu[/block]</i></p></span> <span class="tag yellow"><p>Вкладки (ttabs)<i>[block="ttabs"]Вкладки, ttabs[/block]</i></p></span> <span class="tag lightblue"><p>Галереи (gall)<i>[block="gall"]Галереи, gall[/block]</i></p></span> <span class="tag green"><p>Слайдеры (sliders)<i>[block="sliders"]Слайдеры, sliders[/block]</i></p></span> <span class="tag yellow"><p>Ротаторы (rotat)<i>[block="rotat"]Ротаторы, rotat[/block]</i></p></span> <span class="tag lightblue"><p>Таймеры/даты (timers)<i>[block="timers"]Таймеры/даты, timers[/block]</i></p></span> <span class="tag green"><p>Спойлеры (spoilers)<i>[block="spoilers"]Спойлеры, spoilers[/block]</i></p></span> <br> <span class="tag green"><p>Реклама (adv)<i>[block="adv"]Реклама, adv[/block]</i></p></span> <span class="tag yellow"><p>Изображения (pics)<i>[block="pics"]Изображения, pics[/block]</i></p></span> <span class="tag lightblue"><p>Медиа (media)<i>[block="media"]Медиа, media[/block]</i></p></span> <span class="tag blue"><p>Ролевые игры (frpg)<i>[block="frpg"]Ролевые игры, frpg[/block]</i></p></span> <br> <span class="tag green"><p>Hover-эффекты (hover)<i>[block="hover"]Hover-эффекты, hover[/block]</i></p></span> <span class="tag yellow"><p>Анимация (anim)<i>[block="anim"]Анимация, anim[/block]</i></p></span> <span class="tag lightblue"><p>Украшения (decor)<i>[block="decor"]Украшения, decor[/block]</i></p></span> <span class="tag red"><p>Праздники (seleb)<i>[block="seleb"]Праздники, seleb[/block]</i></p></span> <br> <span class="tag red"><p>Ограничения/запреты (stops)<i>[block="stops"]Ограничения/запреты, stops[/block]</i></p></span> <span class="tag yellow"><p>Антикопирование (nocopy)<i>[block="nocopy"]Антикопирование, nocopy[/block]</i></p></span> <span class="tag lightblue"><p>Уведомления (notif)<i>[block="notif"]Уведомления, notif[/block]</i></p></span> </div> </div> </div></div> <style> .speztags {border-top: 2px solid #ccc; padding-top: 10px;} #pun .punbb #tags .forumtags { display: inline-block; vertical-align: top; width: 48% !important; } #pun .punbb #tags .maintags {display: block;} .maintags { margin: 10px 0; border-width: 2px 0 2px 0px; border-style: solid; border-color: #ccc; padding: 6px 0; } #supertags .container .addscript p { text-transform: uppercase; font-family: 'Bebas Neue', Impact; padding: 2px 10px 0; background: #f98561; border-bottom: 6px solid #e63737; border-radius: 0; font-size: 24px; } #supertags .addscript {margin: 10px 10px 10px 0px; display: inline-block;} #supertags .icons {display: inline-block;vertical-align: bottom;} #supertags .container .addscript p:hover {background: #e63737;} .tag.blue p {background: #0481d9;} .tag.lightblue p {background: #29aecb;} .tag.red p {background: #e63737;} .tag.orange p {background: #f98561;} .tag.gray p {background: #bbb;} .tag.green p {background: #26af33;} .tag.yellow p {background: #f7941d;} .menustylestext, .menustylestext2 {margin: 0 5px;} .menustylestext { font-size: 26px; text-transform: uppercase; font-family: 'Bebas Neue', Impact; } .menustylestext2 {font-weight: bold;} .menustylestext3 {display: block;font-weight: bold;margin-bottom: 5px;} #meny-styles2 .icon {font-size: 30px;} #meny-styles2 .icon.fa-js {color: #0481d9;} #meny-styles2 .icon.fa-css3-alt {color: #29aecb;} #meny-styles2 .icon.fa-file-lines {color: #f98561;} #meny-styles2 .icon.fa-file-code {color: #e63737;} #meny-styles2 .icon.fa-file-invoice-dollar {color: #f7941d} #meny-styles2 i,#supertags {display: none;} #supertags.show {display:block!important;} #supertags .container p { padding: 3px; border-radius: 3px; color: #fff; cursor:pointer; margin: 2px 0; font-size: 14px; display: inline-block; } #supertags .container p:hover {background-color: #939393;} </style> <script type="text/javascript"> $("#supertags").appendTo('#tags'); $("#meny-styles2 p").click(function(){ var L=$(this).find("i").html(); var P=L.split(','); bbcode(P[0],P[1]) return false; }); if(window.location.toString().indexOf('/viewtopic.php?id=7078')>0) {$("#supertags").addClass('show');} else if(window.location.toString().indexOf('/edit.php?id=176290')>0) {$("#supertags").addClass('show');} else if(window.location.toString().indexOf('/edit.php?id=176293')>0) {$("#supertags").addClass('show');} else if(window.location.toString().indexOf('/edit.php?id=176329')>0) {$("#supertags").addClass('show');} </script> </div> </fieldset> <p class="formsubmit"><input type="submit" class="button submit submit-premod" name="submit" value="Отправить на модерацию" accesskey="s" /> <input type="submit" class="button" name="preview" value="Посмотреть" accesskey="p" /></p> </form> </div> </div> <script type="text/javascript">$(document).trigger("pun_main_ready");</script> <!-- pun_stats --> <!-- banner_mini_bottom --> <!-- banner_bottom --> <div id="pun-break3" class="divider"><hr /></div> <div id="pun-crumbs2" class="section"> <p class="container crumbs"><strong>Вы здесь</strong> <em>&#187;&#160;</em><a href="https://forumd.ru/">ForumD.ru - Дизайн, графика, скрипты, техническая поддержка для форумов и сайтов</a> <em>&#187;&#160;</em><a href="https://forumd.ru/viewforum.php?id=123">Коворкинг: обмен вдохновением и опытом</a> <em>&#187;&#160;</em>Эксперименты Will O The Wisp</p> </div> <div id="pun-break4" class="divider"><hr /></div> <div id="pun-about" class="section"> <p class="container"> </p> </div> <script type="text/javascript">$(document).trigger("pun_about_ready"); if (typeof ym == 'object') {ym(201230, 'userParams', {UserId:1, is_user:0}); ym(201230, 'params', {forum_id: 517111});}</script> <div id="html-footer" class="section"> <div class="container"><script> </script> <!-- переключение языка --> <script> if ((!window['UserID'] || 1 == UserID) && !['ru', 'ru-RU'].includes(navigator.language) && !~document.cookie.indexOf('lang=')) {document.cookie = "lang=en"; location.reload()} var i,smbCodeArr=[];var arr0=[1026,1027,8218,1107,8222,8230,8224,8225,8364,8240,1033,8249,1034,1036,1035,1039,1106,8216,8217,8220,8221,8226,8211,8212,"0",8482,1113,8250,1114,1116,1115,1119,160,1038,1118,1032,164,1168,166,167,1025,169,1028,171,172,173,174,1031,176,177,1030,1110,1169,181,182,183,1105,8470,1108,187,1112,1029,1109,1111];for(i=0;i<arr0.length;i++)smbCodeArr[arr0[i]]=i+128;for(i=1040;i<=1103;i++)smbCodeArr[i]=i-848; var encodeURIwin1251=function(str){for(var arr=str.split(""),n,i=0;i<arr.length;i++){n=arr[i].charCodeAt();if(n>187&&n<1025||n>1105)arr[i]="&#"+n+";";if(typeof smbCodeArr[n]!="undefined")arr[i]=String.fromCharCode(smbCodeArr[n])}return escape(arr.join("")).replace(/\+/mg,"%2B")};$.fn.extend({serialize:function(){var i=0,s="",obj=this.serializeArray(),Lng=obj.length;for(;i<Lng;i++)s+=(i?"&":"")+encodeURIwin1251(obj[i].name)+"="+encodeURIwin1251(obj[i].value);return s}}); function changeLang(){if(window["UserID"]&&1!=UserID){var url=location.origin+"/profile.php?section=essentials&id="+UserID;$.ajax({url:url,async:false,success:function(res){var f=$(res).find("#profile1");"en"!=f.find('select[name="req_lang"]').val()?f.find('select[name="req_lang"]').val("en"):f.find('select[name="req_lang"]').val("ru");data=f.serialize();var curl=document.URL;history.replaceState(null,"",url);$.ajax({url:url,async:false,data:data,type:"POST",success:function(res){history.replaceState(null, "",curl);location.reload()}})}})}else{$("#pun.en").length?document.cookie="lang=ru":document.cookie="lang=en";location.reload()}}$("#langChange").on("click",changeLang); </script> <!-- изменение кода страниц --> <script type="text/javascript" src="https://forumstatic.ru/files/0007/e3/f7/43819.js?v=5" defer></script> <!-- сайдбар --> <script type="text/javascript" src="https://forumstatic.ru/files/0007/e3/f7/67067.js?v=2" defer></script> <!-- главная форума --> <script type="text/javascript" src="https://forumstatic.ru/files/0007/e3/f7/25287.js?v=5" defer></script> <!-- топиклист --> <script type="text/javascript" src="https://forumstatic.ru/files/0007/e3/f7/13065.js?v=2" defer></script> <!-- подписки в топиклисте --> <script type="text/javascript" src="https://forumstatic.ru/files/0007/e3/f7/26591.js?v=19" defer></script> <!-- топики --> <script type="text/javascript" src="https://forumstatic.ru/files/0007/e3/f7/49006.js?v=5" defer></script><!-- юзерлист --> <script type="text/javascript" src="https://forumstatic.ru/files/0007/e3/f7/18416.js?v=4" defer></script><!-- ЛС --> <script type="text/javascript" src="https://forumstatic.ru/files/0007/e3/f7/20727.js?v=17" defer></script><!-- Профиль --> <!--Добавляем ссылку на форум в crumbs --> <script> if(!$("#pun-index").length&&document.URL.indexOf("/pages/index")==-1){ var s=' »&nbsp;<a href="/=&forum"><span class="cr-txt rus">Форум</span><span class="cr-txt eng">Forum</span></a>'; if ($('#pun').hasClass('en')) { $(".crumbs").find("a:first").text('Home page').after(s) } else { $(".crumbs").find("a:first").text('Главная страница').after(s) } }; if($(".punbb").attr("id")=="pun-index"){ var s=' »&nbsp;<a href="/pages/index" class="rus">Главная страница</a><a href="/pages/index-eng" class="eng">Home page</a> »&nbsp;\ <a href="/=&forum"><span class="cr-txt rus">Форум</span><span class="cr-txt eng">Forum</span></a>'; $(".crumbs").html(s); }; </script> <!-- Аватар и ссылка в цитате © Alex_63 / Мод: Gerda, ForumD.ru --> <script>var FdQuoteAva = '<i class="fa-solid fa-user"></i>';</script> <script type="text/javascript" src="https://forumstatic.ru/files/0007/e3/f7/79040.js"></script> <script type="text/javascript">setLinkAndAva()</script> <!-- HTML в постах с допуском по группам © Alex_63 --> <script type="text/javascript" src="/files/0015/c4/3f/52361.js"></script> <script type="text/javascript"> HTMLinPost.groups = [1,2]; // Группы, допущенные к вставке HTML в посты HTMLinPost.noAccess = ['Дух осени','Maquis','Romych','Duka']; // Пользователи с запретом вставки HTML в посты HTMLinPost.parseHTMLinPosts() </script> <!-- Выделение и разворот кода © ForumD.ru, Gerda --> <script type="text/javascript"> $(document).ready(function() { $('.code-box').each(function() { var $codeBox = $(this); $codeBox.parents('.code-css').find('pre').wrapInner('<code class="language-css line-numbers"></code>'); $codeBox.parents('.code-javascript').find('pre').wrapInner('<code class="language-javascript line-numbers"></code>'); $codeBox.parents('.code-html').find('pre').wrapInner('<code class="language-html line-numbers"></code>'); $codeBox.find('.legend').html('<span class="copy-code" href="javascript:void(0);"><i><gg class="rus">Скопировать код</gg><gg class="eng">Copy code</gg></i><b><gg class="rus">Скопировано</gg><gg class="eng">Copied</gg></b></span>'); $codeBox.find('.legend').append('<span class="expand-code"><i><gg class="rus">Развернуть</gg><gg class="eng">Expand</gg></i><b><gg class="rus">Свернуть</gg><gg class="eng">Collapse</gg></b></span>'); $codeBox.find('.copy-code').on('click', function () { $codeBox.addClass('copied'); var textarea = document.createElement('textarea'); textarea.value = $codeBox.find('.scrollbox pre').text(); document.body.appendChild(textarea); textarea.select(); try { document.execCommand('copy'); console.log('Код скопирован успешно:', textarea.value); } catch (err) { console.error('Ошибка копирования кода:', err); } finally { document.body.removeChild(textarea); } }); $codeBox.find('.expand-code').on('click', function () { $codeBox.toggleClass('expanded'); }); }); }); </script> <!-- подсветка кода --> <link href="https://forumstatic.ru/files/0007/e3/f7/65930.css" rel="stylesheet"> <script src="https://forumstatic.ru/files/0007/e3/f7/20627.js" async></script> <!-- Полноэкранный просмотр изображений v.3 © ForumD, satsana & Gerda --> <script type="text/javascript" src="https://forumstatic.ru/files/0007/e3/f7/97612.js?v=3" async></script> <!-- Автоматическая подписка на темы --> <script>(function(){var forumLnk=$('#pun-crumbs1 a[href*="viewforum.php"]:last');if(!forumLnk.length)return;if(~[5,6,19].indexOf(+forumLnk.attr('href').match(/id=(\d+)/)[1]))$('#fld6').parent('.checkfield').remove(),$('#pun-viewtopic,#pun-post').find('#post .areafield').append('<input type="checkbox" checked style="display:none" id="fld6" name="subscribe"/>');})()</script> <!-- цветовыделение должностей и мастеров --> <script> $(document).ready(function() { function addDutyClass(element, userId) { var userDuty = dutyData.find(item => String(item.id) === String(userId)); if (userDuty) { $(element).addClass(userDuty.color); } } function addVerifiedClass(element, userId) { var verifiedUser = verifiedData.find(item => String(item.id) === String(userId)); if (verifiedUser) { $(element).addClass(verifiedUser.color); } } $('.post-content a, a.post-mention, #onlinelist a, .modmenu a, .tcl.username a, .tcl.tc-username a, .tc2.pmtc22 a').each(function () { var href = $(this).attr('href'); var userIdMatch = href.match(/\/profile\.php\?id=(\d+)$/); if (userIdMatch) { var userId = userIdMatch[1]; addDutyClass(this, userId); addVerifiedClass(this, userId); } }); }); </script> <!-- Проверка имени при регистрации © Alex_63 --> <style> #username.normal {background-color: #abd4af !important; border: 2px solid #26af33; color: #2f5325;} #username.error {background-color: #e7b8b8 !important; border: 2px solid #e63737; color: #6c1313;} .stclr {margin-left: 10px;} .stclr.normal{color: #26af33; font-family: 'Bebas Neue', 'Book Antiqua'; text-transform: uppercase; font-size: 22px;} .stclr.error {color: #e63737; font-family: 'Bebas Neue', 'Book Antiqua'; text-transform: uppercase; font-size: 22px;} img.preloader{width:12px;height:12px;margin-left:3px;} </style> <script type="text/javascript" src="https://forumstatic.ru/files/0007/e3/f7/28064.js" defer></script> <!-- Чекбокс "Выбрать все" при модерировании темы и форума © Alex_63 --> <script type="text/javascript">if($('#pun-modviewforum').length){$('th.tcmod').html('Выбрать все: <input type="checkbox" id="CheckAll" title="Выбрать все">');$('#CheckAll').click(function(){if($('#CheckAll').attr('checked')){$(this).parents('table').find('td.tcmod input[type="checkbox"]').attr('checked',true);}else{$(this).parents('table').find('td.tcmod input[type="checkbox"]').attr('checked',false);}});}else if(GroupID<=2 && $('.punbb[id^="pun-multi"]').length){$('.modmenu .button').before('<span>Выбрать все</span><input type="checkbox" id="CheckAll" title="Выбрать все">');$('#CheckAll').click(function(){if($('#CheckAll').attr('checked')){$(this).parents('#pun-main').find('.pl-select input[type="checkbox"]').attr('checked',true);}else{$(this).parents('#pun-main').find('.pl-select input[type="checkbox"]').attr('checked',false);}});}</script> <!-- Всплывающие Подсказки --> <style> #tooltip { display: none; position: absolute; z-index: 9999999999999999; background: rgba(0,0,0,0.8); color: #fff; padding: 5px 8px; border-radius: 4px; max-width: 250px; } </style> <script type="text/javascript"> jQuery.fn.quicktip = function(options){ var defaults = { speed: 500, xOffset: 26, yOffset: -5 }; var options = $.extend(defaults, options); return this.each(function(){ var $this = jQuery(this); var tipTitle = $this.attr('title'); if (tipTitle) { $this.removeAttr('title'); $this.on('mouseover', function(e) { $(this).css('cursor', 'pointer'); $("body").append("<div id='tooltip'>" + tipTitle + "</div>"); $("#tooltip") .css("top", (e.pageY + defaults.xOffset) + "px") .css("left", (e.pageX + defaults.yOffset) + "px") .fadeIn(options.speed); }).on('mouseout', function(e) { $("#tooltip").remove(); }); $this.mousemove(function(e) { $("#tooltip") .css("top", (e.pageY + defaults.xOffset) + "px") .css("left", (e.pageX + defaults.yOffset) + "px"); }); } }); }; // Добавление подсказок $('.post abbr').attr('data-title', function() { return $(this).attr('title') }); $(function() {$(window).on('load', function() { $('.post abbr').attr('title', function() { return $(this).attr('data-title') }); $('*[title]').quicktip({ speed: 700 }); });}); </script> <!-- костыли английской версии --> <script type="text/javascript" src="https://forumstatic.ru/files/0007/e3/f7/52360.js?v=2"></script> <!-- кастомные селекты --> <script> var fdSelects = '#punbbsearch select, #userlist select, #birthday select, #form-area select, .questionary-post select'; </script> <script type="text/javascript" src="https://forumstatic.ru/files/0007/e3/f7/66411.js" defer></script> <!-- Форма постинга рекламы --> <script> const piarTopicsPrefix = '[Реклама]'; //начало названия топиков, в которых будет форма const piarForumId = '186'; //id форума, в котором лежат топики, в которых будет форма const isPiarTopic = FORUM.topic?.subject.startsWith(piarTopicsPrefix) && FORUM.topic?.forum_id === piarForumId; if (location.pathname === '/viewtopic.php' && isPiarTopic) { const saveToLS = (data) => localStorage.setItem('pr_values', JSON.stringify(data)); const getFromLS = () => JSON.parse(localStorage.getItem('pr_values') || "false"); const removeFromLS = () => localStorage.removeItem('pr_values'); if (GroupID === 3){ const defaultReply = document.querySelector('#post-form'); if (defaultReply) defaultReply.remove(); const piarLogin = 'Ролевой Курьер'; //логин пиар-аккаунта const piarPassword = '1234'; //пароль пиар-аккаунта let linkError = ''; let codeError = ''; const validateFields = (fields) => true; const markup = ` <div id='piar_reply_emulator' class='container'> <form> <fieldset> <legend>Разместить рекламу</legend> <p style="display: grid; grid-template-columns: 1fr;"${linkError ? " class=has-error" : ""}> <label for="our_piar_link">Ссылка на ответную рекламу</label> ${linkError} <input type="text" id="our_piar_link" name="our_piar_link"> </p> <p${codeError ? " class=has-error" : ""}> <label for="your_piar_code">Код вашей рекламы</label><br> ${codeError} <textarea id="your_piar_code" name="your_piar_code" rows="13"></textarea> </p> </fieldset> <p><input type="submit"></p> </form> </div>`; const bottomPagination = document.querySelector('.linksb'); bottomPagination.insertAdjacentHTML('afterend', markup); const piarReplyEmulatorForm = bottomPagination.nextElementSibling.querySelector('form'); piarReplyEmulatorForm.addEventListener('submit', async (ev) => { ev.preventDefault(); const values = {}; for(let elem of piarReplyEmulatorForm){ if(['text', 'textarea'].includes(elem.type)) values[elem.name] = elem.value || '' } if (!validateFields(values)) return false; saveToLS(values); const loginFormMarkup = ` <form id="login" class="container" method="post" action="${location.origin}/login.php?action=in" onsubmit="return true"> <input type="hidden" name="form_sent" value="1"> <input type="hidden" name="redirect_url" value="${location.href}"> <input type="text" id="fld1" name="req_username" size="25" maxlength="25" value="${piarLogin}"> <input type="password" id="fld2" name="req_password" size="16" maxlength="16" value="${piarPassword}"> </form>`; const container = document.createElement('div'); container.innerHTML = loginFormMarkup; document.querySelector('body').append(container); const event = new Event("submit"); container.querySelector('form').submit(); }) } else { const pr_data = getFromLS(); if(pr_data) { document.querySelector('#main-reply').value = ` ${pr_data.your_piar_code} [b]Ваша:[/b] ${pr_data.our_piar_link}`.trim(); removeFromLS(); document.querySelector('#post-form #post').submit?.click() const logoutUrl = `${location.origin}/login.php?action=out&id=${window.UserID}` fetch(logoutUrl); } } } </script> <!-- Баннеры конкурса --> <div class="comp-banner" style="display: none;"> <a href="https://memecross.rusff.me/" target="_blank" title="Meme Crossover"><img src="https://i.ibb.co/Bs2Tsy3/84101.gif"></a> <a href="https://theraven.rusff.me/" target="_blank" title="The raven"><img src="https://forumupload.ru/uploads/001c/00/4d/5/220581.gif"></a> <a href="https://thedome.rusff.me/" target="_blank" title="the dome"><img src="https://forumupload.ru/uploads/001b/60/aa/48/821676.png"></a> <a href="https://curama.mybb.ru" target="_blank" title="Наруто: Печать времени"><img src="https://forumupload.ru/uploads/0007/e3/f7/6822/627857.gif"></a> <a href="https://primaltotem.hstn.me/" target="_blank" title="Ойкумена: до начала времен"><img src="https://i.imgur.com/wPEJEYI.gif"></a> </div> <script> $(document).ready(function() { var $compBanner = $('.comp-banner'); var $banners = $compBanner.children(); for (var i = $banners.length - 1; i >= 0; i--) { $compBanner.append($banners.eq(Math.floor(Math.random() * (i + 1)))); } var $clonedBanner = $compBanner.clone().css('display', 'flex'); var forumSelectors = ['#forum_f192', '#forum_f193', '#forum_f194', '#forum_f195']; $.each(forumSelectors, function(index, selector) { var $forum = $(selector); if ($forum.length) { var $descBanner = $forum.find('.desc-banner').after($clonedBanner); } }); var $banners2 = $('.comp-banner2'); for (var i = $banners2.children.length; i >= 0; i--) { $banners2.appendChild($banners2.children[Math.random() * i | 0]); } }); </script> <style> .comp-banner2 p {display: flex;} .comp-banner, .comp-banner2 p { justify-content: center; gap: 5px; flex-wrap: wrap; } .comp-banner2 img {width: 468px; height: 60px;} </style> <!--Копирайт--> <div id="bottom"><div class="inner"> <div id="fdcop1" class="fdcop rus"><a href="/viewtopic.php?id=4505" target='blank'>Отзывы</a> | <a href='/viewtopic.php?id=8309' target='blank'>Сообщить об ошибке</a> | <a href='/viewtopic.php?id=6616' target='blank'>Помочь нам</a> | <a href='/misc.php?action=rules' target='blank'>Правила проекта</a></div> <div id="fdcop2" class="fdcop icons rus"> <a href="https://discord.com/invite/rNWtvk7" target="_blank" title="Наш сервер на дискорде для заказов"><i class="fa-brands fa-discord"></i></a> <a href="/viewtopic.php?id=4506" title="Диалог с администрацией"><i class="fa-regular fa-comment"></i></a> <a href="/viewtopic.php?id=6616" title="Поддержать проект"><i class="fa-solid fa-hand-holding-heart"></i></a> <a href="https://vk.com/forumd" target="_blank" title="Мы в ВК"><i class="fa-brands fa-vk"></i></a> <a href="https://www.youtube.com/@forumd-ru" target="_blank" class="tip" title="Канал на Ютубе"><i class="fa-brands fa-youtube"></i></a> <a href="https://boosty.to/forumd.ru" target="_blank" title="Подписки/донаты на Boosty"><i class="fa-solid fa-money-check-dollar"></i></a> <a href="https://www.donationalerts.com/r/forumdru" target="_blank" title="Донаты на DonationAlerts"><i class="fa-solid fa-coins"></i></a> </div> <div id="fdcop2" class="fdcop icons eng"> <a href="https://discord.gg/Vz8GGZT" target="_blank" title="Our Discord server"><i class="fa-brands fa-discord"></i></a> <a href="/viewtopic.php?id=4506" target="_blank" title="Dialogue with the administration"><i class="fa-regular fa-comment"></i></a> <a href="https://vk.com/forumd" target="_blank" title="Our VK page"><i class="fa-brands fa-vk"></i></a> <a href="https://www.youtube.com/@forumd-ru" target="_blank" title="Our Youtube channel"><i class="fa-brands fa-youtube"></i></a> <a href="https://boosty.to/forumd.ru" target="_blank" title="Subscribe/Donate on Boosty"><i class="fa-solid fa-money-check-dollar"></i></a> <a href="https://www.donationalerts.com/r/forumdru" target="_blank" title="Donate on DonationAlerts"><i class="fa-solid fa-coins"></i></a> </div> <div class="fdcop rus">© ForumD.ru, 2009-2024<br> <a href="https://forumd.ru/viewtopic.php?id=5751#rule" target="_blank">Условия использования бесплатного контента</a></div> <div class="fdcop eng">© ForumD.ru, 2009-2024<br> When publishing our content, please leave a link to the source.</div> <div id="fdbotBANNER" class="fdcop rus"><!-- баннеры --> <!-- форум Coffee table knight --> <a href="https://abyssus.f-rpg.me/" target="_blank"><img src="https://forumupload.ru/uploads/001c/36/d0/3/228996.png" title="Supermassive Black Cross"></a> <!-- форум magia --> <a href="https://magia-frpg.ru/" target="_blank" title="MAGIA"><img src="https://forumupload.ru/uploads/001a/fa/19/2/153026.gif"></a> <!-- ЛИЛ, взаимный референс --><a href="https://urchoice.su" class="tip" title="Каталог форумов" target="_blank"><img src="https://forumstatic.ru/files/000b/09/4f/61730.png"></a> <!-- референс к подкастерам, Герда --> <a href="https://urchoice.su/viewtopic.php?id=58390#p2160217" class="tip" title="Подкаст «НеТЕролевые» - Рассказываем и обсуждаем ФРПГ" target=_blank><img src="https://forumupload.ru/uploads/0014/80/a5/2/729997.png"></a> <!-- рпг-хит - референс --> <a href="http://rpg-hit.ru/vote/forumcard/id/38" title="каталог ролевых: RPG-HIT" target="_blank" class="tip"><img src="https://forumstatic.ru/files/001b/c3/c4/23464.gif"></a> <!-- Top.Roleplay.Ru --> <script type="text/javascript" language="javascript"> var topRPGc="<img src='https://s02.rpgtop.su/cgi-bin-mod/iv.cgi?a=ins&id=26353&rnd=" + Math.random(); topRPGc += "&r="+escape(document.referrer)+"' width='1' height='1' border='0'><a href='https://rpgtop.su/26353' title='Рейтинг Ролевых Ресурсов - RPG TOP' target='_blank'>"+ "<img src='//img.rpgtop.su/88x31x11x8.gif' class='tip' title='Рейтинг Ролевых Ресурсов - RPG TOP' border='0' width='88' height='31'></a> "; document.write(topRPGc); </script> <noscript> <img src='//s02.rpgtop.su/cgi-bin-mod/iv.cgi?a=ins&id=26353' width='1' height='1' border='0'><a href='https://rpgtop.su/26353' class="tip" title='Рейтинг Ролевых Ресурсов - RPG TOP' target='_blank'><img src='//img.rpgtop.su/88x31x11x8.gif' border='0' width='88' height='31'></a> </noscript> <!-- /Top.Roleplay.Ru --> <!-- Yandex.Metrika informer --> <a href="https://metrika.yandex.ru/stat/?id=93794845&amp;from=informer" target="_blank" rel="nofollow"><img src="https://informer.yandex.ru/informer/93794845/3_1_EFEFEFFF_EFEFEFFF_0_uniques" style="width:88px; height:31px; border:0;" alt="Яндекс.Метрика" title="Яндекс.Метрика: данные за сегодня (просмотры, визиты и уникальные посетители)" class="ym-advanced-informer" data-cid="93794845" data-lang="ru" /></a> <!-- /Yandex.Metrika informer --> </div> <div id="fdbotMENU" class="rus"> <div class="bmenu"><span>Заказать</span> <ul> <li><a href="/viewtopic.php?id=5760" target='blank'>Дизайн для форумов/сайтов</a></li> <li><a href="/viewtopic.php?id=5768" target='blank'>Графика и арт</a></li> <li><a href="/viewtopic.php?id=6322" target='blank'>Аватары и подписи</a></li> <li><a href="/viewtopic.php?id=5769" target='blank'>Стримы и соцсети</a></li> <li><a href="/viewtopic.php?id=5771" target='blank'>Скрипты и техоснащение</a></li> </ul> </div> <div class="bmenu"><span>Полезное</span> <ul> <li><a href="/viewtopic.php?id=2791" target='blank'>Бесплатные MyBB-дизайны</a></li> <li><a href="/viewtopic.php?id=7051" target='blank'>Бесплатные макеты</a></li> <li><a href="/pages/allscripts" target='blank'>Бесплатные скрипты и коды</a></li> <li><a href="/viewforum.php?id=7" target='blank'>Гайды по вебдизайну</a></li> <li><a href="/viewforum.php?id=96" target='blank'>Поиск специалистов</a></li> </ul> </div> <div class="bmenu"><span>Заказчикам</span> <ul> <li><a href="/viewforum.php?id=75" target='blank'>Техническая поддержка</a></li> <li><a href="/viewforum.php?id=1" target='blank'>Размещение рекламы форума/сайта</a></li> <li><a href="/viewtopic.php?id=5762" target='blank'>Условия работы ForumD.ru</a></li> <li><a href="/viewtopic.php?id=3434" target='blank'>Правила оформления заказов</a></li> </ul> </div> <div class="bmenu"><span>Специалистам</span> <ul> <li><a href="/viewforum.php?id=90" target='blank'>Размещение портфолио</a></li> <li><a href="/viewtopic.php?id=5788" target='blank'>Присоединиться к команде ForumD.ru</a></li> <li><a href="/viewtopic.php?id=6036" target='blank'>Бонусы и привилегии</a></li> <li><a href="/viewtopic.php?id=3434" target='blank'>Правила выполнения заказов</a></li> </ul> </div> </div> <div class="stat-place"></div> </div></div> <!-- ------------------------------------------------------------------------------ --> <!-- Спецпосты - скрипт --> <script type="text/javascript"> ((topic, search, result) => { $(topic).toggleClass(result, $('.post-content .' + search, topic).length > 0); })($('#pun-main'), 'portfoliopost', 'portfoliotopic'); ((topic, search, result) => { $(topic).toggleClass(result, $('.post-content .' + search, topic).length > 0); })($('#pun-main'), 'anketa-hide', 't-anketa'); $('#pun-edit .portfoliotopic h1').after('<div id="portprew"><div class="topic"><div class="post"><div class="container"><div class="post-body"></div></div></div></div></div>'); $('#pun-post .portfoliotopic h1').after('<div id="portprew"><div class="topic"><div class="post"><div class="container"><div class="post-body"></div></div></div></div></div>'); $('#post-preview .post-box').appendTo('#portprew .post-body'); $('.no-prof:contains("no-prof")').parents('.post').addClass('no-prof'); $('.portfoliopost:contains("portfoliopost")').parents('.post').addClass('portfolio'); $('.forsalepost:contains("forsalepost")').parents('.post').addClass('forsale'); $('.saledpost:contains("saledpost")').parents('.post').addClass('saled'); $('.freepost:contains("freepost")').parents('.post').addClass('free'); $('.makeportfoliolight:contains("makeportfoliolight")').parents('.post').addClass('portfolio-light'); $('#pun-searchposts .post:contains("***QUESTIONARY***")').addClass('anketa'); $('.questionary-post').parents('#pun-main').addClass('questionary'); </script></div> </div> </div> </div> </div> </body> </html>