Привет! В этом гайде создаём аккуратный мини-виджет для выбора суммы с плавной анимацией числа, удобным ползунком и набором готовых значений.
Ключевые моменты:
• HTML: базовая разметка — крупное число, ползунок и кнопки значений.
• CSS: чистое и минималистичное оформление, понятная структура и мягкие акценты.
• JS: плавная анимация изменения суммы и синхронизация ползунка с кнопками выбора.
Такой элемент отлично подойдёт для калькуляторов, тарифов и любых интерфейсов, где пользователю нужно быстро выбрать диапазон суммы.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
❤18🔥12👍7🤝3😁1
Тег
<colgroup> используется в таблицах, чтобы объединить несколько колонок и задать им общие стили: ширину, цвет фона, скрытие и другое.Можно использовать свойства:
• width;
• background;
• background-color;
• visibility;
• border / border-* (только при border-collapse: collapse).
Работает в паре с тегом
<col>, через который и задаются конкретные стили колонкам.Please open Telegram to view this post
VIEW IN TELEGRAM
❤20🔥10👍7🤝3
Воспроизводим звук по клику — без библиотек!
Хотите добавить отзывчивости интерфейсу? Сегодня разбираем как реализовать звук клика.
Шаг 1 — создаём звук:
Шаг 2 — проигрываем при клике:
Шаг 3 — можно на конкретную кнопку:
🔥 Работает с основными форматами (
📣 Code Ready | #практика
Хотите добавить отзывчивости интерфейсу? Сегодня разбираем как реализовать звук клика.
Шаг 1 — создаём звук:
const clickSound = new Audio('/sounds/click.mp3');Шаг 2 — проигрываем при клике:
document.addEventListener('click', () => {
clickSound.currentTime = 0; // перезапуск
clickSound.play().catch(() => {}); // защита от блокировки
});Шаг 3 — можно на конкретную кнопку:
const popSound = new Audio('/sounds/pop.mp3');
document.querySelector('#btn').addEventListener('click', async () => {
try {
popSound.currentTime = 0;
await popSound.play();
} catch (_) {}
});🔥 Работает с основными форматами (
.mp3, .wav). Браузер обычно кэширует звук, но первое воспроизведение может занять долю секунды.Please open Telegram to view this post
VIEW IN TELEGRAM
🔥24❤9👍8🤝3👎1
В этой шпаргалке - основные функции объекта Math, применяемые для округления, извлечения целых частей, определения знаков и вычисления минимальных и максимальных значений. Это базовые операции, на которых держатся корректные числовые вычисления в приложениях.Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥21👍14❤7🤝2
Если один и тот же компонент в разных блоках требует разные отступы, можно использовать
:where()::where(.card, .section, .block) h2 {
margin-block: 0.5em 1em;
}:where() не повышает специфичность, поэтому можно переопределять стиль дальше, без !important.Теперь можно задавать глобальные отступы для семантики, а локальные спокойно перебивать:
.hero h2 {
margin-block: 2em 1em;
}А чтобы ограничить стили только внутри компонента, объединим
:where() с контейнером:.card :where(h2, h3, p) {
margin-block: 0.7em;
}.card получает аккуратные отступы.Please open Telegram to view this post
VIEW IN TELEGRAM
👍23❤12🤝10
Привет! В этом гайде создаём компактную всплывающую панель, которая появляется над выделенным текстом и позволяет мгновенно выполнить поиск в Google.
Ключевые моменты:
• HTML: минимальная разметка — текстовый блок и скрытая панель действия.
• CSS: лёгкое оформление, мягкая тень и анимация появления.
• JS: определение выделенного текста и обработка кликов вне элемента.
Такой элемент подходит для блогов, учебных материалов и рабочих интерфейсов, где пользователю важно быстро искать дополнительную информацию без лишних действий.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
❤19🔥12👍9🤝4