Как указано в других ответах, это может быть достигнуто с помощью:
backdrop-filter
Существует поддерживаемое свойство под названием backdrop-filter
, и в настоящее время поддерживается в Edge , Safari и iOS Safari (статистику см. в caniuse.com ).
Из Mozilla devdocs :
Свойство фонового фильтра обеспечивает такие эффекты, как размытие или смещение цвета в области позади элемента, которые затем можно увидеть через этот элемент с помощью настройка прозрачности / непрозрачности элемента.
Вы можете использовать это так:
.box {
-webkit-backdrop-filter: blur(5px); /* Use for Safari 9+, Edge 17+ (not a mistake) and iOS Safari 9.2+ */
backdrop-filter: blur(5px); /* No one supports non prefixed yet */
}
Статистику см. В caniuse.com .
Обновление (12/06/2019) : Chromium будет поставляться с включенным backdrop-filter
по умолчанию в версии 76, которая должна быть выпущена 30/07/2019 .
Обновление (01/06/2019) : Команда Mozzilla Firefox объявила , что скоро приступит к реализации этого.
Обновление (21/05/2019) : только что анонсированный Chromium backdrop-filter
доступен в Chrome Canary без флажка «Включить функции экспериментальной веб-платформы». Это означает, что backdrop-filter
очень близок к реализации на всех платформах Chrome.
Если вы добавите Hamcrest и JUnit4, вы можете сделать:
String x = "foo bar";
Assert.assertThat(x, CoreMatchers.containsString("foo"));
С некоторым статическим импортом это выглядит намного лучше:
assertThat(x, containsString("foo"));
Необходимый статический импорт будет:
import static org.junit.Assert.assertThat;
import static org.hamcrest.CoreMatchers.containsString;