
🔥 Заказ на 20+ каналов — шанс выиграть iPhone 16 Pro
Массовые размещения дают просмотры в 2-3 раза дешевле и участие в розыгрыше
Подробнее

РегистрацияВойтиВойти
Скидка 3,5% на первые три заказа
Получите скидку на первые три заказа!
Зарегистрируйтесь и получите скидку 3,5% на первые рекламные кампании — промокод активен 7 дней.
5.3

Frontend разработчик
5.0
27
Интернет технологии
746
11
Библиотека Frontend программиста. Книги, полезные материалы, статьи, новости, уроки по front end/web разработке.
Поделиться
В избранное
Купить рекламу в этом канале
Формат:
keyboard_arrow_down
- 1/24
- 2/48
- 3/72
- 7 дней
- Репост
1 час в топе / 24 часа в ленте
Количество:
keyboard_arrow_down
- 1
- 2
- 3
- 4
- 5
- 8
- 10
- 15
Стоимость публикации:
local_activity
6 363.63₽6 363.63₽local_mall
0.0%
Осталось по этой цене:0
Последние посты канала
imageИзображение не доступно для предпросмотра
3 полезных совета по Tailwind CSS
Tailwind CSS произвел революцию в том, как мы подходим к веб-дизайну, предложив утилитарно-ориентированный фреймворк, который позволяет быстро разрабатывать и легко настраивать интерфейсы. В этом посте мы рассмотрим три менее известных, но очень полезных совета по Tailwind CSS, которые помогут ускорить рабочий процесс и улучшить качество кода.
1. Используйте
size-{n}
для одинаковой ширины и высоты
Вместо того чтобы отдельно задавать ширину и высоту, можно использовать утилиту size-{n}
, если элементу нужны одинаковые размеры.
<!-- Вместо этого -->
<div class="w-12 h-12 bg-blue-500 rounded-full"></div>
<!-- Используйте это -->
<div class="size-12 bg-blue-500 rounded-full"></div>
{}
Этот шорткат удобен для квадратов, кругов и любых элементов, где нужна равная ширина и высота.
2. Применяйте divide-{y/x}-{n}
для равномерного разделения
Когда нужно добавить границы или разделители между дочерними элементами, вместо ручного добавления бордеров каждому ребёнку используйте утилиту divide-{y/x}-{n}
на родительском контейнере. Это гарантирует единообразное разделение и уменьшает количество кода.
<!-- Вместо этого -->
<div>
<div class="py-4 border-b">Item 1</div>
<div class="py-4 border-b">Item 2</div>
<div class="py-4">Item 3</div>
</div>
<!-- Используйте это -->
<div class="divide-y">
<div class="py-4">Item 1</div>
<div class="py-4">Item 2</div>
<div class="py-4">Item 3</div>
</div>
{}
Этот подход особенно полезен для списков, меню и любых макетов, где нужно одинаковое разделение элементов.
3. Используйте произвольные варианты с [&_selector]:
Tailwind CSS позволяет применять стили ко всем совпадающим дочерним элементам через родителя с помощью синтаксиса [&_selector]:
. Это делает HTML чище и удобнее в поддержке.
<!-- Вместо этого -->
<ul>
<li class="mb-2 text-blue-500">Item 1</li>
<li class="mb-2 text-blue-500">Item 2</li>
<li class="mb-2 text-blue-500">Item 3</li>
</ul>
<!-- Используйте это -->
<ul class="[&_li]:mb-2 [&_li]:text-blue-500">
<li>Item 1</li>
<li>Item 2</li>
<li>Item 3</li>
</ul>
{}
Этот метод особенно полезен для единообразного применения стилей к дочерним элементам без необходимости прописывать их каждому отдельно.
👉 @frontend_11223
08:07
18.08.2025
imageИзображение не доступно для предпросмотра
Как добавлять условные свойства объектов в JavaScript
При создании объектов в JavaScript иногда требуется включать определённые свойства только при выполнении конкретных условий. Этот приём можно реализовать с помощью оператора расширения (…) в сочетании с условной логикой. Давайте разберём, как овладеть этим мощным инструментом для более гибкого и динамичного создания объектов.
Проблема статических свойств объектов
Представьте: вы создаёте объект пользователя и хотите добавить разные свойства в зависимости от его статуса. Возможно, он администратор, или у него есть премиум-подписка, или и то, и другое! Как создать объект, который гибко включает или исключает свойства в зависимости от условий?
Решение: условное распространение (Conditional Spreading) в JavaScript
Вот где начинается магия. Мы можем использовать оператор расширения (
…
) вместе с логическим оператором И (&&
), чтобы условно добавлять свойства в объекты JavaScript. Такой подход позволяет создавать чистый и гибкий код, динамически добавляя свойства на основании различных условий.
Разберём это на примере:
const isAdmin = true;
const hasPremium = false;
const user = {
username: 'johndoe',
email: 'john@example.com',
...(isAdmin && { role: 'admin' }),
...(hasPremium && { subscription: 'premium' }),
...((isAdmin || hasPremium) && { specialFeatures:
['dashboard', 'reports'] }),
};
console.log(user);
/*
{
"username": "johndoe",
"email": "john@example.com",
"role": "admin",
"specialFeatures": [
"dashboard",
"reports"
]
}
*/{}
Как работают условные свойства объектов
Выражение &&
в JavaScript вычисляется слева направо.
Если первая часть выражения ложна (falsy), то происходит короткое замыкание — вся конструкция возвращает это ложное значение, а вторая часть даже не вычисляется.
Вот что происходит в нашем примере:
- `isAdmin && {
role: 'admin' }`
: так как isAdmin === true
, в объект добавляется свойство role: 'admin'
.
- `hasPremium &&
{ subscription: 'premium'
}`
: так как hasPremium === false
, это свойство не добавляется.
- `(isAdmin || hasPremium) && { specialFeatures: [...] }`
: условие истинно (потому что isAdmin === true`), поэтому в объект добавляется массив `specialFeatures
.
Профессиональные советы по работе с условными свойствами объектов в JavaScript 🚀
1- Порядок имеет значение: помните, что порядок операций распространения (spread) может влиять на итоговый объект. Более поздние операции перезапишут более ранние при одинаковом ключе.
2- Вопросы производительности: хотя этот приём выглядит чисто и читаемо, будьте осторожны при использовании с большими объектами или в критичных к производительности местах. Каждая операция spread
создаёт новый объект, что может повлиять на производительность при чрезмерном использовании.
3- Отладка условных свойств: при отладке помните, что "ложные" значения (`...false`
, ...null
, `...undefined`
) просто игнорируются, из-за чего некоторые проблемы могут быть неочевидны на первый взгляд.
4- Nullish coalescing: для более продвинутых случаев использования рассмотрите комбинацию этого подхода с оператором объединения с null (??) для задания значений по умолчанию.
const user = {
...someCondition && { prop: valueIfTrue ?? defaultValue }
};{}
Этот приём позволяет создавать объекты чисто и гибко, добавляя свойства динамически на основе различных условий. Он особенно полезен при работе со сложными объектами, которые должны адаптироваться к разным сценариям или типам пользователей.
👉 @frontend_11422
10:31
20.08.2025
10 современных возможностей CSS, которые стоит использовать
Точно так же, как и JavaScript, CSS не пользуется наилучшей репутацией среди (Rails)-разработчиков. И, как и в случае с JavaScript (вспомните Turbo, а также CoffeeScript), у CSS длинная история препроцессоров, постпроцессоров и различных абстракций (например, Tailwind CSS).
И долгое время многие из этих надстроек были действительно необходимы. Трудно представить CSS без вложенных селекторов, не так ли?
Но на дворе 2025 год, и CSS развивается (и будет развиваться!) очень быстрыми темпами. Позади остались времена spacer.gif или создания изображений для каждого угла карточки, чтобы имитировать скруглённые границы.
Если вы какое-то время пренебрегали CSS (например, потому что пользовались Tailwind CSS), ниже я хочу выделить несколько новых возможностей CSS, которые я с удовольствием применяю в некоторых проектах (созданных под эгидой Rails Designer и не только). Хотя я всё ещё люблю использовать Tailwind CSS, понимание и реальное использование самого CSS - крайне важно. Веб строится на (открытых) стандартах, что необходимо для его доступности, поддерживаемости и долгосрочной актуальности.
Min, max and clamp
min()
Соединяя их вместе, так как они перекрываются
/* Keeps buttons from getting too wide on large screens */
.pricing-button {
width: min(300px, 90%);
}
{}
Думайте о min()
как об установке верхнего предела. Оно выберет меньшее из значений. Удобно для того, чтобы элементы не становились слишком большими, при этом оставаясь адаптивными. То есть, пока 90% вычисляется как меньше 300px - используется 90%. Как только результат превышает 300px - используется это значение.
max()
/* Ensures text stays readable even on tiny screens */
.terms-container {
font-size: max(16px, 1.2vw);
}
{}
https://railsdesigner.com/modern-css-overview/
👉 @frontend_11522
12:21
26.08.2025
play_circleВидео недоступно для предпросмотра
CSS-совет 💡
Нет необходимости создавать отдельные версии логотипа в градациях серого для тёмного и светлого режимов.
Это легко делается с помощью CSS-фильтров
👉 @frontend_1
1590
10:50
29.08.2025
play_circleВидео недоступно для предпросмотра
Совет по CSS 💡
Возможно, ты не знал, что можно задать и min-width, и width всего одной строкой кода в CSS
👉 @frontend_1
1153
22:43
04.09.2025
imageИзображение не доступно для предпросмотра
Совет по HTML 💡
Примеры использования элементов thead, tbody и tfoot в HTML
👉 @frontend_1
1096
08:45
05.09.2025
imageИзображение не доступно для предпросмотра
Хотите научиться создавать привлекательные карточки товара без Bootstrap и готовых шаблонов?
📅 9 сентября в 20:00 МСК на открытом уроке мы разберём, как из базовых тегов и CSS-свойств собрать мини-проект, достойный портфолио. Вы увидите, как блок <article> превратить в интерактивную витрину: текст, изображение, кнопка «Купить» и эффекты при наведении.
❗️ Вы поймёте, какие CSS-свойства (margin, padding, background-color, border) отвечают за композицию, а :hover добавит лёгкую анимацию при наведении. В реальном времени создадим карточку, применим шрифты, цвета и узнаем, как обеспечить кросс-браузерность без библиотек и фреймворков.
Урок проходит в преддверие старта курса «JavaScript Developer. Basic» и все участники получат скидку на обучение.
👉 Запишитесь на открытый урок → https://vk.cc/cPepS0
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
1252
10:31
05.09.2025
play_circleВидео недоступно для предпросмотра
Совет по CSS 💡
Знаете ли вы, что можно сделать очень тонкий скроллбар или даже скрыть его, при этом сохранив возможность прокрутки?
Это может помочь сделать интерфейс более аккуратным и менее загромождённым в некоторых случаях
👉 @frontend_1
1023
12:31
08.09.2025
play_circleВидео недоступно для предпросмотра
Совет по CSS 💡
Иногда фавикон отлично смотрится в светлой теме, но выглядит плохо (или вовсе исчезает) в тёмной, и наоборот.
Такие мелкие детали могут портить общее впечатление от сайта.
Вот как это исправить 👆
👉 @frontend_1
422
13:17
13.09.2025
🚀 Подборка Telegram каналов для программистов
Системное администрирование, DevOps 📌
https://t.me/bash_srv Bash Советы
https://t.me/win_sysadmin Системный Администратор Windows
https://t.me/sysadmin_girl Девочка Сисадмин
https://t.me/srv_admin_linux Админские угодья
https://t.me/linux_srv Типичный Сисадмин
https://t.me/devopslib Библиотека девопса | DevOps, SRE, Sysadmin
https://t.me/linux_odmin Linux: Системный администратор
https://t.me/devops_star DevOps Star (Звезда Девопса)
https://t.me/i_linux Системный администратор
https://t.me/linuxchmod Linux
https://t.me/sys_adminos Системный Администратор
https://t.me/tipsysdmin Типичный Сисадмин (фото железа, было/стало)
https://t.me/sysadminof Книги для админов, полезные материалы
https://t.me/i_odmin Все для системного администратора
https://t.me/i_odmin_book Библиотека Системного Администратора
https://t.me/i_odmin_chat Чат системных администраторов
https://t.me/i_DevOps DevOps: Пишем о Docker, Kubernetes и др.
https://t.me/sysadminoff Новости Линукс Linux
1C разработка 📌
https://t.me/odin1C_rus Cтатьи, курсы, советы, шаблоны кода 1С
https://t.me/DevLab1C 1С:Предприятие 8
https://t.me/razrab_1C 1C Разработчик
https://t.me/buh1C_prog 1C Программист | Бухгалтерия и Учёт
https://t.me/rabota1C_rus Вакансии для программистов 1С
Программирование C++📌
https://t.me/cpp_lib Библиотека C/C++ разработчика
https://t.me/cpp_knigi Книги для программистов C/C++
https://t.me/cpp_geek Учим C/C++ на примерах
Программирование Python 📌
https://t.me/pythonofff Python академия.
https://t.me/BookPython Библиотека Python разработчика
https://t.me/python_real Python подборки на русском и английском
https://t.me/python_360 Книги по Python
Java разработка 📌
https://t.me/BookJava Библиотека Java разработчика
https://t.me/java_360 Книги по Java Rus
https://t.me/java_geek Учим Java на примерах
GitHub Сообщество 📌
https://t.me/Githublib Интересное из GitHub
Базы данных (Data Base) 📌
https://t.me/database_info Все про базы данных
Мобильная разработка: iOS, Android 📌
https://t.me/developer_mobila Мобильная разработка
https://t.me/kotlin_lib Подборки полезного материала по Kotlin
Фронтенд разработка 📌
https://t.me/frontend_1 Подборки для frontend разработчиков
https://t.me/frontend_sovet Frontend советы, примеры и практика!
https://t.me/React_lib Подборки по React js и все что с ним связано
Разработка игр 📌
https://t.me/game_devv Все о разработке игр
Библиотеки 📌
https://t.me/book_for_dev Книги для программистов Rus
https://t.me/programmist_of Книги по программированию
https://t.me/proglb Библиотека программиста
https://t.me/bfbook Книги для программистов
БигДата, машинное обучение 📌
https://t.me/bigdata_1 Big Data, Machine Learning
Программирование 📌
https://t.me/bookflow Лекции, видеоуроки, доклады с IT конференций
https://t.me/rust_lib Полезный контент по программированию на Rust
https://t.me/golang_lib Библиотека Go (Golang) разработчика
https://t.me/itmozg Программисты, дизайнеры, новости из мира IT
https://t.me/php_lib Библиотека PHP программиста 👨🏼💻👩💻
https://t.me/nodejs_lib Подборки по Node js и все что с ним связано
https://t.me/ruby_lib Библиотека Ruby программиста
https://t.me/lifeproger Жизнь программиста. Авторский канал.
QA, тестирование 📌
https://t.me/testlab_qa Библиотека тестировщика
Шутки программистов 📌
https://t.me/itumor Шутки программистов
Защита, взлом, безопасность 📌
https://t.me/thehaking Канал о кибербезопасности
https://t.me/xakep_2 Хакер Free
Книги, статьи для дизайнеров 📌
https://t.me/ux_web Статьи, книги для дизайнеров
Математика 📌
https://t.me/Pomatematike Канал по математике
https://t.me/phis_mat Обучающие видео, книги по Физике и Математике
https://t.me/matgeoru Математика | Геометрия | Логика
Excel лайфхак📌
https://t.me/Excel_lifehack
https://t.me/mir_teh Мир технологий (Technology World)
Вакансии 📌
https://t.me/sysadmin_rabota Системный Администратор
https://t.me/progjob Вакансии в IT
318
13:48
13.09.2025
close
С этим каналом часто покупают
Отзывы канала
keyboard_arrow_down
- Добавлен: Сначала новые
- Добавлен: Сначала старые
- Оценка: По убыванию
- Оценка: По возрастанию
5.0
0 отзыва за 6 мес.
k
**ylov.v4d@*****.com
на сервисе с мая 2024
02.08.202414:50
5
Четкое соблюдение ТЗ
Показать еще
Лучшие в тематике
Новинки в тематике
keyboard_double_arrow_left
shopping_cart
Каналов:
0
Подписчиков:
0
Просмотров:
lock_outline
Итого:
0.00₽
Перейти в корзину
Очистить корзину
Вы действительно хотите очистить корзину?
Вы снова сможете добавить каналы в корзину из каталога
Вы снова сможете добавить каналы в корзину из каталога
Очистить
Отменить
Комментарий