Расскажу, какие привычки в вёрстке улучшают код: семантика, читаемость, структура, трюки. Примеры и ссылки.
Please open Telegram to view this post
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
Сделана на SVG, CSS и JavaScript
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1
Большой блок ниже фолда. Нужно ускорить первый рендер и не ухудшить CLS. Что применить?
Anonymous Quiz
32%
content-visibility: auto + contain-intrinsic-size
19%
will-change: opacity, transform
21%
visibility: hidden до прокрутки
27%
display: none до IntersectionObserver
Покажу, как гонять повторения в JS: for/while/do…while, for…of/for…in, break/continue, частые грабли и где что уместно. Мини-примеры, лайфхаки — и цикл не укусит.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
Нужно загрузить веб-шрифты с CDN быстро, без FOIT и с минимальным CLS. Что выбрать?
Anonymous Quiz
24%
Подключить через @import, оставить font-display:auto
58%
rel=preload as=font crossorigin + font-display:swap; выровнять метрики фолбэка
4%
font-display:block, без кеша
14%
Встроить шрифты base64 в CSS
This media is not supported in your browser
VIEW IN TELEGRAM
Сделаны на CSS и JavaScript
Please open Telegram to view this post
VIEW IN TELEGRAM
textContent
в JavaScript и когда его применять?Свойство textContent позволяет получить или изменить только текстовое содержимое элемента, игнорируя HTML-теги. Это безопасный способ отобразить данные без риска вставки вредоносного кода.
<div id="message"></div>
<script>
const box = document.getElementById("message");
box.textContent = "<strong>Привет!</strong>";
</script>
textContent удобно использовать для вывода пользовательского ввода, динамических данных или сообщений, где важна безопасность. В отличие от innerHTML, оно исключает XSS-уязвимости и работает быстрее при массовых изменениях текста
Please open Telegram to view this post
VIEW IN TELEGRAM
В Web Component с открытым Shadow DOM внутри нажали кнопку. На document висит обычный click-слушатель (не capture). Что он увидит по умолчанию?
Anonymous Quiz
31%
Событие дойдёт; event.target — хост; в composedPath() будет внутренняя кнопка
37%
Событие не выйдет из тени — всплытие остановится на shadowRoot
21%
Дойдёт; event.target — реальная внутренняя кнопка
10%
Дойдёт только в capture, в bubble — нет
Please open Telegram to view this post
VIEW IN TELEGRAM
Нужно хранить аутентификацию в SPA так, чтобы токен нельзя было украсть XSS и работало на поддоменах, при этом защититься от CSRF. Что выбрать?
Anonymous Quiz
12%
localStorage + Bearer в заголовке
66%
HttpOnly Secure cookie с Domain=.example.com, SameSite=Lax/Strict + CSRF-токен/Origin-проверка
15%
sessionStorage + Bearer
7%
Токен в URL-фрагменте (#token)
Я показываю, почему выбраковываю margin: перехожу на gap, даю лишние обёртки ради независимости узлов. Итог — чище код и предсказуемые отступы. Будут примеры и возражения.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
API-ответы должны приходить сразу, можно 30 с устаревшие с фоновым обновлением; при сетевой ошибке — использовать старый до 1 ч. Какие заголовки отдать?
Anonymous Quiz
4%
Cache-Control: max-age=0, must-revalidate
71%
Cache-Control: public, max-age=30, stale-while-revalidate=30, stale-if-error=3600
16%
Cache-Control: no-store, stale-while-revalidate=30
10%
Cache-Control: s-maxage=30, must-revalidate
Покажу свежие фишки HTML/CSS, которые уже поддерживаются: что они чинят, где применить, на что смотреть. Короткие примеры, ссылки и мои фавориты — чтобы выбрать, что копать глубже.
Please open Telegram to view this post
VIEW IN TELEGRAM
Новый Service Worker установился, но пользователи видят старую версию до перезапуска вкладок. Как применить обновление сразу?
Anonymous Quiz
10%
Увеличить версию кеша и ждать
48%
Поставить Cache-Control: no-store на все ассеты
37%
Вызвать skipWaiting() и затем clients.claim()
6%
Понизить TTL у SW и перезагрузить страницу через таймер
This media is not supported in your browser
VIEW IN TELEGRAM
Сделана на CSS, SVG и JavaScript
Please open Telegram to view this post
VIEW IN TELEGRAM
❤3
value
в JavaScript и когда его применять?Свойство
value
позволяет получить или изменить текущее значение элементов форм — таких как <input>
, <textarea>
или <select>
. Это основной способ работы с пользовательским вводом на стороне фронтенда.<input id="nameInput" type="text" placeholder="Введите имя">
<script>
const input = document.getElementById("nameInput");
input.value = "Alice"; // Установим значение
console.log(input.value); // Получим текущее значение ➜ "Alice"
</script>
value удобно использовать для работы с формами, валидацией, автозаполнением, поиска и динамического изменения данных. Это ключевой инструмент при создании интерактивных интерфейсов.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1