Code Ready | Frontend
Авторский канал по Frontend разработке. Ресурсы, гайды, задачи, шпаргалки. Информация ежедневно пополняется! Автор: @energy_it РКН: https://clck.ru/3NJCKs Реклама на бирже: https://telega.in/c/code_ready
Ko'proq ko'rsatish📈 Telegram kanali Code Ready | Frontend analitikasi
Code Ready | Frontend (@code_ready) Rus til segmentidagi kanali faol ishtirokchi. Hozirda hamjamiyat 22 047 obunachidan iborat bo'lib, Texnologiyalar & Aralashmalar toifasida 6 146-o'rinni va Rossiya mintaqasida 30 575-o'rinni egallagan.
📊 Auditoriya ko‘rsatkichlari va dinamika
невідомо sanasidan buyon loyiha tez o‘sib, 22 047 obunachiga ega bo‘ldi.
10 Iyun, 2026 dagi oxirgi ma’lumotlarga ko‘ra kanal barqaror faollikka ega. Oxirgi 30 kunda obunachilar soni -75 ga, so‘nggi 24 soatda esa -10 ga o‘zgardi va umumiy qamrov yuqori darajada qolmoqda.
- Tasdiqlash holati: Tasdiqlanmagan
- Jalb etish (ER): Auditoriya o‘rtacha 11.89% darajada jalb etiladi. Nashrdan keyingi dastlabki 24 soatda kontent odatda umumiy obunachilar sonining 5.71% ini tashkil etuvchi reaksiyalarni to‘playdi.
- Post qamrovi: Har bir post o‘rtacha 2 622 marta ko‘riladi; birinchi sutkada odatda 1 258 ta ko‘rish yig‘iladi.
- Reaksiyalar va o‘zaro ta’sir: Auditoriya faol: har bir postga o‘rtacha 24 ta reaksiya keladi.
- Tematik yo‘nalishlar: Kontent css, браузер, интерфейс, загрузка, api kabi asosiy mavzularga jamlangan.
📝 Tavsif va kontent siyosati
Muallif resursni shaxsiy fikrni ifoda etish maydoni sifatida ta’riflaydi:
“Авторский канал по Frontend разработке.
Ресурсы, гайды, задачи, шпаргалки.
Информация ежедневно пополняется!
Автор: @energy_it
РКН: https://clck.ru/3NJCKs
Реклама на бирже: https://telega.in/c/code_ready”
Yuqori yangilanish chastotasi (oxirgi ma’lumot 11 Iyun, 2026 da olingan) sababli kanal doimo dolzarb va katta qamrovli bo‘lib qoladi. Analitika auditoriya kontent bilan faol hamkorlik qilishini, uni Texnologiyalar & Aralashmalar toifasidagi muhim ta’sir nuqtasiga aylantirishini ko‘rsatadi.
flex и grid элементы по умолчанию не хотят сжиматься меньше своего контента, из-за этого текст может выталкивать соседей и ломать layout:
.title {
overflow: hidden;
text-overflow: ellipsis;
}
Даже с ellipsis элемент может не обрезаться, потому что ему не разрешено сжиматься:
.item {
min-width: 0;
}
Эта строка явно разрешает элементу ужиматься по доступному пространству, и всё начинает работать как ожидается:
.item {
min-width: 0;
}
Особенно критично для flex и grid-колонок с 1fr, где переполнение встречается чаще всего.
🔥 Если где-то ломается текст или layout — в 50% случаев не хватает именно min-width: 0.
📣 Code Ready | #совет• псевдоэлемент ::before создаёт увеличенный слой внутри кнопки; • форма волны формируется через border-radius; • изначально слой расположен ниже кнопки и скрыт; • при :hover волна поднимается вверх, создавая эффект заполнения.Так можно добавить акцент CTA-кнопкам или карточкам без сложной анимации и без JS. 📣 Code Ready | #фишка
navigator.sendBeacon.
Метод ставит данные в очередь на отправку и не блокирует закрытие страницы.
Базовый пример:
navigator.sendBeacon('/analytics', JSON.stringify({
event: 'page_close'
}));
Метод принимает URL и данные. Запрос отправляется методом POST.
Если нужно явно указать Content-Type: application/json, лучше передать Blob:
navigator.sendBeacon(
'/analytics',
new Blob(
[JSON.stringify({ event: 'page_close' })],
{ type: 'application/json' }
)
);
Пример 1 — отправка при скрытии страницы:
document.addEventListener('visibilitychange', () => {
if (document.visibilityState === 'hidden') {
navigator.sendBeacon('/analytics', JSON.stringify({
event: 'session_end',
time: Date.now()
}));
}
});
visibilitychange часто используют для отправки последних метрик перед уходом пользователя. Обычно это работает стабильнее, чем beforeunload.
Пример 2 — отправка FormData:
const data = new FormData();
data.append('event', 'scroll_depth');
data.append('value', 80);
navigator.sendBeacon('/analytics', data);
Можно отправлять строки, FormData, Blob, URLSearchParams и некоторые бинарные типы данных.
Пример 3 — проверка:
const accepted = navigator.sendBeacon('/analytics', JSON.stringify({
event: 'leave'
}));
console.log('Beacon accepted:', accepted);
Метод возвращает true, если браузер принял данные в очередь на отправку. Это не гарантия доставки, но означает, что отправка была запланирована браузером.
🔥 Если нужен ответ сервера, кастомные заголовки или полный контроль над запросом, можно использовать fetch с опцией keepalive.
📣 Code Ready | #практика.scroll::after {
position: absolute;
right: 0;
width: 40px;
background: linear-gradient(...);
}
Но это создаёт лишние слои, проблемы с pointer-events и иногда ломает клики.
Есть другой способ — использовать CSS-маску:
.scroll {
mask-image: linear-gradient(to right,
transparent,
black 40px,
black calc(100% - 40px),
transparent
);
}
mask-image управляет прозрачностью элемента, а не рисует поверх него слой.
Чёрный цвет = полностью видимый контент
Прозрачный = плавное исчезновение.
Это хорошо работает для горизонтальных списков:
.scroll {
display: flex;
overflow-x: auto;
mask-image: linear-gradient(to right,
transparent,
black 40px,
black calc(100% - 40px),
transparent
);
}
🔥 В итоге получаем нативный fade-эффект без псевдоэлементов, без лишних слоёв и без JS.
📣 Code Ready | #советcursor: pointer; делает курсор в виде руки — это сигнализирует, что элемент кликабельный. А cursor: none; полностью скрывает курсор.
На картинке — 16 популярных значений свойства cursor.
Сохрани, чтобы не искать в документации каждый раз!
📣 Code Ready | #ресурсыborder выглядит слишком просто. В этом приёме рамка создаётся отдельным слоем с градиентом.
Как работает:
• псевдоэлемент ::before создаёт слой градиентной рамки; • inset расширяет его за пределы блока, формируя контур; • border-radius: inherit сохраняет форму карточки; • при наведении меняется яркость и масштаб рамки.Это простой способ добавить акцент и глубину интерфейсным элементам без дополнительных обёрток и изображений. 📣 Code Ready | #фишка
Оставляю ссылочку: GitHub 📱📣 Code Ready | #репозиторий
matchMedia() — Web API, позволяющий проверять и отслеживать media queries напрямую из JavaScript. Это помогает синхронизировать поведение JS-кода с CSS-адаптивностью.
Функция возвращает объект MediaQueryList, содержащий результат проверки media query.
Базовое использование:
const media = window.matchMedia('(max-width: 768px)');
console.log(media.matches);
matches — boolean, показывающий соответствует ли текущий viewport заданному media query.
Пример 1 — проверка условия:
if (window.matchMedia('(prefers-color-scheme: dark)').matches) {
document.body.classList.add('dark-theme');
}
Так можно адаптировать поведение интерфейса под системные настройки пользователя.
Пример 2 — отслеживание изменения media query:
const media = window.matchMedia('(max-width: 768px)');
media.addEventListener('change', e => {
console.log('mobile:', e.matches);
});
Событие change срабатывает при изменении состояния media query.
Это позволяет реагировать на изменение состояния media query без использования window.resize.
Пример 3 — адаптация логики интерфейса:
const media = window.matchMedia('(max-width: 600px)');
function updateLayout(mql) {
if (mql.matches) {
enableMobileLayout();
} else {
enableDesktopLayout();
}
}
updateLayout(media);
media.addEventListener('change', updateLayout);
Обработчик сначала вызывается вручную для установки начального состояния, затем автоматически при изменении media query.
Пример 4 — учет пользовательских настроек доступности:
const motion = window.matchMedia('(prefers-reduced-motion: reduce)');
if (motion.matches) {
disableAnimations();
}
Media queries позволяют учитывать пользовательские настройки доступности.
Пример 5 — отслеживание ориентации экрана:
const orientation = window.matchMedia('(orientation: portrait)');
orientation.addEventListener('change', e => {
console.log('portrait:', e.matches);
});
matchMedia используется для: адаптивной логики интерфейса, синхронизации JavaScript и CSS media queries, учета пользовательских настроек доступности и оптимизации поведения UI на разных устройствах.
🔥 matchMedia — удобный способ проверять и отслеживать media queries напрямую из JavaScript.
📣 Code Ready | #практика
Endi mavjud! Telegram Tadqiqoti 2025 — yilning asosiy insaytlari 
