fa
Feedback
HTML Academy

HTML Academy

رفتن به کانال در Telegram

Курсы по веб-разработке: вёрстка, программирование, работа и комьюнити. Наш секретный бот @HTMLAcademyKeksobot. Вопросы по обучению @htmlacademy_sales Ролики на YT https://www.youtube.com/@HTMLAcademyTV Ролики на VK https://vkvideo.ru/@htmlacademy

نمایش بیشتر
9 800
مشترکین
-324 ساعت
-67 روز
-7230 روز
جذب مشترکین
ژوئن '26
ژوئن '26
+18
در 0 کانال‌ها
مه '26
+35
در 1 کانال‌ها
Get PRO
آوریل '26
+49
در 0 کانال‌ها
Get PRO
مارس '26
+40
در 3 کانال‌ها
Get PRO
فوریه '26
+37
در 0 کانال‌ها
Get PRO
ژانویه '26
+54
در 0 کانال‌ها
Get PRO
دسامبر '25
+48
در 2 کانال‌ها
Get PRO
نوامبر '25
+44
در 1 کانال‌ها
Get PRO
اکتبر '25
+48
در 0 کانال‌ها
Get PRO
سپتامبر '25
+52
در 1 کانال‌ها
Get PRO
اوت '25
+68
در 1 کانال‌ها
Get PRO
ژوئیه '25
+48
در 1 کانال‌ها
Get PRO
ژوئن '25
+54
در 0 کانال‌ها
Get PRO
مه '25
+64
در 1 کانال‌ها
Get PRO
آوریل '25
+58
در 0 کانال‌ها
Get PRO
مارس '25
+81
در 0 کانال‌ها
Get PRO
فوریه '25
+57
در 0 کانال‌ها
Get PRO
ژانویه '25
+62
در 0 کانال‌ها
Get PRO
دسامبر '24
+58
در 1 کانال‌ها
Get PRO
نوامبر '24
+78
در 1 کانال‌ها
Get PRO
اکتبر '24
+95
در 0 کانال‌ها
Get PRO
سپتامبر '24
+52
در 1 کانال‌ها
Get PRO
اوت '24
+41
در 0 کانال‌ها
Get PRO
ژوئیه '24
+25
در 0 کانال‌ها
Get PRO
ژوئن '24
+46
در 1 کانال‌ها
Get PRO
مه '24
+101
در 1 کانال‌ها
Get PRO
آوریل '24
+240
در 3 کانال‌ها
Get PRO
مارس '24
+121
در 2 کانال‌ها
Get PRO
فوریه '24
+138
در 2 کانال‌ها
Get PRO
ژانویه '24
+182
در 6 کانال‌ها
Get PRO
دسامبر '23
+151
در 1 کانال‌ها
Get PRO
نوامبر '23
+224
در 2 کانال‌ها
Get PRO
اکتبر '23
+310
در 1 کانال‌ها
Get PRO
سپتامبر '23
+193
در 0 کانال‌ها
Get PRO
اوت '23
+161
در 0 کانال‌ها
Get PRO
ژوئیه '23
+164
در 0 کانال‌ها
Get PRO
ژوئن '23
+127
در 0 کانال‌ها
Get PRO
مه '23
+127
در 0 کانال‌ها
Get PRO
آوریل '23
+128
در 0 کانال‌ها
Get PRO
مارس '23
+178
در 0 کانال‌ها
Get PRO
فوریه '23
+255
در 0 کانال‌ها
Get PRO
ژانویه '23
+509
در 0 کانال‌ها
Get PRO
دسامبر '22
+614
در 0 کانال‌ها
Get PRO
نوامبر '22
+491
در 0 کانال‌ها
Get PRO
اکتبر '22
+922
در 0 کانال‌ها
Get PRO
سپتامبر '22
+748
در 0 کانال‌ها
Get PRO
اوت '22
+703
در 0 کانال‌ها
Get PRO
ژوئیه '22
+514
در 0 کانال‌ها
Get PRO
ژوئن '22
+653
در 0 کانال‌ها
Get PRO
مه '22
+423
در 0 کانال‌ها
Get PRO
آوریل '22
+572
در 0 کانال‌ها
Get PRO
مارس '22
+819
در 0 کانال‌ها
Get PRO
فوریه '22
+234
در 0 کانال‌ها
Get PRO
ژانویه '22
+210
در 0 کانال‌ها
Get PRO
دسامبر '21
+301
در 0 کانال‌ها
Get PRO
نوامبر '21
+242
در 0 کانال‌ها
Get PRO
اکتبر '21
+259
در 0 کانال‌ها
Get PRO
سپتامبر '21
+200
در 0 کانال‌ها
Get PRO
اوت '21
+244
در 0 کانال‌ها
Get PRO
ژوئیه '21
+298
در 0 کانال‌ها
Get PRO
ژوئن '21
+328
در 0 کانال‌ها
Get PRO
مه '21
+333
در 0 کانال‌ها
Get PRO
آوریل '21
+414
در 0 کانال‌ها
Get PRO
مارس '21
+525
در 0 کانال‌ها
Get PRO
فوریه '21
+521
در 0 کانال‌ها
Get PRO
ژانویه '21
+471
در 0 کانال‌ها
Get PRO
دسامبر '20
+7 426
در 0 کانال‌ها
تاریخ
رشد مشترکین
اشارات
کانال‌ها
10 ژوئن0
09 ژوئن+2
08 ژوئن+2
07 ژوئن+2
06 ژوئن+1
05 ژوئن+1
04 ژوئن+3
03 ژوئن+3
02 ژوئن+4
01 ژوئن0
پست‌های کانال
Правила в CSS можно вкладывать друг в друга — как в Sass, только без компиляции и зависимостей. Псевдоклассы, дочерние селект
Правила в CSS можно вкладывать друг в друга — как в Sass, только без компиляции и зависимостей. Псевдоклассы, дочерние селекторы и медиазапросы лежат рядом с базовыми стилями компонента, а не разбросаны по файлу. Нативно — с 2023 года: Chrome 112+, Firefox 117+, Safari 16.5+. Ключевой символ — &, ссылка на родительский селектор. &:hover превращается в .btn:hover, &.is-active — в .btn.is-active, а .dark & ставит .btn внутрь .dark. Без & вложенный селектор читается как потомок через пробел. Ещё тонкость для отладки: вложенные селекторы по специфичности считаются как внутри :is() — вес берётся от самого тяжёлого аргумента родителя. На простых стилях незаметно, на запутанных стоит помнить. Зато @media, @layer и @container работают прямо внутри правила: брейкпоинты живут рядом с компонентом, а не в хвосте файла. В статье можно покрутить живой пример. #css #baseline 👾 Читать статью

2
Поставили инструмент глобально через npm install -g, попользовались — и забыли удалить. За пару лет таких пакетов набираются
Поставили инструмент глобально через npm install -g, попользовались — и забыли удалить. За пару лет таких пакетов набираются десятки, разных версий, и они начинают конфликтовать. npx запускает пакет прямо из реестра npm, ничего не устанавливая глобально. Создать проект на Vite — npx create-vite my-app. Та же история со статическим сервером (npx serve .) или прогоном Prettier по всему проекту (npx prettier --write .): запустили и работаете, в npm -g ничего не осело. Внутри npx идёт по трём адресам: сначала node_modules/.bin в проекте, потом временный кеш, и только затем реестр. Нашёл локально или в кеше — оттуда и запустит, лишнего не качает. Версию можно зафиксировать через @, например npx prettier@2 — пригодится, когда надо воспроизвести чужую ошибку или проверить старый релиз. #npm #tools В статье это всё на интерактивном примере: нажимаете команду и видите, что происходит. 🔄 Читать статью
498
3
Сегодня последний день скидки на курс «Vite 8». На курсе соберёте проект на Vite с нуля: настройка стилей и препроцессоров, т
Сегодня последний день скидки на курс «Vite 8». На курсе соберёте проект на Vite с нуля: настройка стилей и препроцессоров, тесты в Vitest, деплой через GitHub Actions и готовый рецепт миграции с Gulp и Webpack. Скидка 60% по промокоду VITE60 — до конца дня. С понедельника курс по обычной цене. ⚡ Смотреть программу
494
4
Оффер мечты или что предлагает Maxis выпускникам Максим Самарцев, директор Maxis, рассказал, какая зарплата ждёт выпускников
Оффер мечты или что предлагает Maxis выпускникам Максим Самарцев, директор Maxis, рассказал, какая зарплата ждёт выпускников совместной программы обучения фронтенду. Ответ — в клипе. Запись эфира: смотреть на YouTube | смотреть в VK ⚡ Программа обучения
728
5
Vite 8 стартует сервер разработки за секунду, показывает правки на лету и собирает продакшен до 10–30 раз быстрее прошлой вер+2
Vite 8 стартует сервер разработки за секунду, показывает правки на лету и собирает продакшен до 10–30 раз быстрее прошлой версии. На скорость повлияла смена движка: esbuild для разработки и Rollup для сборки заменил Rolldown, единый сборщик на Rust поверх парсера Oxc. Конфиг? Для типового проекта его можно не писать. У Vite разумные значения по умолчанию. Vite — фактический стандарт сборки фронтенда: на нём работают Vue, SvelteKit, Nuxt и Astro. После отказа от Create React App его рекомендует и команда React (первый в списке сборщиков). Курс «Vite 8» это шесть разделов от нулевой конфигурации до деплоя на GitHub Pages через GitHub Actions. Внутри настройка стилей и препроцессоров, оптимизация графики, тесты в Vitest и отдельный раздел про миграцию с Gulp и Webpack. Курс по Vite полностью на русском языке с практикой и эталонными решениями. #htmlacademy #levelup В эти выходные, 6 и 7 июня, курс «Vite 8» можно будет взять со скидкой 60% по промокоду VITE60 — только два дня и только на этот курс. 📎 Смотреть программу
538
6
Пока Кекс сажал редиску, нейросеть придумала объяснять CSS-селекторы через рейтузы. И знаете, заходит. Пояс — это .reituzy__w+5
Пока Кекс сажал редиску, нейросеть придумала объяснять CSS-селекторы через рейтузы. И знаете, заходит. Пояс — это .reituzy__waistband, а :not(.patched) — те рейтузы, до которых заплатка пока не добралась. Чем точнее адрес, тем чище CSS. Кажется, спецификация ещё никогда не выглядела так по-домашнему. Листайте карточки, их шесть. Пятничная рубрика нейрослопа: объясняем HTML и CSS понятно и с юмором. А какой селектор для рейтуз придумали бы вы?
796
7
Переключаться на браузер ради каждой проверки вёрстки, искать путь к файлу вручную, переименовывать парный тег отдельно — мел
Переключаться на браузер ради каждой проверки вёрстки, искать путь к файлу вручную, переименовывать парный тег отдельно — мелкая рутина, которая съедает время. Расширения VS Code её убирают. Три из подборки: 📎 HTML Preview — предпросмотр разметки прямо в редакторе, без переключения на браузер. 📎 Live Server — перезагружает страницу автоматически после правок в HTML, CSS или JavaScript. 📎 CSS Peek — открывает правила CSS из файла HTML через «Перейти к определению». Ещё семь — Prettier, Colorize, Auto Rename Tag и другие — со ссылками на установку в статье. Сохраните, чтобы настроить редактор на выходных. #tools #vscode 👉🏻 Читать статью
760
8
Присваиваете объект через = — и получаете вторую ссылку на тот же объект. Меняете «копию» — меняется оригинал. spread и Objec
Присваиваете объект через = — и получаете вторую ссылку на тот же объект. Меняете «копию» — меняется оригинал. spread и Object.assign() спасают только частично: копируют первый уровень, а вложенные объекты и массивы остаются общими. Долгое время глубокую копию собирали через JSON.parse(JSON.stringify(obj)). Способ рабочий, но теряет данные: Date превращается в строку, функции и undefined исчезают, Map становится пустым объектом. structuredClone() делает полную независимую копию и корректно обрабатывает Date, Map, Set, ArrayBuffer, RegExp и другие встроенные типы. Функции и узлы DOM клонировать не получится — будет DataCloneError. Доступен во всех актуальных браузерах и в Node.js с 17-й версии. В статье — интерактивный пример: нажимаете кнопку и видите, как ведут себя =, spread и structuredClone() на одном объекте. #js #clone 🔴 Читать статью
800
9
В последней строке заголовка остаётся одно слово, и весь блок смотрится неаккуратно. Раньше это правили руками — неразрывные
В последней строке заголовка остаётся одно слово, и весь блок смотрится неаккуратно. Раньше это правили руками — неразрывные пробелы, мягкие переносы. Теперь браузер берёт работу на себя. text-wrap: balance выравнивает строки заголовка по длине — для блоков до шести строк. text-wrap: pretty убирает «висячее» слово в конце параграфа и работает на тексте любой длины. Оба значения — прогрессивное улучшение. balance поддерживается с Chrome 114, Firefox 121 и Safari 17.4; pretty появился позже — в Chrome 117 и Firefox 122. Там, где поддержки нет, текст переносится как раньше. #css #webdev В статье — интерактивный пример: переключаете режимы и сразу видите разницу. 🎥 Читать статью
704
10
Пояснение 👇 :has() — реляционный псевдокласс. Он принимает относительный селектор: тот, что начинается с комбинатора >, +, ~ или пробела (комбинатор потомка по умолчанию). Поэтому :has() смотрит вперёд по дереву — на потомков и следующих соседей. Селектор form:has(input:invalid) подсветит саму форму, если у неё среди потомков есть невалидный <input>. А form input:invalid сработает иначе: выберет сам <input>, а форма останется без выделения. Селектор :contains() использовался в jQuery; в действующей спецификации CSS такого псевдокласса нет. Поддержка :has() стала Baseline Newly Available в декабре 2023 года.
776
11
🤔 Загадка от Кекса №4 Дизайнер просит: формы, в которых есть хоть один невалидный <input>, должны получить красную рамку. Какой селектор справится без помощи JavaScript?
730
12
Иногда HTTP-сервер нужен на пять минут — отдать клиенту статический билд на проверку или открыть вёрстку с мобильного по лока
Иногда HTTP-сервер нужен на пять минут — отдать клиенту статический билд на проверку или открыть вёрстку с мобильного по локальной сети. Поднимать ради этого Vite или Nginx — избыточно: первый рассчитан на полный цикл разработки, второй требует своего конфига. http-server запускается через npx http-server и работает сразу — раздаёт текущую папку на порту 8080. Другой порт, CORS-заголовки, автооткрытие браузера, отключение кеша на время разработки — всё это флаги. Никакого конфигурационного файла или установки в проект ему не нужно. Бонус: сервер доступен и по локальному IP — удобно открывать страницу со смартфона для проверки адаптива. #npm #tools 🎲 Читать статью
783
13
Всю неделю мы разбирали по частям одно и то же. Войти джуном стало сложнее, потому что работу с нейросетями ждут почти везде.
Всю неделю мы разбирали по частям одно и то же. Войти джуном стало сложнее, потому что работу с нейросетями ждут почти везде. Вайбкодинг выручает на типовых задачах и упирается в потолок на нестандартных. А без базы, по которой видно собственные ошибки, ИИ копит их быстрее, чем вы успеваете замечать. Сходится всё в одном: нейросеть усиливает того, кто понимает код, и подводит того, кто на неё только надеется. Поэтому в «Нейрофронтендере» сначала идёт инженерная часть — вёрстка, JavaScript, архитектура, React, — и только пятым разделом работа с ИИ-агентами, поверх уже собранной базы. Сегодня, 31 мая, скидка 67% действует последний день. Напишите в Телеграме или MAX, чтобы зафиксировать скидку. Оплатить успеете позже.
710
14
Исследование: Kruger & Dunning, 1999. «Unskilled and Unaware of It» — Journal of Personality and Social Psychology. В 1999 го
Исследование: Kruger & Dunning, 1999. «Unskilled and Unaware of It» — Journal of Personality and Social Psychology. В 1999 году Джастин Крюгер и Дэвид Даннинг описали закономерность: чтобы трезво оценить свою компетентность, нужна та же компетентность, которой как раз не хватает. Поэтому свои пробелы хуже всего видит тот, у кого их больше. С нейросетью этот разрыв проявляется особенно ярко. Вы пишете промпт, получаете рабочий компонент, чувствуете прогресс. А потом — баг, который модель не чинит с третьей попытки, и выясняется, что объяснить, почему код не работает, нечем. Дальше всё встаёт. Надёжнее всего страхует от этого база, по которой вы видите собственные ошибки. С ней понятно, что предлагает модель, и первый нестандартный баг перестаёт быть тупиком. На этом построена программа «Нейрофронтендера»: инженерный фундамент и практика стоят раньше агентных инструментов. Сегодня предпоследний день скидки 67%, до 31 мая включительно. Записаться в Телеграме Записаться через MAX
711
15
«Если непонятно — красавчик» Так Максим Самарцев, директор Maxis, описывает поведение, за которое готов взять выпускника совм
«Если непонятно — красавчик» Так Максим Самарцев, директор Maxis, описывает поведение, за которое готов взять выпускника совместной программы. Для рынка, где собеседования давно превратились в гонку правильных ответов, это звучит контринтуитивно. В клипе — как у Maxis устроена встреча с кандидатом и почему стандартный сценарий «выглядеть умнее» здесь не работает. Запись эфира: смотреть на YouTube | смотреть в VK 📎 Программа обучения
666
16
Git и GitHub ➿➿➿➿➿➿➿➿➿➿➿➿ add, commit, push, pull — на этих командах держится почти вся ежедневная работа с Git. А rebase, пе+2
Git и GitHub ➿➿➿➿➿➿➿➿➿➿➿➿ add, commit, push, pull — на этих командах держится почти вся ежедневная работа с Git. А rebase, перенос коммитов между ветками или восстановление «потерянного» так и остаются для многих белым пятном. Отсюда и привычки. Конфликты разрешаются наугад, историю правят с опаской, а после неудачного rebase кажется, что всё сломано — хотя на деле чинится в пару команд. Сколько раз вы откладывали rebase на «потом»? Курс «Git и GitHub» закрывает этот разрыв — между «умею коммитить» и «понимаю, что происходит в репозитории, и собираю историю такой, какой задумал». Программа идёт по нарастающей. Сначала ставите и настраиваете Git, поднимаете локальный и удалённый репозитории, связываете их. Дальше ветки: создаёте, переключаете, сливаете, разрешаете конфликты, разбираете модели ветвления. Сравниваете версии и отдельные файлы, откладываете и отменяете изменения. А в конце — rebase и cherry-pick, восстановление коммитов через reflog (та самая команда, что отматывает почти любую операцию, включая слияние), подключение по SSH и подпись коммитов через GPG. #htmlacademy #levelup Первый раздел открыт бесплатно, чтобы оценить подачу и формат. 🎁 Попробовать Git и GitHub
677
17
Кекс снова на даче — он там практически весь май. Сажает редиску. Перед посадкой успел нагенерировать нейросетью пачку карточ+6
Кекс снова на даче — он там практически весь май. Сажает редиску. Перед посадкой успел нагенерировать нейросетью пачку карточек про фронтенд и сказал, что это важно для понимания профессии. Спорить с котом, у которого лопата, мы не стали. Выглядят убедительно. Местами — полная дичь, но нейросеть умеет звучать уверенно. Собственно, про это у нас вся неделя и была: модель выдаёт правдоподобное, а где правда — видит тот, кто разобрался в профессии. P.S. Если после Кексовых карточек захотите разобраться во фронтенде всерьёз — для этого есть «Нейрофронтендер». Показали Кексу лендинг, он сказал «мяу». Хороший знак. Скидка 67% до 31 мая — пока он не вернулся с грядок. Пишите в Telegram или MAX.
814
18
Frontend Mix × HTML Academy Сегодня вечером наш Лёша садится за круглый стол — поговорить про ИИ во фронтенде. Зовём смотреть
Frontend Mix × HTML Academy Сегодня вечером наш Лёша садится за круглый стол — поговорить про ИИ во фронтенде. Зовём смотреть вместе. Начало в 21:15 по Москве. Тема — как изменились требования к фронтендеру в 2026 году. Вопрос ребром: за что разработчику платят теперь, когда написание кода стало дешёвым, и куда сместилась ценность? И заодно — что массовое использование ИИ за год-два делает с кодовой базой и экспертизой команды. ⌛ Смотреть онлайн и бесплатно → https://events.yoomoney.ru/frontend-mix_2026 Вопросы к круглому столу пишите сюда — Лёша читает и ответит в комментариях. А кто уже на митапе — ловите нас вживую: круглый стол в финале, застать можно и до, и после.
728
19
Войти в разработку джуном стало ощутимо сложнее, чем пару лет назад. Команды всё чаще ждут, что разработчик уверенно работает
Войти в разработку джуном стало ощутимо сложнее, чем пару лет назад. Команды всё чаще ждут, что разработчик уверенно работает с нейросетями. Для многих это уже базовое требование. Мы это часто слышали от работодателей в наших эфирах. Но есть нюанс. Нейросети регулярно выдают правдоподобный код с ошибками, и чтобы их поймать, нужно понимать, что происходит под капотом: почему компонент ререндерится лишний раз и за что на самом деле отвечает замыкание. Без этой базы ИИ ускоряет накопление ошибок, которые всплывут на ревью. В профессии «Нейрофронтендер» фундамент идёт первым: HTML и CSS, JavaScript, архитектура клиентских приложений, React. Отдельный модуль по ИИ-агентам стоит в конце — когда уже есть чем оценивать ответы модели и куда их встраивать. До 31 мая включительно на профессию действует скидка 67%. Записаться в Телеграме Записаться через MAX
719
20
Пояснение ⬇️ git reset --soft HEAD~1 сдвигает указатель текущей ветки на один коммит назад, индекс и рабочую директорию не трогает. Все изменения из снятого коммита остаются в индексе и готовы к новому git commit. Этот сценарий безопасен только до пуша — на общей ветке --soft потребует force-push и расстроит коллег. Флаг --hard тоже сдвинет указатель, но заодно приведёт индекс и рабочую директорию в состояние целевого коммита, и текущие изменения будут потеряны. Хотя снятые коммиты ещё около 90 дней доступны через git reflog. А git revert HEAD решает задачу иначе: создаёт новый коммит, который отменяет последний, оставляя оба в истории. Для уже запушенного коммита — именно этот вариант.
670