Safari Technology Preview 185
- Поменяли роль по умолчанию для заголовков. Если в WAI ARIA 1.1 значение было 2, то в современной 1.2 значения по умолчанию вообще нет. Теперь нужно явно указывать
Получается Сафари придёрживаются спецификации. Молодцы.
- Также добавлена поддержка
-
- Добавлена поддержка
- Добавлена поддержка
Оригинал: https://webkit.org/blog/14885/release-notes-for-safari-technology-preview-185/
- Поменяли роль по умолчанию для заголовков. Если в WAI ARIA 1.1 значение было 2, то в современной 1.2 значения по умолчанию вообще нет. Теперь нужно явно указывать
aria-level="2", ну либо использовать заголовки <h2>, <h3> и т.д.Получается Сафари придёрживаются спецификации. Молодцы.
- Также добавлена поддержка
align-content для блочных контейнеров.-
letter-spacing и word-spacing теперь поддерживают процентные значения.- Добавлена поддержка
@scope.- Добавлена поддержка
::grammar-error и ::spelling-error для стилизации ошибок в тексте.Оригинал: https://webkit.org/blog/14885/release-notes-for-safari-technology-preview-185/
👍4
switchПомните же такой классный UI-элемент как свитчер или switch? Сейчас идут разговоры как внедрить подобный элемент в браузер, чтобы не писать его каждый раз с нуля.
Пока обсуждаются два варианта:
-
<input type="checkbox" switch>-
<switch>Есть ещё вариант - ничего не делать или реализовывать с помощью псевдоэлементов.
Просто поглядите на картинки и посмотрите каким сложным может быть этот элемент и сколько нюансов нужно учесть при его реализации: https://deploy-preview-785--open-ui.netlify.app/components/switch.explainer/
👍4🔥1
Не то, чтобы вам вообще нужна эта информация, но сегодня мы обсуждали устаревшую версию WA ARIA 1.1 и новую 1.2. Оказалось, что уже готовится версия 1.3 - https://www.w3.org/TR/wai-aria-1.3/
Коротко: спецификация предоставляет роли интерфейсным элементам, которые помогут повысить доступность веб-интерфейсов. В новой версии спецификации появились новые роли
Коротко: спецификация предоставляет роли интерфейсным элементам, которые помогут повысить доступность веб-интерфейсов. В новой версии спецификации появились новые роли
aria-description, aria-braillelabel, aria-brailleroledescription👍1
Ну и завершим сегодняшний день новостью про новую спецификацию.
Вышла новая спецификация CSS Viewport Module Level 1. Спецификация на данный момент имеет незначимый статус "Первый публичный черновик".
Вышла новая спецификация CSS Viewport Module Level 1. Спецификация на данный момент имеет незначимый статус "Первый публичный черновик".
Эта спецификация предоставляет автору возможность указать в CSS размер, коэффициент масштабирования и ориентацию области просмотра, которая используется в качестве основы для начального содержащего блока.👍2
6 CSS-снипетов, который должен знать верстальщик в 2023
- выражение от контейнера
- scroll-snap
- наложение грид ячеек друг на друга
- как быстро сделать круг
- управление каскадом с помощью слоёв
- логические свойства
Посмотри примеры: https://web.dev/articles/6-css-snippets-every-front-end-developer-should-know-in-2023
- выражение от контейнера
- scroll-snap
- наложение грид ячеек друг на друга
- как быстро сделать круг
- управление каскадом с помощью слоёв
- логические свойства
Посмотри примеры: https://web.dev/articles/6-css-snippets-every-front-end-developer-should-know-in-2023
👍6
A Deep Dive Into SVG Path Commands
Очень хорошо представленное интерактивное руководство по пониманию SVG-путей и команд путей - в нем рассматриваются курсоры, линии, кривые Безье и многое другое. Посмотрите как шаг за шагом создаются иконки.
https://www.nan.fyi/svg-paths
Очень хорошо представленное интерактивное руководство по пониманию SVG-путей и команд путей - в нем рассматриваются курсоры, линии, кривые Безье и многое другое. Посмотрите как шаг за шагом создаются иконки.
https://www.nan.fyi/svg-paths
👍1
Экономия на спичках
Отличная статья от microsoft про перформанс селекторов. В проектах мы стараемся использовать простые селекторы, например
Быстродействие сложного селектора, в основном, зависит от глубины и ширины DOM-дерева, чем больше дерево, тем менее производительный сложный селектор. Также перформанс зависит от того как часто изменяется DOM-дерево. Это значит, что перформанс одного и того же сложного селектора зависит от проекта.
В простом проекте быстродействие между простым селектором и сложным будет одинаковым, а в сложном проекте может сильно отличаться. Чтобы проверить производительность селектора можно воспользоваться панелью Performance в Edge.
Статья: https://blogs.windows.com/msedgedev/2023/01/17/the-truth-about-css-selector-performance/
Отличная статья от microsoft про перформанс селекторов. В проектах мы стараемся использовать простые селекторы, например
.link, а значит производительные, но что если необходимо написать сложный селектор, например .wrapper .section .title .link.. Повлияет ли сложный селектор на перформанс интерфейса и как сильно повлияет?Быстродействие сложного селектора, в основном, зависит от глубины и ширины DOM-дерева, чем больше дерево, тем менее производительный сложный селектор. Также перформанс зависит от того как часто изменяется DOM-дерево. Это значит, что перформанс одного и того же сложного селектора зависит от проекта.
В простом проекте быстродействие между простым селектором и сложным будет одинаковым, а в сложном проекте может сильно отличаться. Чтобы проверить производительность селектора можно воспользоваться панелью Performance в Edge.
Статья: https://blogs.windows.com/msedgedev/2023/01/17/the-truth-about-css-selector-performance/
ЕС признал, что баннеры с использованием файлов cookie слегка раздражают, и теперь пытается пересмотреть свой подход.
Статья: https://www.techspot.com/news/101396-european-union-set-revise-cookie-law-admits-cookie.html
Баннер с превьюшки показывается тут - https://www.artlebedev.ru/
Статья: https://www.techspot.com/news/101396-european-union-set-revise-cookie-law-admits-cookie.html
Баннер с превьюшки показывается тут - https://www.artlebedev.ru/
🔥3👍1
10 самых распространенных ошибок доступности , обнаруженных на сайтах в 2023 году.
1. Нет текста ссылки
2. Неактивный элемент в порядке табуляции (tabindex="0").
3. Отсутствует атрибут alt ссылки.
4. Нет альтернативного текста
5. Список вложен неправильно. Имеется ввиду, когда список вложен в список
6. Задублированные лейблы
7. Положительное значение табиндекса.
8. Неверное aria описание. Нет цели для
9. Нет надписи для кнопки.
10. Неверная ариа-маркировка. нет цели для
Детальнее: https://www.tpgi.com/the-top-accessibility-errors-found-in-2023/
1. Нет текста ссылки
2. Неактивный элемент в порядке табуляции (tabindex="0").
3. Отсутствует атрибут alt ссылки.
4. Нет альтернативного текста
5. Список вложен неправильно. Имеется ввиду, когда список вложен в список
6. Задублированные лейблы
7. Положительное значение табиндекса.
8. Неверное aria описание. Нет цели для
aria-describedby9. Нет надписи для кнопки.
10. Неверная ариа-маркировка. нет цели для
aria-labelledbyДетальнее: https://www.tpgi.com/the-top-accessibility-errors-found-in-2023/
TPGi
The Top Accessibility Errors Found in 2023 - TPGi
Read about the 10 most common issues our teams discovered using both automated and manual testing in 2023.
👍1
Разбираем самый маленький PNG в мире
Самый миниатюрный PNG в мире весит67 байт и представляет собой один чёрный пиксель.
Узнайте почем так https://habr.com/ru/companies/ruvds/articles/787302/
Самый миниатюрный PNG в мире весит
Узнайте почем так https://habr.com/ru/companies/ruvds/articles/787302/
Хабр
Разбираем самый маленький PNG в мире
Самый миниатюрный PNG в мире весит 67 байт и представляет собой один чёрный пиксель. Выше вы видите его в 200-кратном увеличении. Красота, не так ли? Состоит этот файл из четырёх частей: Сигнатура...
Использование передовых функций CSS для создания индикатора прогресса
Объединяет такие вещи, как анимация, связанная с прокруткой, тригонометрические функции CSS и свойства color-mix, чтобы создать индикатор прогресса, связанный с текущей позицией прокрутки страницы, без какого-либо JS.
Статья: https://component-odyssey.com/articles/05-using-heaps-of-cutting-edge-css-to-build-a-progress-indicator
Объединяет такие вещи, как анимация, связанная с прокруткой, тригонометрические функции CSS и свойства color-mix, чтобы создать индикатор прогресса, связанный с текущей позицией прокрутки страницы, без какого-либо JS.
Статья: https://component-odyssey.com/articles/05-using-heaps-of-cutting-edge-css-to-build-a-progress-indicator
👍1
Прощай
Во всех основных браузерах появилось медивыражение срабатывающее на отключённый JS.
Медиавыражение имеет три значения:
- Значение
- Значение
- Значение
Статья: https://blog.stephaniestimac.com/posts/2023/12/css-media-query-scripting/
.no-js.Во всех основных браузерах появилось медивыражение срабатывающее на отключённый JS.
@media (scripting: none) {
}
Медиавыражение имеет три значения:
- Значение
none означает, что браузер не будет запускать скрипты для текущего документа, поскольку он не поддерживает их или поддержка скриптов не активна.- Значение
initial-only означает, что сценарии доступны во время начальной загрузки страницы, но не после.- Значение
enabled означает, что сценарии поддерживаются и активны в текущем документе и в течение всего "времени жизни" документа.Статья: https://blog.stephaniestimac.com/posts/2023/12/css-media-query-scripting/
👍13
Современный CSS-reset с современным CSS-свойствами
В статье рассказывается для чего используется каждое правило.
Статья: https://keithjgrant.com/posts/2024/01/my-css-resets/
@layer reset {
*,
*::before,
*::after {
box-sizing: border-box;
}
body {
margin: unset;
}
button,
input,
textarea,
select {
font: inherit;
}
img,
picture,
svg,
canvas {
display: block;
max-inline-size: 100%;
block-size: auto;
}В статье рассказывается для чего используется каждое правило.
Статья: https://keithjgrant.com/posts/2024/01/my-css-resets/
Keithjgrant
My CSS resets
Every now and then, I see someone post their latest and greatest set of CSS resets.
Here’s mine.
Here’s mine.
🔥3
Как использоваться google.fonts в npm
1.
2.
3.
Подробнее в статье: https://www.amitmerchant.com/google-fonts-as-npm-packages/
1.
npm install @fontsource/roboto2.
import "@fontsource/roboto";3.
body {
font-family: 'Roboto', sans-serif;
}Подробнее в статье: https://www.amitmerchant.com/google-fonts-as-npm-packages/
Делайте область клика больше
Маленькие размеры цели затрудняют нажатие, что приводит к ошибкам. Увеличьте размер цели для более плавного взаимодействия. Проверьте, как это работает: наведите курсор на элемент, заметите разницу? Оптимальный размер цели, согласно рекомендациям, составляет 44x44 пикселя CSS.
- Применяйте закон Фиттса - больше целей, быстрее действия! Не забывайте про интервалы, чтобы избежать случайных нажатий.
- Визуальная обратная связь улучшает пользовательский опыт.
- Тестируйте и адаптируйте различные варианты ввода.
- Учитывайте "проблему толстых пальцев". Перчатки?
- Следите за изменением угла касания.
- Мелкие цели - это проблема.
- Расстояние имеет значение!
- Знайте методы определения размера цели - изучите примеры: навигация по сайту, выпадающие элементы, кнопки-иконки.
Обеспечьте большие размеры для доступности и удобства использования.
Отличнейший мануал по размерам интерактивных элементов: https://ishadeed.com/article/target-size
Маленькие размеры цели затрудняют нажатие, что приводит к ошибкам. Увеличьте размер цели для более плавного взаимодействия. Проверьте, как это работает: наведите курсор на элемент, заметите разницу? Оптимальный размер цели, согласно рекомендациям, составляет 44x44 пикселя CSS.
- Применяйте закон Фиттса - больше целей, быстрее действия! Не забывайте про интервалы, чтобы избежать случайных нажатий.
- Визуальная обратная связь улучшает пользовательский опыт.
- Тестируйте и адаптируйте различные варианты ввода.
- Учитывайте "проблему толстых пальцев". Перчатки?
- Следите за изменением угла касания.
- Мелкие цели - это проблема.
- Расстояние имеет значение!
- Знайте методы определения размера цели - изучите примеры: навигация по сайту, выпадающие элементы, кнопки-иконки.
Обеспечьте большие размеры для доступности и удобства использования.
Отличнейший мануал по размерам интерактивных элементов: https://ishadeed.com/article/target-size
Ishadeed
Designing better target sizes
An interactive guide on designing better target sizes on the web.
🔥1
Safari Technology Preview 186
- Добавлена поддержка
- Добавлена поддержка
- Добавлена поддержка
-
Продолжает играться с
- Добавлена поддержка кольца фокусировки для
- Добавлена поддержка вертикального рендеринга для файлов
и многое другое: https://webkit.org/blog/14916/release-notes-for-safari-technology-preview-186/
- Добавлена поддержка
:any-link,:link и :-webkit-any-link внутри :has()- Добавлена поддержка
:scope внутри @scope.- Добавлена поддержка
align-content ячеек таблицы-
content-visibility теперь анимируемыйПродолжает играться с
<input type="checkbox" switch>- Добавлена поддержка кольца фокусировки для
<input type="checkbox" switch>- Добавлена поддержка вертикального рендеринга для файлов
<input type="checkbox" switch>и многое другое: https://webkit.org/blog/14916/release-notes-for-safari-technology-preview-186/
WebKit
Release Notes for Safari Technology Preview 186
Safari Technology Preview Release 186 is now available for download for macOS Sonoma and macOS Ventura.
Демонстрация того, что сегодня умеют PWA
Оно из самых важных умений это возможность работать с файловой системой. Интересно, а чего не умеет PWA по сравнению с обычным приложением?
Всё внутри: https://whatpwacando.today/
Оно из самых важных умений это возможность работать с файловой системой. Интересно, а чего не умеет PWA по сравнению с обычным приложением?
Всё внутри: https://whatpwacando.today/
whatpwacando.today
What PWA Can Do Today
A showcase of what is possible with Progressive Web Apps today.
👍1
Буквально все разработчики сегодня написали, что вышел Interop 2024.
Основной фокус на этот год:
- Доступность
- CSS вложенность(nesting)
- Кастомные свойства
- Декларативный Shadow DOM
-
- HTTPS URLs для WebSocket
-
- Сетки: флексы и гриды
- События Pointer and Mouse
- Popover API
- Относительные цвета
-
- стили скролбара
-
- Направленность текста
-
- URL
Дашборд
Статья от гуглов - https://web.dev/blog/interop-2024
Основной фокус на этот год:
- Доступность
- CSS вложенность(nesting)
- Кастомные свойства
- Декларативный Shadow DOM
-
font-size-adjust- HTTPS URLs для WebSocket
-
IndexedDB- Сетки: флексы и гриды
- События Pointer and Mouse
- Popover API
- Относительные цвета
-
requestVideoFrameCallback- стили скролбара
-
@starting-style и transition-behavior- Направленность текста
-
text-wrap: balance- URL
Дашборд
Статья от гуглов - https://web.dev/blog/interop-2024
web.dev
Interop 2024 | Blog | web.dev
Again in 2024, all major browser vendors, and other stakeholders, work together to solve the top browsers compatibility issues.
👍2
12 современных обновлений одной строкой для вашего CSS
Посмотреть остальные: https://moderncss.dev/12-modern-css-one-line-upgrades/
/* До */
margin-left: auto;
margin-right: auto;
/* После */
margin-inline: auto;
:is(h1, h2, h3, h4, .text-balance) {
text-wrap: balance;
}p {
text-wrap: pretty;
}Посмотреть остальные: https://moderncss.dev/12-modern-css-one-line-upgrades/
Modern CSS Solutions
12 Modern CSS One-Line Upgrades | Modern CSS Solutions
Sometimes, improving your application CSS just takes a one-line upgrade or enhancement! Learn about 12 properties to start incorporating into your projects, and enjoy reducing technical debt, removing JavaScript, and scoring easy wins for user experience.
🔥7👍1
Практическое введение в анимацию, управляемую прокруткой, с помощью CSS
Узнайте, как привязать прокрутку к анимации элемента.
Статья: https://tympanus.net/codrops/2024/01/17/a-practical-introduction-to-scroll-driven-animations-with-css-scroll-and-view/
scroll() и view()Узнайте, как привязать прокрутку к анимации элемента.
Статья: https://tympanus.net/codrops/2024/01/17/a-practical-introduction-to-scroll-driven-animations-with-css-scroll-and-view/
Codrops
A Practical Introduction to Scroll-Driven Animations with CSS scroll() and view() | Codrops
With just CSS you can add scroll animations that toggle shadows on navbars, reveal images, add scrollytelling, link up carousel elements and much more.
👍2
5 практических примеров использования
Посмотреть примеры: https://bejamas.io/blog/learn-css-has-selector-by-examples-top-use-cases/
:has()Посмотреть примеры: https://bejamas.io/blog/learn-css-has-selector-by-examples-top-use-cases/
Bejamas
Learn CSS :has() selector by examples: 5 top use cases
Discover the power of the :has() selector in CSS with our comprehensive guide. Learn the basics and explore 5 top use cases through 10 practical demos.
👍1🔥1