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

Автор: @energy_it

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

Реклама на бирже: https://telega.in/c/code_ready
Download Telegram
📂 Напоминалка по CSS positioning!

Например, position: relative позволяет смещать элемент относительно его обычного положения, а position: absolute — позиционировать элемент внутри ближайшего спозиционированного родителя.

На картинке — 5 значений position, которые нужно уверенно понимать при верстке и работе с layout’ами.

Сохрани, чтобы не забыть!

📣 Code Ready | #ресурсы
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥17👍12🤝81
Утилита для работы с URL-параметрами!

Вынесение фильтров и состояния в URL улучшает навигацию и восстановление страницы. Ниже — компактный инструмент для работы с query-строкой.

Разбираем строку запроса в объект:
function parseQuery(query = location.search) {
return Object.fromEntries(new URLSearchParams(query));
}


URLSearchParams
обеспечивает корректную обработку спецсимволов и предсказуемый парсинг — особенно важно при динамических параметрах.

Формируем query-строку из объекта:
function toQuery(obj) {
return "?" + new URLSearchParams(obj).toString();
}


Это упрощает управление состоянием интерфейса и повышает устойчивость навигации.

Читаем параметры: пример, как быстро получить состояние фильтров или любой другой конфигурации из строки URL — удобно при инициализации страницы или восстановлении состояния.
const params = parseQuery("?page=2&sort=asc");
console.log(params);
// → { page: "2", sort: "asc" }


Создаём новый URL:
const next = toQuery({ page: 3, sort: "desc" });
console.log(next);
// → "?page=3&sort=desc"


🔥 Функции подходят для фильтров, пагинации, состояния таблиц, сохранения пользовательских настроек и формирования shareable-ссылок.

📣 Code Ready | #практика
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥13👍12🤝8😁2
🔥168👍8
This media is not supported in your browser
VIEW IN TELEGRAM
👩‍💻 Можно ли анимировать элемент при его первом появлении на странице?

Директива @starting-style позволяет задать начальные стили для элемента в момент его появления на странице.

Как это работает:
Браузер применяет стили из @starting-style только в момент появления элемента;

Затем элемент плавно переходит к основным стилям;

Отлично работает с transition, без JavaScript.


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

📣 Code Ready | #свойство
Please open Telegram to view this post
VIEW IN TELEGRAM
16👍10🤝9
📂 Напоминалка для работы с DOM!

DOM — это то, через что JavaScript управляет HTML: ищет элементы, создаёт новые узлы, вешает события и реагирует на действия пользователя.

На картинке — базовые методы document и node, а также самые часто используемые события мыши, клавиатуры и форм.

Сохрани, чтобы не забыть!

📣 Code Ready | #ресурс
Please open Telegram to view this post
VIEW IN TELEGRAM
18👍13🤝8
👩‍💻 Размечает картинку невидимыми областями!

С помощью тега <area> можно сделать красивую навигацию, разметив обычную картинку областями и указав для них ссылки.

Основные формы областей:
shape="rect" — прямоугольная область;
shape="circle" — круг;
shape="poly" — произвольный многоугольник.


Самые ёмкие в записи формы <area> — прямоугольник и круг, поскольку они требуют меньше всего координат. Если вам плохо от огромного кода, лучше отказаться от произвольных областей.

📣 Code Ready | #атрибут
Please open Telegram to view this post
VIEW IN TELEGRAM
👍15🔥109
This media is not supported in your browser
VIEW IN TELEGRAM
👩‍💻 Знали, что редактор может помогать вам писать код?

GitHub Copilot — анализирует контекст файла и предлагает целые строки, функции и даже блоки логики прямо во время набора. Он понимает JavaScript, комментарии, имена переменных и стиль проекта, подстраивается под то, что уже пишешь.

📣 Code Ready | #vscode
Please open Telegram to view this post
VIEW IN TELEGRAM
🤝17🔥9👍8👎1😁1
📱 Memory & Performance API — контроль памяти и производительности!

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

📣 Code Ready | #шпора
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥1810👍8
👍158🔥7
Что же выведет консоль?
Anonymous Quiz
32%
A
29%
B
33%
C
6%
D
15🤝10🔥7
Определяем, предпочитает ли пользователь уменьшенную анимацию!

Современные ОС позволяют пользователю снизить количество анимаций. Браузер транслирует это предпочтение через media query prefers-reduced-motion, и интерфейс может адаптироваться автоматически.

Проверяем текущее состояние:
const motionMQ = window.matchMedia(
"(prefers-reduced-motion: reduce)"
);

const isReducedMotion = motionMQ.matches;


matches читается синхронно и отражает текущее системное состояние на момент инициализации скрипта.

Реагируем на изменение настройки в системе:
motionMQ.addEventListener("change", ({ matches }) => {
document.documentElement.dataset.motion =
matches ? "reduced" : "full";
});


Событие change срабатывает при изменении системной настройки, без polling и лишней логики.

Применяем режим при загрузке приложения:
document.documentElement.dataset.motion =
isReducedMotion ? "reduced" : "full";


Это позволяет синхронизировать состояние интерфейса с системными настройками пользователя.

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

📣 Code Ready | #практика
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥137👍7
📂 Напоминалка по CSS :nth-child()!

Например, :nth-child(3) выберет третий элемент, :nth-child(even) — все чётные, а :nth-child(5n-1) — элементы по заданному шаблону.

На картинке — наглядная шпаргалка по синтаксису :nth-child(): числа, ключевые слова и формулы, которые чаще всего используются в верстке.

Сохрани, чтобы не забыть!

📣 Code Ready | #ресурсы
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥16👍106🤝1
👩‍💻 UX фокус с :focus-visible!

Очень часто фокус делают так:
button:focus {
outline: none;
}


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

Современный CSS даёт решение:
button:focus-visible {
outline: 2px solid #4da3ff;
}


:focus-visible показывает фокус только тогда, когда он реально нужен: при навигации с клавиатуры, при accessibility-сценариях и не показывает его при клике мышью.

Если элемент получил фокус мышью — стиля не будет.
Если клавиатурой — будет.

Для полного контроля можно добавить:
button:focus {
outline: none;
}


🔥 В итоге никакого лишнего фокуса, интерфейс выглядит профессионально и продуманно.

📣 Code Ready | #совет
Please open Telegram to view this post
VIEW IN TELEGRAM
👍19🤝9🔥8
☕️ Нашёл свежую статью на Хабре о том, как реализовать изменение размера блоков на сайте!

В этой статье:
• Пошагово показывают, как добавить на страницу интерактивное изменение размера элементов;
• Разбирают базовую логику JavaScript-обработчиков и их аналоги для сенсорных экранов;
• Показывают, как аккуратно управлять DOM-событиями и вычислять новые размеры;
• Предоставляют готовое решение, которое можно сразу подключить к вашему проекту и кастомизировать.

🔊 Продолжайте читать на Habr!


📣 Code Ready | #статья
Please open Telegram to view this post
VIEW IN TELEGRAM
14🔥8🤝7😁1
👩‍💻 Указываем направление текста внутри всего документа или отдельного элемента!

Атрибут dir устанавливает направление вывода текста внутри элемента. Действие атрибута наследуется от родительского элемента, но может быть переопределено.

Принимает одно из следующих значений:
• ltr — текст будет написан слева направо. Такое направление текста используется, например, для русского или английского языков;
• rtl — текст будет написан справа налево. Актуально, например, для арабских языков;
• auto — направление текста определяется браузером.


Может быть применён к любому HTML-элементу, но не для всех элементов имеет смысл.

📣 Code Ready | #атрибут
Please open Telegram to view this post
VIEW IN TELEGRAM
22🔥8🤝8
👍23🔥9🤝7
Forwarded from Frontend VK Hub
This media is not supported in your browser
VIEW IN TELEGRAM
console.log('🎄 Time for presents!')

Новый год — время радовать близких людей. Поэтому мы подготовили подарки для наших подписчиков — промокоды на год от Облака Mail и VK Музыки!

Условия участия простые:
🔹подпишитесь на наш канал @frontendhubvk
🔹 нажмите кнопку «Участвовать»
🔹 дождитесь 30 декабря — в этом посте мы выберем случайным образом 6 победителей

В ожидании итогов не забывайте почитать по ссылке информацию об организаторе, правилах и призах. И регулярно есть мандарины!
👎42