Code Ready | Frontend – Telegram
Code Ready | Frontend
22.2K subscribers
1.08K photos
448 videos
17 files
716 links
Авторский канал по Frontend разработке.
Ресурсы, гайды, задачи, шпаргалки.
Информация ежедневно пополняется!

Автор: @energy_it

РКН: https://clck.ru/3NJCKs

Реклама на бирже: https://telega.in/c/code_ready
Download Telegram
🔥2110👍7🤝1
👩‍💻 Группируем колонки в таблице в один клик!

Тег <colgroup> используется в таблицах, чтобы объединить несколько колонок и задать им общие стили: ширину, цвет фона, скрытие и другое.

Можно использовать свойства:
width;
background;
background-color;
visibility;
border / border-* (только при border-collapse: collapse).


Работает в паре с тегом <col>, через который и задаются конкретные стили колонкам.

📣 Code Ready | #атрибут
Please open Telegram to view this post
VIEW IN TELEGRAM
20🔥10👍7🤝3
Воспроизводим звук по клику — без библиотек!

Хотите добавить отзывчивости интерфейсу? Сегодня разбираем как реализовать звук клика.

Шаг 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). Браузер обычно кэширует звук, но первое воспроизведение может занять долю секунды.

📣 Code Ready | #практика
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥249👍8🤝3👎1
📱 Math: основные методы работы с числами!

В этой шпаргалке - основные функции объекта Math, применяемые для округления, извлечения целых частей, определения знаков и вычисления минимальных и максимальных значений. Это базовые операции, на которых держатся корректные числовые вычисления в приложениях.

📣 Code Ready | #шпора
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥21👍147🤝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 получает аккуратные отступы.

📣 Code Ready | #совет
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2312🤝10
📱 Контекстное действие при выделении!

Привет! В этом гайде создаём компактную всплывающую панель, которая появляется над выделенным текстом и позволяет мгновенно выполнить поиск в Google.

Ключевые моменты:
• HTML: минимальная разметка — текстовый блок и скрытая панель действия.

• CSS: лёгкое оформление, мягкая тень и анимация появления.

• JS: определение выделенного текста и обработка кликов вне элемента.


Такой элемент подходит для блогов, учебных материалов и рабочих интерфейсов, где пользователю важно быстро искать дополнительную информацию без лишних действий.

📣 Code Ready | #гайд
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
19🔥12👍9🤝4
13👍11🤝9
Что же выведет консоль?
Anonymous Quiz
44%
A
13%
B
8%
C
35%
D
17🔥13👍9
👩‍💻 CSS-приём — анимированная заливка текста!

В этом мини-трюке создадим эффект появления строки, когда цветной слой постепенно «проходит» по тексту и заполняет его, будто это анимация набора.

Как работает:
data-text хранит копию строки, которую использует псевдо-элемент для заливки;

::before накладывается поверх и начинается с ширины 0, скрывая часть текста;

Анимация плавно увеличивает width, открывая символы один за другим;

border-right добавляет небольшой “курсор”, усиливая ощущение движения.


Трюк отлично показывает силу псевдо-элементов: один дублирует контент, второй управляет визуальным сценарием.

📣 Code Ready | #фишка
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥1910👍8🤝3
Определяем, что делает пользователь в input — без таймеров и дебаунсов!

Разберем, как определить, печатает ли пользователь, удаляет текст, вставляет из буфера обмена или вызывает автозамену — используя только inputType.

Шаг 1 — получаем поле:
const field = document.querySelector('#search');


Шаг 2 — определяем ввод символов (именно набор текста руками):
field.addEventListener('input', (e) => {
if (e.inputType === 'insertText') {
console.log('Пользователь печатает текст');
}
});


Шаг 3 — распознаём удаление:
field.addEventListener('input', (e) => {
if (e.inputType.includes('delete')) {
console.log('Пользователь удаляет текст');
}
});


Шаг 4 — ловим вставку из буфера обмена:
field.addEventListener('input', (e) => {
if (e.inputType === 'insertFromPaste') {
console.log('Вставка текста из буфера обмена');
}
});


Шаг 5 — определяем другие вставочные действия (автозамена, drop и т.д.):
field.addEventListener('input', (e) => {
if (e.inputType.startsWith('insert') &&
e.inputType !== 'insertText' &&
e.inputType !== 'insertFromPaste') {
console.log('Автозамена или другое вставочное действие');
}
});


🔥 Позволяет строить умные поля поиска, автосохранение, динамические подсказки и разные UX-ветки без debounce, таймеров и лишней логики.

📣 Code Ready | #практика
Please open Telegram to view this post
VIEW IN TELEGRAM
👍23🔥139🤝2
📱 Math: методы работы с числами — часть 2!

В этой шпаргалке собраны методы объекта Math, используемые при работе со степенями, корнями, логарифмами, экспонентами, случайными значениями и 32-битной арифметикой. Эти инструменты лежат в основе вычислений, необходимых при работе с графикой, анимациями, геометрией элементов и обработкой данных.

📣 Code Ready | #шпора
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥1912👍10🤝3