- API CSS Paint позволяет программно генерировать изображение.
- API синхронизации сервера позволяет веб-серверам предоставлять информацию о синхронизации производительности через заголовки HTTP.
- Новое свойство CSS
display: contents
может заставить блоки исчезнуть!
И это еще не все !
Меня зовут Пит ЛеПейдж . Давайте окунемся в мир и посмотрим, что нового для разработчиков в Chrome 65!
Хотите полный список изменений? Ознакомьтесь со списком изменений в исходном репозитории Chromium .
API CSS-рисования
API CSS Paint позволяет программно генерировать изображение для таких свойств CSS, как background-image
или border-image
.
Вместо ссылки на изображение вы можете использовать новую функцию рисования для его рисования — примерно как элемент холста.
<style>
.myElem { background-image: paint(checkerboard); }
</style>
<script>
CSS.paintWorklet.addModule('checkerboard.js');
</script>
Например, вместо добавления дополнительных элементов DOM для создания эффекта ряби на кнопке в материальном стиле вы можете использовать API рисования.
Это также мощный метод полифилла CSS-функций, которые пока не поддерживаются браузером.
У Сурмы есть отличный пост с несколькими демонстрациями в его объяснении .
API синхронизации сервера
Надеюсь, вы используете API навигации и ресурсного тайминга для отслеживания производительности вашего сайта для реальных пользователей. До сих пор не было простого способа для сервера сообщать о своем времени производительности.
Новый API синхронизации сервера позволяет вашему серверу передавать информацию о времени в браузер, предоставляя вам более полную картину общей производительности.
Вы можете отслеживать столько метрик, сколько захотите: время чтения базы данных, время запуска или любые другие важные для вас показатели, добавив заголовок Server-Timing
к своему ответу:
'Server-Timing': 'su=42;"Start-up",db-read=142;"Database Read"'
Они отображаются в Chrome DevTools, или вы можете извлечь их из заголовка ответа и сохранить вместе с другими данными аналитики производительности.
display: contents
Новое свойство CSS display: contents
очень удобное!
При добавлении в элемент контейнера все дочерние элементы занимают его место в DOM, и он по сути исчезает. Допустим, у меня есть два div
, один внутри другого. У моего внешнего div
красная граница, серый фон, и я установил ширину 200 пикселей. У внутреннего div
синяя граница и светло-голубой фон.
.disp-contents-outer {
border: 2px solid red;
background-color: #ccc;
padding: 10px;
width: 200px;
}
.disp-contents-inner {
border: 2px solid blue;
background-color: lightblue;
padding: 10px;
}
По умолчанию внутренний div
содержится во внешнем div
.
Добавление display: contents
к внешнему div приводит к исчезновению внешнего div
и его ограничения больше не применяются к внутреннему div
. Внутренний div
теперь имеет ширину 100%.
div
все еще существует.Есть много случаев, когда это может быть полезно, но наиболее распространенный из них — flexbox. С flexbox только непосредственные потомки flex-контейнера становятся flex-элементами.
Но как только вы примените display: contents
к дочернему элементу, его дочерние элементы станут гибкими и будут размещаться с использованием тех же правил, которые применялись бы к их родителю.
Более подробную информацию и другие примеры можно найти в замечательной статье Рэйчел Эндрю « Исчезающие коробки с демонстрационным содержимым» .
И многое другое!
Это лишь некоторые из изменений в Chrome 65 для разработчиков, конечно, их гораздо больше.
- Синтаксис указания координат
HSL
иHSLA
, а такжеRGB
иRGBA
для свойства цвета теперь соответствует спецификации CSS Color 4 . - Появилась новая политика функций , которая позволяет управлять синхронными XHR-файлами через HTTP-заголовок или атрибут
allow
iframe.
Обязательно ознакомьтесь с разделом Новое в Chrome DevTools , чтобы узнать, что нового в DevTools в Chrome 65. А если вас интересуют Progressive Web Apps, посмотрите новую серию видеороликов PWA Roadshow . Затем нажмите кнопку подписки на нашем канале YouTube , и вы будете получать уведомления по электронной почте всякий раз, когда мы запускаем новое видео.
Меня зовут Пит ЛеПейдж, и как только выйдет Chrome 66, я сразу же расскажу вам, что нового в Chrome!