AW-Flow — Preloader — Logo Reveal
Буквы логотипа выезжают по очереди, а затем экран загрузки уходит вверх шторкой или растворяется.
- Запуск
- на весь сайт
- Параметров
- 9
- Телефоны
- свои настройки
- Код
- на весь сайт
Готовый код
Это тот же код, что сейчас работает в превью: значения подставлены из конструктора, внешние библиотеки не нужны.
<!-- AW-Flow — Preloader — Logo Reveal · код для всего сайта, префикс классов: awf-preloader-logo -->
<style>
.awf-preloader-logo {
--awf-size: 64px;
--awf-bg: #0c0c14;
--awf-color: #ffffff;
--awf-stagger: 60ms;
--awf-duration: 700ms;
}
.awf-preloader-logo {
position: fixed;
inset: 0;
z-index: 2147483647;
display: flex;
align-items: center;
justify-content: center;
background: var(--awf-bg);
color: var(--awf-color);
transition: opacity 0.6s ease, transform 0.9s cubic-bezier(0.76, 0, 0.24, 1), visibility 0s linear 0.9s;
}
.awf-preloader-logo.awf-done { transform: translate3d(0, -100%, 0); visibility: hidden; }
.awf-preloader-logo-logo {
display: flex;
overflow: hidden;
padding: 0.12em 0;
font-family: TildaSans, Arial, sans-serif;
font-size: var(--awf-size);
font-weight: 700;
line-height: 1;
letter-spacing: -0.02em;
}
.awf-preloader-logo-logo span {
display: inline-block;
transform: translate3d(0, 115%, 0);
animation: awf-preloader-logo-in var(--awf-duration) cubic-bezier(0.16, 1, 0.3, 1) forwards;
animation-delay: calc(var(--i) * var(--awf-stagger));
}
.awf-preloader-logo-logo .awf-sp { width: 0.28em; }
@keyframes awf-preloader-logo-in { to { transform: none; } }
/* уважение к настройке «уменьшить движение» */
@media (prefers-reduced-motion: reduce) {
.awf-preloader-logo, .awf-preloader-logo-logo span { transition: none; animation: none; transform: none; }
}
</style>
<script>
(function () {
var CLS = 'awf-preloader-logo';
var TEXT = "Brand";
var MIN = 1400; // минимальное время показа, мс
var start = Date.now(), done = false;
var pl = document.createElement('div');
pl.className = CLS;
pl.setAttribute('aria-hidden', 'true');
var logo = document.createElement('div');
logo.className = CLS + '-logo';
Array.from(TEXT).forEach(function (ch, i) {
var s = document.createElement('span');
if (ch === ' ') s.className = 'awf-sp'; else s.textContent = ch;
s.style.setProperty('--i', i);
logo.appendChild(s);
});
pl.appendChild(logo);
document.documentElement.appendChild(pl);
function finish() {
if (done) return;
done = true;
// ждём, пока буквы доедут, но не меньше MIN
var cs = getComputedStyle(pl);
var intro = (parseFloat(cs.getPropertyValue('--awf-duration')) || 0) + (parseFloat(cs.getPropertyValue('--awf-stagger')) || 0) * TEXT.length;
setTimeout(function () {
pl.classList.add('awf-done');
setTimeout(function () { pl.remove(); }, 1000);
}, Math.max(0, Math.max(MIN, intro) - (Date.now() - start)));
}
if (document.readyState === 'complete') finish();
else window.addEventListener('load', finish);
setTimeout(finish, 10000); // страховка
})();
</script>Вставляется один раз — в код всего сайта.
Как подключить в Tilda
Этот эффект действует на весь сайт, поэтому код вставляется не в блок, а в настройки сайта.
- Откройте вставку кода. «Настройки сайта» → «Вставка кода» → поле «HTML-код для вставки внутрь head».
- Вставьте код целиком и сохраните. Код добавляется один раз и работает на всех страницах сайта.
- Переопубликуйте все страницы. Без этого код не попадёт на уже опубликованные страницы.
- Нужно только на одной странице? Тогда вставьте код в «Настройки страницы» → «Дополнительно» → «HTML-код для вставки внутрь head» и опубликуйте эту страницу.
- Хотите поменять вид? Настройте эффект здесь заново и замените старый код новым — цвета, тексты и время уже вшиты в код.
- Как он работает. Экран загрузки появляется сразу при открытии страницы и сам скрывается после полной загрузки (событие window load), но не раньше минимального времени показа.
Ещё в разделе «Интерфейс»Весь каталог