This media is not supported in your browser
VIEW IN TELEGRAM
Создание липкого заголовка в СSS
Блоки с «липким» позиционированием ведут себя как
Пока блок не достиг указанного расстояния от края окна браузера, он ведёт себя как относительно спозиционированный. Когда блок достигнет этой точки, то станет вести себя, как будто мы указали position: fixed
Когда таких заголовков несколько, они накладываются друг на друга, и пользователю виден последний из них
➡️ @FrontendPortal | #CSS #tutorial
Блоки с «липким» позиционированием ведут себя как
position: relative и position: fixed одновременноПока блок не достиг указанного расстояния от края окна браузера, он ведёт себя как относительно спозиционированный. Когда блок достигнет этой точки, то станет вести себя, как будто мы указали position: fixed
Когда таких заголовков несколько, они накладываются друг на друга, и пользователю виден последний из них
Please open Telegram to view this post
VIEW IN TELEGRAM
👍45❤17🔥7💯1
This media is not supported in your browser
VIEW IN TELEGRAM
Действительно классный гайд по тому, как прокачать навык работы с дейтпикерами в JS
Ты найдёшь примеры, понятные объяснения и отличный визуальный формат, который помогает разобраться во всех тонкостях создания дейтпикеров на чистом JavaScript.
Читайте здесь👍
➡️ @FrontendPortal | #article
Ты найдёшь примеры, понятные объяснения и отличный визуальный формат, который помогает разобраться во всех тонкостях создания дейтпикеров на чистом JavaScript.
Читайте здесь
Please open Telegram to view this post
VIEW IN TELEGRAM
👍24❤12💯3🔥2
This media is not supported in your browser
VIEW IN TELEGRAM
Ленивая загрузка автоматически воспроизводимых видео, которые находятся ниже первого экрана
Установите
Посмотреть это в действии: тык
➡️ @FrontendPortal | #tip by Shripal Soni
Установите
preload="none" и удалите атрибут autoplay у видео, чтобы оно не загружалось по умолчанию. Затем, используя API Intersection Observer, мы можем воспроизводить видео, когда оно становится видимым в области просмотраПосмотреть это в действии: тык
Please open Telegram to view this post
VIEW IN TELEGRAM
👍37❤15🔥5
This media is not supported in your browser
VIEW IN TELEGRAM
ThiingsGrid
Высокопроизводительный компонент бесконечной прокрутки для React, который обеспечивает плавные взаимодействия через тач или мышь с инерционным скроллингом.
Подходит для отображения больших наборов данных в виде сетки с кастомными рендерами ячеек✌️
GitHub: thiings-grid
➡️ @FrontendPortal | #resourse
Высокопроизводительный компонент бесконечной прокрутки для React, который обеспечивает плавные взаимодействия через тач или мышь с инерционным скроллингом.
Подходит для отображения больших наборов данных в виде сетки с кастомными рендерами ячеек
GitHub: thiings-grid
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥16❤9💊3👍1
This media is not supported in your browser
VIEW IN TELEGRAM
Broadcast Channel API
Broadcast Channel API позволяет контекстам браузера (browser contexts) обмениваться данными друг с другом. К браузерным контекстам относятся такие элементы, как окно, вкладка, iframe и т.д.
По причинам безопасности контексты, обменивающиеся данными, должны принадлежать одному источнику (same origin). Один источник означает одинаковый протокол, домен и порт
➡️ @FrontendPortal | #js
Broadcast Channel API позволяет контекстам браузера (browser contexts) обмениваться данными друг с другом. К браузерным контекстам относятся такие элементы, как окно, вкладка, iframe и т.д.
По причинам безопасности контексты, обменивающиеся данными, должны принадлежать одному источнику (same origin). Один источник означает одинаковый протокол, домен и порт
Please open Telegram to view this post
VIEW IN TELEGRAM
❤30👍14🔥6
This media is not supported in your browser
VIEW IN TELEGRAM
Интерактивный конструктор border-radius
Нашёл сайт, где можно поэкспериментировать с border-radius и скопировать готовые значения в свой CSS-код
Генерируются сразу 8 значений для border-radius. Также можно настроить размер элемента
Тестируем здесь✌️
➡️ @FrontendPortal | #resourse
Нашёл сайт, где можно поэкспериментировать с border-radius и скопировать готовые значения в свой CSS-код
Генерируются сразу 8 значений для border-radius. Также можно настроить размер элемента
Тестируем здесь
Please open Telegram to view this post
VIEW IN TELEGRAM
❤36🔥21👍4💯3
This media is not supported in your browser
VIEW IN TELEGRAM
Наконец-то! Node теперь может выполнять TypeScript-файлы
Стабильно, без конфигурации и без зависимостей
Доступно начиная с версий 22.18.0 и 25.2.0.
➡️ @FrontendPortal
Стабильно, без конфигурации и без зависимостей
Доступно начиная с версий 22.18.0 и 25.2.0.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤61🔥48👍16🌚6🤔4😁2🤯2🏆2😎2
This media is not supported in your browser
VIEW IN TELEGRAM
HTML Tip: Самый простой способ отключить несколько элементов формы
Мы можем установить атрибут
➡️ @FrontendPortal | #tip by Shripal Soni
Мы можем установить атрибут
disabled на элемент <fieldset>, чтобы автоматически отключить все вложенные элементы формы.Please open Telegram to view this post
VIEW IN TELEGRAM
👍44❤16
Cвойство object-fit
Свойство, которое позволяет управлять тем, как картинка
По своему поведению очень похоже на свойство
➡️ @FrontendPortal | #CSS #OldButGold
Свойство, которое позволяет управлять тем, как картинка
<img> или видео <video> будет подстраиваться под заданные размеры.По своему поведению очень похоже на свойство
background-size для фоновых изображенийPlease open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
❤39👍14😁2🔥1🤝1
This media is not supported in your browser
VIEW IN TELEGRAM
Определяем, когда пользователь переключает вкладки браузера и меняем favicon
Этот трюк можно реализовать с помощью Page Visibility API
➡️ @FrontendPortal | #tip #js
Этот трюк можно реализовать с помощью Page Visibility API
Page Visibility API — это API браузера, который проверяет видимость страницы. Он помогает определять, скрыта или свернута текущая страница, и тем самым позволяет контролировать ее поведение и использование ресурсов
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥73❤16👍13🏆2
This media is not supported in your browser
VIEW IN TELEGRAM
Огромная коллекцию из 1500+ отобранных API для ваших проектов, от погоды и карт до генераторов картинок и NLP-сервисов
Забираем с сайта или с GitHub🍯
➡️ @FrontendPortal | #resourse
Забираем с сайта или с GitHub
Please open Telegram to view this post
VIEW IN TELEGRAM
❤52👍16
This media is not supported in your browser
VIEW IN TELEGRAM
HTML эволюционирует, чтобы использовать меньше JS 🤩
Новый атрибут
Он уже работает в Chrome, Edge, Firefox и скоро появится в Safari.
Вот так можно открывать/закрывать модалки всего двумя строками HTML
➡️ @FrontendPortal
Новый атрибут
command позволяет вызывать методы DOM-элементов.Он уже работает в Chrome, Edge, Firefox и скоро появится в Safari.
Вот так можно открывать/закрывать модалки всего двумя строками HTML
Please open Telegram to view this post
VIEW IN TELEGRAM
❤84👍40🤯22🔥15😱2🤔1🤝1
This media is not supported in your browser
VIEW IN TELEGRAM
99% разрабов не знают об этом хаке в Chrome DevTools 🤯
Вы можете включить тёмную тему на любом сайте, даже если у него нет собственного тёмного режима. Для этого откройте DevTools, нажмите на иконку кисти и выберите Automatic Dark Mode.
Это идеально, когда вы проектируете тёмный режим для своего сайта - вы моментально получаете предварительный просмотр интерфейса примерно на 90%.
➡️ @FrontendPortal
Вы можете включить тёмную тему на любом сайте, даже если у него нет собственного тёмного режима. Для этого откройте DevTools, нажмите на иконку кисти и выберите Automatic Dark Mode.
Это идеально, когда вы проектируете тёмный режим для своего сайта - вы моментально получаете предварительный просмотр интерфейса примерно на 90%.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍55❤23🔥8💊3
This media is not supported in your browser
VIEW IN TELEGRAM
Совет по Chrome Dev Tools: Инспекция стилей плейсхолдера
По умолчанию Chrome DevTools не отображает стили
Можно включить настройку "Show user agent shadow DOM", чтобы отображать shadow DOM браузера, генерируемый для различных встроенных элементов, таких как
Мы можем инспектировать эти элементы shadow DOM, созданные user agent'ом, чтобы просматривать/редактировать стили плейсхолдера, ползунка у range input и т. п.
➡️ @FrontendPortal | #tip by Shripal Soni
По умолчанию Chrome DevTools не отображает стили
::placeholder при инспекции элементов.Можно включить настройку "Show user agent shadow DOM", чтобы отображать shadow DOM браузера, генерируемый для различных встроенных элементов, таких как
<input>, <progress>, <video> и др.Мы можем инспектировать эти элементы shadow DOM, созданные user agent'ом, чтобы просматривать/редактировать стили плейсхолдера, ползунка у range input и т. п.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍47🔥13❤11
Media is too big
VIEW IN TELEGRAM
Создавайте отличную продуктовую документацию
Эта React-библиотека под названием Fumadocs упрощает весь процесс за счёт компонентов, лэйаутов и всего необходимого функционала для создания современных и аккуратных документаций.
Используйте её для документирования вашего софта, библиотеки, фреймворка или любого продукта, который вы разрабатываете
GitHub: fumadocs
➡️ @FrontendPortal | #resourse
Эта React-библиотека под названием Fumadocs упрощает весь процесс за счёт компонентов, лэйаутов и всего необходимого функционала для создания современных и аккуратных документаций.
Используйте её для документирования вашего софта, библиотеки, фреймворка или любого продукта, который вы разрабатываете
GitHub: fumadocs
Please open Telegram to view this post
VIEW IN TELEGRAM
❤27👍9🔥4💊2💯1