Бэкграунд css: background-attachment | htmlbook.ru


23.06.2021 Facebook Twitter LinkedIn Google+ Разное


Содержание

background-position — CSS | MDN

CSS свойство background-position устанавливает начальную позицию для каждого фонового изображения. Положение относительно уровня положения, установленного background-origin.

Исходный код этого интерактивного примера хранится в репозитории GitHub. Если вы хотите внести свой вклад в проект интерактивных примеров, пожалуйста, клонируйте https://github.com/mdn/interactive-examples и отправьте нам запрос на извлечение.


background-position: top;
background-position: bottom;
background-position: left;
background-position: right;
background-position: center;


background-position: 25% 75%;


background-position: 0 0;
background-position: 1cm 2cm;
background-position: 10ch 8em;


background-position: 0 0, center;


background-position: bottom 10px right 20px;
background-position: right 3em bottom 10px;
background-position: bottom 10px right;
background-position: top right 10px;


background-position: inherit;
background-position: initial;
background-position: unset;

Свойство background-position указывается в виде одного или нескольких значений <position>, разделённых запятыми.

Значения

<position>
<position> (en-US). Позиция определяет координату x/y, чтобы разместить элемент относительно границ поля элемента. Она может быть определена с использованием одного и двух значений. Если используются два значения, первое значение предоставляет горизонтальную позицию, а второе представляет вертикальную позицию. Если указано только одно, второе значение считается center.

Синтаксис 1-значения:

значение может быть:

  • Значение ключевого слова center, которое центрирует изображение.
  • Одно из значений ключевых слов top, left, bottom, right. Оно указывает край напротив, которого нужно поместить элемент. Затем для другого измерения устанавливается значение 50%, таким образом элемент размещается в середине указанного края.
  • <length> или <percentage>. Оно указывает координату X относительно левого края, с координатой Y установленной на 50%.

Синтаксис с 2-значениями: одно из значений определяет X, а другое определяет Y. Каждое значение может быть:

  • Одно из значений ключевых слов top, left, bottom, right. Если здесь указаны
    left
    или right, то оно определяет  X, а другое заданное значение определяет Y. Если даны top или bottom, то оно определяет Y, а другое значение определяет X.
  • <length> или <percentage>. Если другое значение является left или right, то оно определяет Y, относительно верхнего края. Если другое значение top или bottom, то оно определяет X, относительно левого края. Если оба значения <length> или <percentage>, то первое определяет X, а второе Y.

Обратите внимание,что:

  • Если одно значение top или bottom, то другое значение не может быть top или bottom.
  • Если одно значение  является left или right, то другое значение не может быть
    left
    или right.

Это означает, например, что top top и left right являются недействительные.

Официальный синтаксис

Каждый из этих примеров использует свойство background для создания жёлтого, прямоугольного элемента, содержащего изображение звезды. В каждом примере, звезда находится в другой позиции. Третий пример иллюстрирует, как указать позиции для разных фоновых изображений в одном элементе.

HTML

<div>Example One</div>
<div>Example Two</div>
<div>Example Three</div>

CSS


div {
  background-color: #FFEE99;
  background-repeat: no-repeat;
  width: 300px;
  height: 80px;
  margin-bottom: 12px;
}


. exampleone {
  background: url("https://mdn.mozillademos.org/files/11987/startransparent.gif") #FFEE99 2.5cm bottom no-repeat;
}
.exampletwo {
  background: url("https://mdn.mozillademos.org/files/11987/startransparent.gif") #FFEE99 3em 50% no-repeat;
}


.examplethree {
  background-image:    url("https://mdn.mozillademos.org/files/11987/startransparent.gif"),
                       url("https://mdn.mozillademos.org/files/7693/catfront.png");
  background-position: 0px 0px,
                       center;
}

Результат

Начальное значение0% 0%
Применяется квсе элементы. Это также применяется к ::first-letter и ::first-line.
Наследуетсянет
Процентыотносятся к размеру области позиционирования фона минус размер фонового изображения; размер — ширина горизонтальных смещений и высота вертикальных
Обработка значениякак и у каждого из подсвойств этого свойства:
  • background-position-x: Список, каждый элемент которого состоит из: смещения, данного комбинацией абсолютной длины и процентов плюс ключевое слово
  • background-position-y (en-US): Список, каждый элемент которого состоит из: смещения, данного комбинацией абсолютной длины и процентов плюс ключевое слово
Animation typerepeatable list of simple list of length, percentage, or calc

BCD tables only load in the browser

Таблица совместимости на этой странице генерируется из структурированных данных. Если вы хотите внести свой вклад в эти данные, просмотрите https://github.com/mdn/browser-compat-data и отправьте нам запрос на извлечение.

Quantum CSS заметки

  • В Gecko есть ошибка, означающая, что background-position не может быть transitioned между двумя значениями, содержащими разные числа значений <position> (en-US), для примера background-position: 10px 10px; and background-position: 20px 20px, 30px 30px; (смотрите баг 1390446). Новый параллельный CSS движок Firefox (также известный как Quantum CSS или Stylo, который планируется выпустить в Firefox 57) исправляет это.

позиция фона — учебник CSS

Свойство background-position позволяет указывать начальную позицию фонового рисунка сразу для двух осей — x и y. Впрочем, можно воспользоваться и отдельными свойствами для каждой оси — background-position-x и background-position-y.

Значения background-position

В качестве значений могут выступать как специальные ключевые слова, так и числовые значения в единицах измерения CSS — процентах, пикселях и т. д.

Ключевые слова для горизонтального позиционирования

  • left — фоновый рисунок прилеплен к левой стороне элемента;
  • center — фоновый рисунок расположен в центре оси x;
  • right — фоновый рисунок прилеплен к правой стороне элемента.

div {
	background-position-x: left;
}

Ключевые слова для вертикального позиционирования

  • top — фоновый рисунок прилеплен к верхней стороне элемента;
  • center — фоновый рисунок расположен в центре оси y;
  • bottom — фоновый рисунок прилеплен к нижней стороне элемента.

div {
	background-position-y: bottom;
}

Сокращенная запись для двух осей

Часто позиционирование фона задается сразу для двух осей. Для этого удобно пользоваться сокращенной записью, т. е. свойством background-position. Оно принимает одно либо два значения (для позиционирования сразу по двум осям либо по каждой отдельно соответственно).

Ниже — различные примеры позиционирования фона с помощью ключевых слов:


background-position: top center; /* фон вверху по центру */
background-position: top right; /* фон в верхнем правом углу */
background-position: bottom left; /* фон в левом нижнем углу */
background-position: center right; /* фон справа по центру */

Значения можно менять местами — они будут работать так же.

Примеры выравнивания фона с помощью background-position

Если вы установили повтор фона с помощью свойства background-repeat, то background-position будет определять, от какой точки будет начинаться дублирование изображения.

Для позиционирования фона можно использовать и одно значение для двух осей сразу:


background-position: center; /* фон по центру */
background-position: left; /* фон слева по центру */
background-position: right; /* фон справа по центру */
background-position: top; /* фон вверху по центру */
background-position: bottom; /* фон внизу по центру */

Точные значения в единицах измерения CSS

Вы можете управлять расстоянием фона от левого и верхнего краев элемента с помощью точных значений, указанных в единицах измерения CSS (например, в пикселях либо em).

Пример:


div {
background-position: 10px 25px;
}

Такая запись означает, что фон удален от левого края на 10 пикселей и от верхнего края на 25 пикселей. Здесь важен порядок записи значений: первое значение отвечает за положение фонового рисунка по горизонтали, второе — по вертикали. Допустимы и отрицательные значения (например, они могут быть полезны в случае, если с левой или верхней стороны фоновой картинки есть область, которую необходимо спрятать).

Регулировать расстояние фона, отталкиваясь от правой или нижней стороны элемента, можно с помощью специального значения, которое записывается так:


div {
background-position: right 15px bottom 40px;
}

Здесь ключевые слова right и bottom говорят браузеру, что вы хотите делать отсчет от правой и нижней стороны. Следом за каждым из ключевых слов записывается желаемое значение. Так,

15px — это расстояние между фоном и правой стороной элемента, а 40px — расстояние между фоном и нижней стороной элемента.


Процентные значения

Большое удобство предоставляет возможность записи значений в процентах. Расстояние вычисляется, исходя из размеров элемента с заданным фоном. Допустимы отрицательные процентные значения, но результат здесь может быть неожиданным.

Лучший способ понять, как перемещается фон под управлением процентных значений — это попрактиковаться. А пока что покажем несколько примеров позиционирования фона через проценты:


Обратите внимание: значение 50% идеально центрирует фоновое изображение (как по вертикали, так и по горизонтали), поскольку точка центра устанавливается в середине фона, а не в его начале или конце.

Комбинирование значений

Да, вы можете записывать для каждой из осей свое значение в необходимых единицах измерения (либо используя ключевое слово). Комбинируйте точные значения с относительными, ключевые слова со значениями в единицах измерения — полная свобода действий. Примеры:


Важно: фоновые изображения и печать

Как правило, при печати страницы фоновые изображения не отображаются. Учитывайте это при работе с важной графикой — например, логотип компании, карту проезда и другие иллюстрации, содержащие важную информацию, рекомендуется добавлять через тег <img>.

Поддержка браузерами

Запись background-position с двумя параметрами поддерживается всеми используемыми браузерами.

Запись с четырьмя параметрами для отсчета от правой и нижней сторон работает только в IE9+, Firefox 13+, Chrome 25+, Safari 7+.

Свойства background-position-x и background-position-y не поддерживаются браузером Firefox вплоть до 48-й версии, а также не воспринимаются мобильными браузерами Opera Mini и Opera Mobile до версии 12.1.

Подробную информацию вы всегда можете посмотреть на сайте Caniuse.com.


Далее в учебнике: background-attachment — фиксация фона.

CSS свойство background. Фон для сайта // «Фрилансер по жизни»

Lorem ipsum dolor sit amet, consectetur adipisicing elit. Assumenda beatae, earum perferendis provident quaerat, veritatis, debitis repudiandae iste porro commodi dolorum. Soluta, cum incidunt, doloremque commodi odit maxime aut autem!

Tempore quaerat accusantium placeat autem! Aliquid optio dignissimos facere, consequuntur perferendis dolorem provident rem vel, dolorum repellendus veniam quia odit, nobis voluptatem excepturi est, necessitatibus et at. Expedita voluptate, excepturi.

Nemo libero, laboriosam perferendis saepe quis in quibusdam sed itaque tempora dolor temporibus ipsa officiis voluptatum quisquam, nostrum modi harum vitae officia. Facilis rerum ducimus dolores necessitatibus cum voluptate velit.

Cupiditate omnis similique magnam libero eligendi, nobis at minima quas dignissimos ipsum, vitae, explicabo, quibusdam hic. Quasi, ut, dolore! Odio reprehenderit nostrum consectetur nulla eius porro facilis, corporis ipsum! Fugit.

Omnis assumenda sapiente praesentium doloribus earum laboriosam, temporibus nihil reiciendis numquam aut accusamus hic possimus voluptatem incidunt voluptates molestiae, dicta impedit. Dolorum explicabo quos, provident, facilis dicta incidunt nobis delectus.

Omnis repudiandae in nulla, debitis at quo ut distinctio, porro adipisci voluptatibus fugiat ea tempore assumenda accusantium similique tempora eligendi ab aspernatur aut voluptas corrupti vero id harum. Quidem, voluptatibus.

Similique fugiat aut facilis veniam nesciunt iure eveniet, sequi debitis ducimus rem velit cum id voluptatum asperiores maxime veritatis reprehenderit expedita, labore obcaecati. Obcaecati eaque temporibus aperiam aut natus rerum.

Similique exercitationem error esse architecto ut expedita aliquam optio magni repellat, dolore facilis sit deleniti quae qui commodi autem, cumque blanditiis dignissimos nostrum non et amet delectus! Magni, quam, iusto.

Nisi neque fuga reprehenderit est? Culpa eos sunt tempore, optio cumque minima sit iste iure pariatur deserunt enim officia eum necessitatibus perspiciatis modi molestias consequatur accusamus, repellat aut consequuntur sed!

Saepe illo vel mollitia sunt, quod expedita maxime reprehenderit a ipsam vero aut labore nulla, necessitatibus, eaque inventore quaerat. Reprehenderit, natus. Excepturi asperiores, esse saepe numquam magni tempore hic, voluptatum.

Optio reprehenderit, fugit. Dignissimos saepe, eveniet quis quidem aliquam molestias labore voluptatum eligendi nesciunt iusto rem, inventore aperiam quisquam velit corporis sapiente sunt, aspernatur laboriosam, adipisci consectetur optio impedit corrupti.

Neque ipsum voluptatibus, vitae qui ullam, facere consequuntur cum quis eius, voluptate, fuga quas! Facilis voluptatem accusamus autem ratione, ab officiis dolor ad ullam veritatis vitae, perspiciatis iusto pariatur minus!

Nihil iste, ab repellat hic amet aliquam in sit repudiandae quia tempora, eum quaerat quas, quam beatae aspernatur. Ex officiis laboriosam numquam magni provident, obcaecati praesentium delectus reprehenderit libero autem.

Minus sunt, reiciendis est similique eveniet numquam iusto in placeat neque eaque laborum recusandae sapiente officiis vero rem obcaecati ab dolores. Natus repudiandae ad perferendis veniam similique id sed impedit!

Corporis dicta facere consectetur nam doloremque asperiores illum error suscipit vel nesciunt quasi blanditiis tempore eaque quam laborum eveniet quod nemo, pariatur omnis officiis, quaerat nobis? Eius neque commodi amet.

Voluptate hic non sint quidem amet ullam quod reprehenderit est molestias? Aut, voluptatum, exercitationem? Non dolore ratione aperiam repellendus sed fugiat necessitatibus quam, delectus cupiditate, dolorem neque vitae quidem doloremque!

Distinctio velit nobis officiis, sit quos cupiditate obcaecati accusamus illum et adipisci tenetur dolore ab dolores quis modi recusandae ut, eos cum minima commodi. Suscipit commodi, dolore consectetur iste nemo?

Velit corporis, rem tempora cum quasi dolor, neque impedit laboriosam dolores similique optio, eius, aperiam inventore dignissimos saepe. Similique vel aspernatur sit ea sunt veniam officiis fugit rem voluptates eum.

Dicta nesciunt dolores saepe repellendus officiis non explicabo placeat consequuntur inventore sint dolor debitis consectetur perferendis quod atque tempora dolorum molestiae, dignissimos praesentium fuga, a autem voluptate. Ullam aliquid, fuga.

Modi laudantium mollitia, fugit repellat. Molestias asperiores error omnis laboriosam expedita architecto quod vel doloremque rerum culpa ipsa reprehenderit similique aliquid ex facilis quidem aperiam deserunt, repudiandae porro dolore maxime.

Libero impedit quae optio quasi iste aperiam nam nostrum temporibus repellat obcaecati aspernatur repudiandae, eaque aliquam autem iure, molestias itaque similique adipisci eius aliquid ab esse delectus totam accusantium quis!

At possimus, iusto architecto minima atque a illum eos adipisci ut nesciunt, asperiores molestias ratione, eaque nihil placeat. Saepe facilis molestiae esse ipsa dolor ratione quisquam facere provident voluptates veritatis.

Non et, hic aperiam natus obcaecati, blanditiis maiores voluptates officia minus quibusdam dolore praesentium nam laboriosam earum provident reiciendis dicta explicabo vel itaque ut repellat iure, at, eos repudiandae! Autem.

Molestiae sed, ea quam veniam. Totam deleniti voluptatibus quae veritatis officiis blanditiis, temporibus in vel! Minus nesciunt qui optio aut quis alias non beatae. Molestias voluptate expedita consequuntur nisi iusto.

Tempora sed deserunt consequuntur, unde, id sequi ex illo sapiente at repellat laboriosam reiciendis voluptate maxime ratione cum in obcaecati inventore ad, odit neque fuga esse. Tenetur dolorem nam quia.

Illum numquam facilis ipsum quidem dicta perferendis nulla adipisci omnis in quam accusamus, corrupti iusto, unde soluta eum laborum vero fuga quia. Cum quas numquam reiciendis, rem non in tempore?

Aspernatur, laborum, repellendus? Officiis, quibusdam? Eius, perspiciatis officia recusandae pariatur reprehenderit delectus ipsa excepturi fugit minus, dolore dolorum amet sunt, iure aperiam autem explicabo sit odio nihil! Temporibus odit, debitis!

Dicta, magnam, fugit. Amet ducimus suscipit fugit esse eum, earum, reprehenderit, dolor, placeat sequi illum facilis consectetur quaerat quasi neque rerum. Velit sequi culpa, nulla quasi labore nisi obcaecati ipsam.

Pariatur itaque nemo mollitia officia, quaerat odio, ratione illum vero, eveniet sit incidunt facere atque saepe quos eum deleniti laudantium eaque earum veniam inventore minima repellat expedita voluptas. Quae, inventore.

Nostrum suscipit praesentium dolores veniam ullam quasi harum, voluptatum possimus maxime! Dolores, cumque quia aut vitae maxime. Non repellat maxime iure nemo voluptatum cum et odit harum omnis! Itaque, similique.

Repellendus similique et molestiae est necessitatibus voluptatum repellat assumenda, officiis doloremque, officia accusantium beatae provident deleniti, perspiciatis debitis ipsum culpa itaque sunt nisi impedit magni totam eveniet alias nihil rerum.

In asperiores nobis quas perferendis cupiditate molestias quod commodi tempore ea, voluptatum debitis saepe nemo nesciunt adipisci quam voluptatem inventore. Magni reiciendis itaque praesentium quod aliquam debitis nobis sequi ea.

Commodi iusto rem laboriosam, quam deleniti autem eligendi cupiditate ab, nesciunt placeat voluptate deserunt aspernatur eos iure voluptas! Nisi, nobis? Eum et, cum, expedita pariatur placeat possimus ad nulla necessitatibus!

Odio alias animi quis, minima nulla incidunt est vel, laborum hic maiores quia error consectetur assumenda atque, temporibus maxime corporis cum vitae commodi consequuntur beatae. Sint odio placeat culpa, hic.

Ipsum earum, fugiat illo, sint eos nostrum autem distinctio, fuga facilis, repellat cum! Maxime sint magnam repellat labore molestiae aliquam ipsa incidunt cumque quam harum officiis, voluptas, recusandae commodi! Aliquam!

Animi soluta reiciendis ullam, tempore inventore dolores illum nobis expedita ut, asperiores error nemo eveniet vero iste consequuntur facilis, porro consectetur repudiandae odit optio. Ipsa corrupti sapiente consectetur omnis, officia.

Commodi iste dolores natus, magnam, alias officia voluptatum quia unde corporis, ad vero! Consequatur iusto doloribus voluptates, sint, aliquid, odit quos aspernatur natus perspiciatis id recusandae doloremque voluptate, a accusantium.

Ea molestias quisquam at tempore ipsa laboriosam aspernatur, hic rerum iste molestiae minima vero voluptatem consequuntur corrupti neque eius iure animi id! Nostrum quia accusantium velit placeat nulla numquam ex?

Nobis eum, tenetur illo, architecto ex rem est, repellat nemo, consectetur asperiores deserunt esse doloribus quos eligendi. Et consequuntur, perferendis nostrum omnis porro neque quod voluptas facilis quibusdam corporis commodi.

Fugit quod eius maxime accusantium sequi officia quis voluptatum minus nesciunt at distinctio, vel id assumenda. Blanditiis ad laboriosam officiis illum quidem, itaque quibusdam dolore expedita, maiores repudiandae, odio voluptatum?

Magni minus incidunt, ipsa ipsum sed! Tempora, dolore magnam quaerat ipsa consequatur nesciunt temporibus eveniet enim obcaecati! Aperiam, reiciendis eos, dolor fugiat id quam iure quasi cupiditate fugit aliquid non.

Possimus esse, consectetur. Facilis dolorem dolore omnis consequatur. Excepturi aliquid repellendus quia commodi ipsum harum, necessitatibus modi, cumque nesciunt voluptatum tempora ipsa voluptatibus dolore fugiat porro possimus officia et ex!

Enim iste unde ea totam, fugiat dolores minus eius commodi quod, molestias quibusdam! Beatae rerum exercitationem aliquid, impedit doloribus minima officiis dignissimos, nobis optio fuga porro repellat sint obcaecati sunt.

Consequuntur, porro, distinctio atque velit fugit pariatur obcaecati nesciunt quod nisi quasi nihil! Vel laudantium rerum sapiente, mollitia quae iste eligendi sed repudiandae dolorum ipsum debitis omnis animi, molestiae suscipit.

Cupiditate expedita hic tempore voluptatum numquam voluptate, necessitatibus, quaerat in quasi voluptates atque, recusandae quae velit aliquam nam. Similique ab optio, ipsa. Nisi a tempora accusamus voluptatibus culpa laudantium cum.

Dolorum illo amet adipisci ab maxime saepe accusantium, inventore, asperiores, quod, doloremque officia eius magnam expedita? Voluptatem veniam similique nihil ut natus rem non eaque, aut sed repellendus voluptates fugiat!

Nesciunt quibusdam dolor, quasi reprehenderit deleniti officiis alias in, dolorem ea sint eaque sit, debitis harum! Animi tenetur aliquid non quae, in, quisquam maiores minima repudiandae corporis dignissimos asperiores, doloremque!

Inventore tenetur quibusdam debitis modi asperiores possimus excepturi tempora ea dicta ipsa explicabo veniam temporibus natus fugit corrupti dolores laboriosam ut, ipsam blanditiis quod. Reiciendis facere vero modi similique earum?

Illo corrupti repudiandae debitis dolores nesciunt quam, consequuntur quos facilis fugit quis laborum voluptatem. Quos recusandae, cupiditate, omnis alias dolorem quibusdam necessitatibus, architecto doloremque nulla libero corporis magni quo saepe!

Ratione dolore tempore ex alias, deleniti at aliquid porro, iure soluta excepturi hic dolorum nesciunt voluptate quasi ipsum molestiae ducimus et, vitae quae. Magni eveniet nemo aut similique commodi sequi.

Cum cumque autem natus a. Vel cupiditate eligendi, reiciendis rerum harum. Dolor libero recusandae rerum consequatur, dolorum obcaecati soluta quos cumque sit officia autem cum pariatur veniam, nihil saepe. Placeat!

Consectetur animi, fugit laboriosam iusto quod harum mollitia facilis saepe libero sequi fuga sed placeat dignissimos, quos a excepturi minima, corporis veritatis aut nesciunt. Illo pariatur velit iure suscipit sequi.

Inventore amet voluptates magnam facere nesciunt aspernatur laboriosam vero at libero consequatur a, maxime culpa, blanditiis consectetur quod adipisci ullam sed necessitatibus quidem, velit eos ipsa? Facere, possimus minima fugiat.

Officia eveniet nesciunt eius fuga, consequatur asperiores, at debitis. Quae amet velit fugiat. Rem nobis voluptatibus, illum blanditiis, corporis est dolor soluta quasi reiciendis inventore aspernatur unde non laudantium possimus.

Odio animi natus soluta, quod sed cum deserunt placeat deleniti perspiciatis. Ab rerum dolor architecto! Delectus, soluta laboriosam aliquid voluptatibus vero quod quam laborum. A harum, consequatur in necessitatibus excepturi!

Dignissimos laudantium deserunt quasi recusandae, nostrum voluptatum animi corporis eveniet corrupti iure voluptatibus esse dolore omnis dolorem necessitatibus impedit consequuntur earum. Dolor ad molestiae, odio nihil non hic, labore sit?

Magni adipisci nemo sint soluta necessitatibus, nisi eos aperiam similique nesciunt ab officiis maxime quo cupiditate. Esse eum id sunt totam sint accusantium iste eius asperiores maiores error! Amet, obcaecati.

Aspernatur voluptates sint ad dicta veniam. Provident distinctio sapiente numquam, laborum nobis itaque incidunt ipsam facilis, totam alias earum, tenetur corporis quaerat eveniet possimus iure unde quos hic eos minus.

Dolorem provident, similique sapiente ad animi sequi distinctio, aliquam at perspiciatis, maxime minima eveniet architecto. Adipisci iure incidunt atque fugit tempora cupiditate, voluptatem nihil delectus quaerat libero iusto quisquam dolores.

Voluptate hic incidunt excepturi, odit tempora commodi officiis autem in laboriosam sunt molestias, dolor quaerat enim pariatur eligendi repudiandae! Fugit quaerat facilis dicta laudantium reiciendis nobis velit sit nihil nostrum.

At architecto sint quidem perspiciatis numquam id vitae iste, ducimus consequuntur mollitia qui autem vero voluptates aut deserunt debitis obcaecati quis nobis magnam nostrum sunt velit assumenda commodi. Voluptatibus, dolor.

Reiciendis, repellat minus vero ipsam non iusto vitae explicabo temporibus saepe eum voluptatum libero! Aperiam aliquam nam temporibus harum porro deserunt natus dicta voluptate, eaque ut ex cupiditate modi odit.

Assumenda inventore autem quas at eaque saepe omnis iure delectus consequuntur minima ipsum eligendi, neque architecto aut incidunt corrupti. Deserunt nemo numquam, eum excepturi. Necessitatibus aspernatur facere ullam expedita tempore.

Dolore illum doloremque, sit, sed itaque, nam labore officia deserunt quidem veniam iure veritatis dicta! Debitis architecto, sed iure placeat, sapiente at itaque suscipit dolorem maiores, culpa assumenda corporis recusandae.

Eum libero inventore reprehenderit pariatur earum facere doloribus nam odio quas necessitatibus dolores dolore, tempore eos incidunt quaerat, non, fugiat debitis consequuntur ab saepe perferendis molestiae quos aspernatur! Ducimus, officia.

Incidunt eligendi optio, unde adipisci suscipit harum officia ullam quibusdam eius expedita ipsam reiciendis voluptatibus similique quidem cumque eum quasi fuga. Veritatis reiciendis quam laudantium ullam odio animi similique porro!

Eum magnam quasi, ratione sit assumenda. Voluptas distinctio, illo consequuntur nihil veniam doloribus dolor quisquam optio, accusantium dolorem. Distinctio error sit delectus, ab natus eveniet atque ipsam, molestias debitis eum!

Impedit quidem similique quos amet rerum, blanditiis, dolor eum natus nostrum facilis sit fuga dicta suscipit praesentium, adipisci nesciunt quibusdam laborum? Facilis facere voluptatum id eaque voluptatem maxime odio eveniet.

Nisi impedit omnis libero unde sapiente nihil repudiandae quaerat esse dicta iste deleniti, amet aliquam dolores temporibus aspernatur et mollitia sequi animi, iure debitis inventore? Natus inventore harum blanditiis aperiam.

Voluptates praesentium obcaecati maxime quasi similique pariatur accusamus ducimus hic ea adipisci. Maxime illo, modi id ratione illum labore ut omnis eos rem nesciunt molestias fugiat voluptas? Ex, eos, non!

Exercitationem aut totam quasi tenetur provident vitae id, obcaecati quo, labore sed iure laboriosam? Blanditiis, porro accusantium sunt eum, tempore maxime dicta quae perspiciatis praesentium, minima, odio aut placeat numquam.

Odit nemo distinctio, dolor, officiis repellat vitae quia sed corporis, pariatur fuga fugit. Nobis maiores eaque ullam, facilis culpa. Autem molestiae modi, necessitatibus mollitia quaerat eveniet beatae ratione animi veniam!

Laboriosam harum impedit, error, reprehenderit quod velit quisquam dolores. Adipisci, ea tempora praesentium tempore architecto, enim. Autem temporibus non quasi est, cumque quia velit. Ipsa, non, autem? Rerum, dolorem, deserunt.

Culpa, est voluptatibus blanditiis consequatur distinctio. Dolor harum vitae odit voluptatem beatae laborum. Amet facere, possimus ipsam eum, explicabo natus, quia vero sed omnis voluptates laudantium excepturi. Maxime, hic, vitae!

Eos hic, delectus cupiditate consequuntur minus sequi fuga error. Sed vero, ut modi possimus a voluptate iure, ducimus, dolor reprehenderit numquam unde voluptates dignissimos maiores consequatur similique, autem et in.

Distinctio atque ullam qui beatae minus explicabo non totam tempora illo id. Amet vitae modi error laboriosam, maiores possimus enim laudantium voluptatem molestias accusamus. Fuga quia a assumenda cumque autem!

Rem illum quis corporis quia quibusdam, voluptatibus odit quae non, voluptatem commodi, quos necessitatibus aut ipsa eaque ducimus modi. Facilis culpa voluptatibus tempore sed perferendis asperiores optio aspernatur, fuga recusandae!

Blanditiis asperiores omnis voluptatem reiciendis debitis accusamus eos ipsa quisquam, accusantium corrupti mollitia, dicta ipsam ut. Illum sint cum sunt veniam eos cumque, amet aperiam sequi id consectetur commodi deserunt.

Similique dolorum porro recusandae odit soluta reiciendis exercitationem quidem reprehenderit. Fugiat cum, exercitationem quis earum? Architecto, nobis officiis vitae illo hic explicabo quae fugit. Aut ullam laborum delectus minima inventore.

Sapiente delectus voluptatem eaque provident consequuntur ad adipisci beatae consequatur nulla repellat quasi sunt in, illum earum autem itaque quo debitis enim, dolorum nam cupiditate fuga? Aperiam, laudantium sit cumque!

Maxime vitae omnis illum blanditiis saepe, consectetur minima rerum facere tempora ipsum, asperiores sint dignissimos deserunt commodi totam quod minus molestias natus ab nulla nemo eius accusantium. Architecto, est facere?

Quaerat repudiandae dolorem culpa a voluptatum ipsa molestiae. Voluptate facilis suscipit repudiandae perspiciatis dolore ipsum quasi harum fugiat nisi. Exercitationem eveniet at ipsa quia distinctio natus est ullam, officiis molestias.

Magni adipisci illo voluptatibus ipsa, deserunt, officiis atque voluptate rerum natus nisi inventore similique! Eos nostrum dolorem eaque pariatur, neque architecto eius alias fugiat, dolor, nesciunt error? Amet pariatur, atque!

Sit earum molestiae quidem voluptas, distinctio ducimus dolore pariatur architecto nobis consequuntur sunt in voluptatum sapiente neque eligendi esse autem ab omnis, reiciendis hic similique labore. Eum reiciendis officiis, repellat.

Qui ratione assumenda fugit ipsam magnam nobis odit eaque quis ea reprehenderit accusamus, sapiente iusto rerum incidunt praesentium reiciendis eius suscipit! Reiciendis delectus quas officia ut laboriosam ea fugit, aliquam!

Nostrum autem quae rem, magnam fuga placeat rerum dolor odio minima maxime esse voluptatibus corrupti excepturi, enim impedit perferendis facilis! Ex sint, non voluptates totam deleniti temporibus suscipit impedit est.

Iste voluptate officiis at error dolorem natus repellendus labore nemo doloribus, molestias commodi sit. Soluta sed dolorem inventore, dicta enim sit, nostrum tempore vel vero explicabo quam iure ipsa reprehenderit.

Eos, enim exercitationem nam similique, quisquam odio. Harum mollitia iure ducimus recusandae autem quos placeat architecto repudiandae quisquam, nulla veniam, itaque quae fuga repellat adipisci porro vero! Ut, minus, iure?

Debitis, obcaecati ratione numquam itaque inventore. Aut quidem numquam, dolore, quisquam perspiciatis nihil, vel ipsa distinctio recusandae unde atque ipsum mollitia est quaerat? Error sunt assumenda consequatur, in possimus ullam.

Iure, quisquam odio! Ratione obcaecati aspernatur, suscipit eveniet. Soluta, et delectus. Nostrum aliquid, itaque iusto recusandae? Molestiae vitae et provident quaerat officia, in voluptatum, nihil maxime non dolorum architecto maiores!

Aspernatur ratione quisquam atque, odio omnis dolores quod aperiam quibusdam ducimus architecto sint voluptatibus in, esse facere magni mollitia eveniet laboriosam repellat saepe quaerat totam cum vel minus. Deserunt, fugiat.

Beatae esse, illo sunt, blanditiis, enim molestiae asperiores quo eos commodi dolores alias iusto, totam laborum dignissimos aliquam sit magni molestias tenetur officiis? Non, totam, repellat. Ratione, quae eligendi iste.

Perferendis doloribus, reprehenderit quisquam expedita eos esse doloremque nisi nesciunt necessitatibus architecto corporis quia ut obcaecati alias totam asperiores tenetur rerum officia est suscipit temporibus soluta fuga error incidunt. Perferendis.

Animi numquam rerum, laborum quod voluptatem. Aperiam tenetur quos assumenda quidem odit facilis. Adipisci iste, veritatis, quam at numquam omnis minus animi nisi neque aliquam vel sint, sunt amet rem!

Odio dolore, quos quaerat aut omnis maiores! Debitis quis soluta sequi sapiente eveniet ratione pariatur eius perferendis. Eligendi, rerum voluptatibus! Dolor illum eos totam assumenda, quisquam illo, modi vitae ipsa?

Itaque magnam omnis, veniam et accusamus obcaecati quidem, quasi voluptatibus magni distinctio aspernatur eos totam placeat labore alias fugiat neque ea similique blanditiis velit laudantium. Tenetur at voluptate, amet perferendis.

Obcaecati voluptatem laboriosam officia veritatis doloribus culpa beatae nobis ducimus corporis amet voluptate assumenda at dolore harum est quaerat modi, ut iusto nam laudantium nesciunt iure fuga nihil maiores? Molestiae!

Incidunt quas commodi inventore modi et ducimus similique assumenda rerum aperiam itaque facere laborum totam libero voluptatem minima, cupiditate perspiciatis, iusto, dolorum explicabo! Eum ipsam aut, inventore facilis cumque veritatis.

Aut tempora at eligendi obcaecati et sapiente veniam ex odio repellat laborum fugiat voluptatem, quam ratione consectetur consequuntur dignissimos aliquam, cum excepturi earum perferendis magnam cumque voluptatum dolorum? Nemo, natus.

Velit voluptates debitis a, earum ex expedita fuga laboriosam. Id facilis eaque perspiciatis doloribus nisi nesciunt dolor possimus suscipit quasi, cum. Architecto voluptate, odit obcaecati atque ea! Quasi, ut, provident?

Aperiam id tenetur laborum, delectus sit dolor quis blanditiis fugiat, quae consequuntur libero expedita suscipit culpa quas rem nihil tempore deleniti nesciunt debitis doloribus distinctio repudiandae officiis. Officiis, quaerat cum.

Doloribus fuga reiciendis, voluptate, tenetur possimus nihil debitis temporibus necessitatibus aperiam deserunt veritatis voluptatum incidunt fugit eos laboriosam a. Numquam officia ullam cupiditate fugiat natus optio delectus, reiciendis sunt obcaecati.

Sit quae aliquid omnis dolore vitae officiis iusto eveniet, nostrum, ducimus odio blanditiis dicta alias adipisci sed ipsum magni doloremque ex doloribus illum totam, natus possimus incidunt id. Recusandae, nesciunt!

Voluptas neque, distinctio ea. Aliquam vero, error officiis nobis consequatur est! Error perspiciatis quia modi sequi illum at, sapiente fugit unde ullam provident amet maiores excepturi nemo incidunt consequatur facilis?

Porro tenetur, mollitia facere, dolore tempore eius praesentium deleniti, dolorem assumenda eligendi perferendis! Blanditiis atque est expedita illum at ipsum, tenetur incidunt inventore a et nihil omnis, fuga iste sit.

Optio dolor autem odio nemo earum similique harum ad repudiandae facilis minima necessitatibus blanditiis temporibus, magnam repellat incidunt alias est eos ducimus ullam architecto. Suscipit ratione, velit maxime tempore praesentium.

Nobis iure laborum maiores, error ipsum ex quo nulla quas quibusdam, eius voluptas, dolore facere repellendus alias distinctio aliquid unde nesciunt, pariatur. Aliquid illum repudiandae, quisquam corporis, et ipsum recusandae?

Illum aliquam a, ab necessitatibus! Modi architecto rem quod quidem pariatur animi ad quisquam consequuntur a est totam tenetur deserunt distinctio ex amet voluptatibus quibusdam adipisci, ipsam. Autem numquam, non.

Ab soluta, praesentium nostrum aspernatur placeat modi porro aut maiores temporibus. Quidem id, suscipit ipsa ratione vero aut itaque sunt inventore enim saepe, minima ea vel! Reprehenderit cupiditate illum voluptate?

Quod numquam mollitia voluptate perferendis provident impedit dicta odit libero, obcaecati. In obcaecati aperiam nam ipsum, animi ab odit ipsa quidem doloremque, assumenda facere. Nulla officia, quas voluptatibus alias distinctio?

Officiis veritatis saepe nam neque cumque ipsa illum fugiat quis, rem repellendus quam temporibus ad! Porro quia architecto iure et libero doloribus corporis est perspiciatis, corrupti. Saepe vero voluptates ea.

Provident repellat non tenetur laborum atque eum voluptatem soluta consequuntur ipsam illum! Corporis sapiente voluptatum pariatur, quisquam, quo est ullam accusamus corrupti rem nulla ipsum nihil adipisci obcaecati repellat molestias?

Labore earum repellat dolorum aspernatur perspiciatis totam velit odio a itaque, nisi aperiam maiores fuga omnis perferendis architecto veniam ab consequuntur hic sequi, optio voluptates iste aut dolores. Accusamus, odit?

Saepe modi, inventore voluptatum sit facere incidunt quasi illo alias aliquam, vero quis molestias labore mollitia enim error minima quo ratione minus, natus. Sequi nostrum aliquam possimus ut, minus tempore!

Veniam laudantium reprehenderit adipisci optio magni, iure non quisquam voluptas illo ipsa. Nemo alias tenetur nihil magni, corrupti inventore in sit saepe quaerat deserunt quos, tempora ducimus, illo iusto maxime.

Odit officiis error fugit repellendus vel, voluptas nesciunt vero odio velit dolor consequatur et necessitatibus magni laboriosam non similique debitis quo, animi rem dolores. Debitis nam excepturi ipsum eius molestiae?

Odio adipisci et est aperiam at ut non explicabo ab ipsa illum! Illo sapiente ratione laborum placeat consectetur veniam dolores ex. Quisquam sapiente, laborum. Et assumenda ducimus quis quia facilis!

Explicabo reiciendis earum obcaecati modi, harum! Mollitia iste, aspernatur omnis velit atque! Ullam eveniet error debitis voluptates, alias, eaque architecto fugit accusantium. Praesentium eius consequuntur, ipsam reprehenderit excepturi! Voluptate, assumenda!

Ducimus ipsum pariatur, nesciunt molestias quae porro beatae quibusdam natus ab repellat repellendus enim accusantium praesentium molestiae, officiis ullam nobis eius commodi asperiores consequuntur deserunt. Aut autem tempora a, at.

Molestiae fuga aspernatur omnis voluptates, debitis atque dolores vero consectetur obcaecati porro maiores et cupiditate modi minus, dolorem dolor alias eligendi iste, cumque iusto! Id atque perferendis sed, voluptatibus fugiat.

Accusantium ipsam, reiciendis doloremque ipsa corporis similique. Tempore sit, molestias aliquid non incidunt rerum magnam at, laudantium minus dicta quam earum debitis animi placeat? Odio iure, a cupiditate possimus accusamus!

Incidunt, placeat autem nobis dolorum eaque libero ea non earum fugit nemo illo beatae labore distinctio architecto itaque. Repellat ipsam, earum maxime nesciunt laborum nisi minima iusto sed. Nulla, sit.

In recusandae soluta autem iusto voluptate eius iure repudiandae adipisci ex libero, ducimus provident, animi accusamus. Animi odio omnis at quidem magni veniam aut porro, voluptatem velit temporibus quis ipsa?

Itaque voluptatum, laboriosam nobis commodi eveniet. Reiciendis quia, illum ex. Nihil obcaecati deleniti, dolor debitis laboriosam atque fuga recusandae animi veniam harum tempore consequuntur! Dicta tenetur quo quaerat numquam omnis!

Beatae, libero, harum. Non error ut earum facilis, dolores modi beatae at magni deleniti quae tenetur excepturi optio distinctio inventore quod. Neque tenetur expedita saepe quis esse dolorem, animi voluptates.

Accusamus numquam quos dolor impedit molestiae dolorum cupiditate alias esse iusto assumenda deleniti repudiandae, ratione cumque mollitia quidem ex, molestias quam error tempore optio repellendus. Eos totam magnam soluta, odit.

A molestiae odio libero expedita voluptates distinctio nulla eius culpa provident eaque animi, soluta eos amet voluptas incidunt sunt in! Quisquam architecto deleniti, animi ipsum culpa itaque officia unde labore!

Itaque, aliquam, cupiditate. Rerum cum excepturi aliquam, minus facilis quod tempore ea modi commodi quaerat debitis deleniti est unde accusantium rem eos dicta placeat beatae, perferendis cupiditate dolor pariatur earum!

Eveniet provident dolores excepturi aperiam, fugit quia. Recusandae ullam minus facere dicta labore reiciendis porro, quia aliquam harum, nobis asperiores ratione quam. Voluptatem dolorem magni, suscipit est non, laudantium eius.

Exercitationem neque quo fugit dolorum nemo ea eius culpa nisi architecto quas illum harum commodi voluptatibus voluptates dolores veritatis aliquid rerum aspernatur quaerat ad nihil nesciunt laborum, illo quod vero.

Aperiam ipsa dicta quidem numquam! Explicabo quasi obcaecati aperiam aliquam odio nam, amet non nihil dolorem dolore. Non, iusto expedita, sapiente voluptatem corrupti deserunt consequuntur maiores magni, voluptas tempora quae.

Harum necessitatibus temporibus, odit. Obcaecati iure sed, soluta consequatur neque totam eos suscipit id! Cum repudiandae quos, doloremque cumque voluptatem deserunt porro odit harum nostrum, qui illo error consequatur quas!

Numquam sint architecto eaque dolorum nobis rerum, laborum ullam quam blanditiis ipsa pariatur esse illo cumque. Maxime, incidunt impedit doloribus hic quia similique autem nemo tenetur, veniam unde dolorem maiores.

Voluptas consequuntur, suscipit, ad quis quidem placeat libero tempora, veritatis, numquam quia nisi nam? Magni accusantium architecto porro quod voluptate minima facilis ducimus neque quidem hic ab animi aspernatur, non.

Eius veniam amet aliquam aperiam, temporibus, id distinctio quas sunt autem minima suscipit. Nihil iste, quam cupiditate, quidem odit animi, debitis illum odio voluptatibus officiis voluptate! Quaerat aliquid illum molestiae.

Incidunt distinctio molestiae inventore fuga earum mollitia error reiciendis obcaecati impedit labore recusandae, similique alias maxime, ipsum eos. Nemo dolor, nisi aut quo ex dolore, earum a enim possimus quibusdam.

Doloremque enim tempore numquam quo quasi quidem sed, reprehenderit tempora vero nobis aperiam saepe hic obcaecati voluptate fugiat ipsam esse dolor itaque illum sapiente perferendis eos aliquam. Minima, corrupti, dolorem.

Explicabo id aliquam est sed temporibus voluptatibus officiis, animi tempore fugit consequatur iure placeat deserunt minima, quibusdam magni vitae eum quidem iusto, praesentium aspernatur doloribus, sequi optio! Natus, sequi, consequuntur!

Voluptatibus numquam assumenda ex architecto, magni, et molestiae iure. Tenetur minus, dignissimos sapiente, nostrum, inventore in libero aliquam velit culpa, asperiores aliquid voluptas quibusdam molestiae possimus ex quia quam! Vel.

Vitae incidunt, ducimus neque! Incidunt libero facere officia, esse. Sapiente suscipit repellat distinctio quod, fugiat, iure animi, cum officiis modi libero eaque, ea perspiciatis blanditiis expedita consectetur quis? Sequi, soluta!

Nulla facere est repudiandae quos doloremque enim distinctio, beatae itaque adipisci similique, dolore temporibus, iste eaque? Dignissimos sapiente quos beatae odio debitis nemo! Veniam cupiditate fuga voluptatibus, alias ipsa et.

Necessitatibus, iste numquam dignissimos tempora sint saepe, vero deserunt illum. A pariatur illo nihil consequuntur blanditiis iusto, sit atque hic sint velit consequatur deleniti, magnam adipisci incidunt voluptatem, maiores amet!

Mollitia, hic repudiandae laudantium. Ratione earum dolor quam eum labore magni quasi, praesentium maxime laudantium non unde asperiores placeat perspiciatis obcaecati dolorem aliquid, repellendus omnis dolore iure assumenda! Cumque, repellendus.

Libero voluptatem repudiandae enim molestiae perspiciatis, ab ipsam consectetur sed quam itaque similique, eligendi error ullam perferendis mollitia, nisi quaerat tempora. Eligendi repudiandae cumque, minus qui veritatis odit necessitatibus voluptatibus!

Eaque temporibus aperiam quibusdam unde voluptatum culpa molestias facilis voluptatem, doloribus consequatur saepe reprehenderit amet, consequuntur fugiat doloremque! Voluptates dignissimos beatae laboriosam ea, molestiae amet blanditiis voluptatem architecto illum aspernatur.

Dignissimos distinctio velit, laboriosam aliquam. Magnam nobis dolor magni optio, dolorem eius consectetur similique rerum facilis eos voluptatem tempora beatae dignissimos ut eligendi, culpa omnis quasi accusamus quis vel consequuntur!

Omnis, non, impedit ipsa unde esse hic voluptatibus quam, reiciendis minima obcaecati illum quisquam amet optio vel quos cumque, praesentium temporibus exercitationem iusto voluptatem suscipit. Libero perferendis temporibus, quas rerum.

Deserunt neque ducimus perspiciatis officia! Maxime consectetur esse, nesciunt doloremque nemo rem rerum quod molestias fuga nulla odit officiis incidunt ratione aperiam maiores itaque! Unde officiis, nemo ipsam expedita ipsa!

Obcaecati pariatur dolore, iure quae itaque cumque totam voluptate beatae temporibus, alias quia odio eius minima corporis molestias ab excepturi recusandae cupiditate dolor doloribus labore sapiente quibusdam, ipsam ratione. Totam.

Quam reiciendis, eveniet. Dicta accusamus blanditiis labore excepturi vero eos iste esse ab quasi corporis nobis magnam, iusto aliquam sequi hic ullam. Accusamus unde voluptatem veritatis, voluptates! Incidunt ducimus, harum.

Background-blend-mode • Про CSS

На этой неделе в Firefox 30 было включено по умолчанию свойство background-blend-mode. Таким образом, Firefox стал третьим браузером, поддерживающим это свойство (два других — Opera и Chrome). Safari будет поддерживать это свойство в следующей версии, про планы IE мне ничего найти не удалось.

Внимание: все демо в посте — действующие примеры без фолбеков. Для просмотра лучше всего воспользоваться последними версиями Chrome, Opera или Firefox.

Что делает это новое свойство и какие возможности оно нам дает?

background-blend-mode управляет режимами наложения слоев фона, заданного в CSS.

Пример:

Наведите курсор на картинку, чтобы увидеть исходное изображение.

background-blend-mode аналогичен режимам наложения слоев в фотошопе, и список возможных значений свойства вам, скорее всего, покажется знакомым:

  • normal
  • multiply
  • screen
  • overlay
  • darken
  • lighten
  • color-dodge
  • color-burn
  • hard-light
  • soft-light
  • difference
  • exclusion
  • hue
  • saturation
  • color
  • luminosity

Как это работает?

Возьмем, к примеру, картинку с котиком и зададим её фоном:

background: teal url(http://placekitten.com/250/200);

Для наложения слоев обязательное условие, чтобы слоев было больше одного. В нашем случае первым слоем является цвет (teal).

Теперь можно добавить режим наложения, например:

background: teal url(http://placekitten.com/250/200);
background-blend-mode: hard-light;

Результат:

Вы можете поиграться с режимами здесь или посмотреть их списком на одной странице вот тут.

Слоев фона может быть больше двух, и для каждого слоя можно отдельно задавать режим наложения:

background: teal url(http://placekitten.com/250/200);
background-blend-mode: hard-light, multiply, normal;

Фоны могут содержать не только изображения, но и градиенты, что позволяет делать разные интересные эффекты:

Как можно использовать background-blend-mode?

Предположим, есть сайт в определенной цветовой гамме, и в дизайне нужно разместить несколько картинок:

Так картинки не очень вписываются в цветовую схему. Раньше чтобы тонировать изображения под цвет сайта, потребовалось бы открыть графический редактор и проделать эту операцию с каждой картинкой, но сейчас это можно сделать одной строчкой:

background-blend-mode: luminosity;

Результат:

Способ имеет свои преимущества:

  1. Экономит время — не нужно вручную красить картинки, используемые в дизайне. Особо пригодятся режимы наложения в прототипировании, когда картинки, скорее всего, ещё будут меняться.
  2. Позволяет легко сделать эффект, когда при наведении картинка показывается в оригинальном цвете. При этом не нужно готовить два изображения и менять их по наведению курсора — достаточно одного.

А если потом изменится цветовая схема сайта — не нужно будет заново перекрашивать картинки под новую схему — всё произойдет само собой:

Правда, мне не удалось сделать плавную смену режимов наложения. Насколько я понимаю, они не анимируются. Но это можно обойти используя псевдоэлементы: через :before создается дублирующий слой с той же картинкой, и ему по наведению меняется прозрачность — это можно сделать плавно (пример справа):

Ещё один способ покрасить картинку в дизайне — подложить полосатый градиент:

Приятный бонус background-blend-mode — плавная деградация: если браузер не поддерживает режимы наложения, посетитель увидит обычную картинку. Может быть, она будет не очень вписана в цветовую схему, но это лучше чем ничего.

Интересно, что в некоторых режимах результат различается в зависимости от того, наложена ли картинка на цвет или цвет поверх картинки (слева картинка поверх цвета, справа наоборот):

Наложение цвета на картинку позволяет получить более интересные результаты, похожие на цветовые фильтры, но этот вариант хуже с точки зрения деградации, потому что если режимы не сработают, на странице отобразится верхний слой — то есть заливка цветом.

С изображениями всё более-менее понятно, но вот для CSS-градиентов режимы наложения поистине открывают новые горизонты. Теперь слои градиентов могут не просто просвечивать друг под другом в областях полной или частичной прозрачности, но также они могут взаимодействовать с нижележащими слоями, образовуя новые сочетания. Делать такие градиенты безусловно сложнее, но и интереснее тоже.

Уже есть первая галерея с примерами: bennettfeely.com/gradients/. Ниже на странице можно найти JS-фолбек и взвешивание одних и тех же градиентов, сделанных на CSS или в виде изображений различных форматов. CSS, конечно, выигрывает.

И даже если пока что не все браузеры позволяют использовать background-blend-mode, имеет смысл поинтересоваться какие из используемых вами изображений уже можно заменить CSS-паттернами, чтобы получить выигрыш в весе и производительности.

Вдохновившись примерами из галереи, я решила посмотреть что ещё можно сделать. Одно из забавных открытий — шахматная доска:

Без режимов наложения такое клеточки делать немного головоломно (хотя на основе такого градиента можно получить множество других). С режимами клеточки делаются всего из двух градиентов, третий понадобится в случае если клеточки должны быть не черно-белыми, а цветными.

Правда, паттерн не всегда хорошо поддаётся перекрашиванию, это некоторый недостаток способа. С другой стороны, в этом случае заливкой клеток может быть не только цвет, но и градиент, что в предыдущем способе было бы не очень удобно делать.

Ещё несколько градиентов:

Можете отредактировать любой из них отключив режимы наложения и посмотреть что меняется (а также увидеть как выглядят паттерны в бразуерах без поддержки свойства), можете попробовать менять режимы местами, вписывать свои значения или менять цвет фона. Иногда в процессе таких экспериментов из одного паттерна получается ещё несколько.

background-blend-mode выглядит очень привлекательно, позволяя добавить немного магии фотошопа в привычный CSS.

Полностью адаптируемый видео бэкграунд. Включая примеры с JS и CSS (Full Background)

Видео бекграунд – полностью адаптивный

Если Вы хотите реализовать “человеческий” видео бекграунд, видео в котором будет всегда располагаться по центру и не иметь черных полос при масштабировании по вертикали (сверху и с низу) и по горизонтали (слова или справа). Видео бекграунд который находится в элементе.

И так начнем! Когда мне потребовалось реализовать видео бекграунд чтобы полностью покрыть фоновую область просмотра видео роликом, я решил, что мне придется использовать JavaScript, измерить область просмотра, а затем изменить размер и расположение видео соответственно полученным вычислениям.

Но после долгих мучений оказалось что в CSS, есть решение позволяющее полностью обойтись без JS. То что мы получим в итоге я сразу предоставляю ниже.

Видео бекграунд основной пример (полностью адаптируется и ведет себя как свойство background-position:cover в CSS):

[iframe src=https://codepen.io/dydaevskiy/embed/qLpEYG]

Блок для видео по умолчанию

Взять <video> элемент и сделать его перекрывающим область просмотра так же просто, как с любым элементом HTML, например, с фиксированной позицией:

#myvid {
 position: fixed;
 top: 0;
 right: 0;
 bottom: 0;
 left: 0;
}

Это заставляет наш элемент видео принимать ширину и высоту области просмотра. Но если наш видео источник имеет формат, отличный от разрешения пропорций экрана «(и это почти наверняка будет в случае , если мы используем только ширину и высоту! Окна просмотра), мы в конечном итоге получим черные полосы :

16: 9 источник видео в квадратном <video> элементе

Если вы привыкли к background-size свойству в CSS, вы знаете, что оно имеет значение «cover», которое дает именно тот эффект, которого мы пытаемся достичь здесь. Если бы мы могли использовать то же самое для изображений и видео контента при реализации задачи!

Ну, мы можем это сделать при помощи, object-fit! Увы, есть подвох.

Использование подгонки объекта

В браузерах, которые поддерживают object-fit свойство CSS, мы могли бы легко это исправить:

#myvid {
  
  object-fit: cover;
}

Эта object-fit функция была разработана для всех визуальных элементов мультимедиа, включая изображения и видео. Это позволяет сообщать браузерам, как они должны помещать один прямоугольник (источник мультимедиа) в другой прямоугольник (элемент мультимедиа). В частности, он имеет cover и contain значения, которые работают так же, как аналогичные значения background-size. Также есть object-position свойство, похожее на background-position другое, за исключением того, что по умолчанию все центрировано ( object-position: 50% 50%).

Итак, object-fit делает все , что мы хотим, но … он поддерживается только в последних версиях Chrome (см. Таблицу поддержки «Могу ли я использовать» ). Небольшая заметка о поддержке прошлого и будущего:

В любом случае, сейчас это не будет работать для наших нужд, поэтому давайте найдем работоспособное решение CSS.

Как работает видеоцентрирование? Возможны две ситуации: видео может быть переполнено по вертикали, или переполнено по горизонтали (и поиск решения на то и другое, это просто пустая трата).

Картинка может помочь:

Проблемы при масштабировании – Серый фон для видео и красные черточки для окна просмотра

Если соотношение сторон окна просмотра больше, чем соотношение сторон видео, видео будет переполнено сверху и снизу (первый пример). Если соотношение сторон окна просмотра меньше, видео будет переполнено слева и справа.

Если мы уже знаем соотношение сторон видео, мы можем кодировать это в CSS. Обратите внимание, что нам нужно жестко закодировать соотношение сторон видео в медиазапросах:

#myvid {
  position: fixed;
  top: 0;
  left: 0;
}
@media (min-aspect-ratio: 16/9) {
  #myvid {
    width: 100%;
    height: auto; 
  }
}
@media (max-aspect-ratio: 16/9) {
  #myvid {
    width: auto; 
    height: 100%;
  }
}

Благодаря этому у нас есть правильные, полностью реагирующие размеры для нашего видео, независимо от размеров области просмотра. Но и от этого наш видео бекграунд все еще не располагается по центру.

Центрирующий трюк

Мы могли бы попытаться отцентрировать видео, используя отрицательные top (или margin-top) или left (или margin-left) значения, но получить правильное количество пикселей для смещения видео не так просто. Я на самом деле пытался использовать calc() и единицы просмотра, это работало в Firefox и терпело неудачу в Chrome и Safari, и в целом это выглядело действительно загадочно. Короче не хорошее решение!

Итак, как мы можем центрировать блок с видео, который шире или выше, чем область просмотра, если мы не знаем его точных размеров? Легко! Мы делаем контейнер с большим размером, который больше, чем видео, и больше, чем область просмотра.

Вот грубая идея на картинке:

Пунктирный контур по-прежнему является нашим окном просмотра, светлый прямоугольник – нашим видео, а темная область – нашим контейнером с большим размером. Затем мы можем использовать любую технику центрирования CSS по нашему выбору (скажем, Flexbox) для центрирования видео внутри контейнера.

Но угадайте, что работает как контейнер, который автоматически центрирует видео? Поэтому мы можем пропустить создание блока и использование техник центрирования CSS! Теперь нам просто нужно сделать наш элемент видео слишком высоким или слишком широким и позволить браузеру обрабатывать центрирование автоматически и по умолчанию (по сути блок

по отображению получается похож на background-size:contain фонового изображения в CSS)
#myvid {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
@media (min-aspect-ratio: 16/9) {
  #myvid {
    height: 300%; top: -100%;
    
  }
}
@media (max-aspect-ratio: 16/9) {
  #myvid {
    width: 300%; left: -100%;
    
  }
}

Это будет хорошо работать. Но я бы также порекомендовал использовать контейнер

для переноса видео, и дать этому контейнеру размеры области просмотра (пунктирный контур). Почему? Потому что, если вы хотите добавить скриптовые кнопки вместе с вашим видео или любыми другими метаданными или контентом, которые вы хотите отображать поверх видео во время воспроизведения, это окажется полезным. Итак, давайте используем немного более подробную конфигурацию:

#SDStudio_VIDEO_BACKGROUND {
  position: fixed;
  top: 0; right: 0; bottom: 0; left: 0;
  overflow: hidden;
}
#SDStudio_VIDEO_BACKGROUND > video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

@media (min-aspect-ratio: 16/9) {
  #SDStudio_VIDEO_BACKGROUND > video { height: 300%; top: -100%; }
}
@media (max-aspect-ratio: 16/9) {
  #SDStudio_VIDEO_BACKGROUND > video { width: 300%; left: -100%; }
}

@supports (object-fit: cover) {
  #SDStudio_VIDEO_BACKGROUND > video {
    top: 0; left: 0;
    width: 100%; height: 100%;
    object-fit: cover;
  }
}

И … Вот и все! Возможно, вы захотите посмотреть страницу примера и изменить размер окна вашего браузера во время воспроизведения видео.

Пример который будет предоставлен в конце данного пункта, это сырой пример с применением всего что я описал Выше, на основе которого создан видео бекгрунд (видео фон) моего основного сайта http://sdstudio.top/. С той разницей что идентификатор #SDStudio_VIDEO_BACKGROUND был применен к секции созданной при помощи конструктора страниц ELEMENTOR. Но для того что бы описать каким именно образом осуществить применение видео бэкграунда в ELEMENTOR’E я считаю правильным написать отдельный пост,и уже не сегодня…. Как не как третий час ночи :).

На этом все, надеюсь я разъяснил максимально доступно каким образом можно создать полностью адаптируемый и правильный видео фон для Вашего сайта или очередного проекта.

ПС. Отдельное спасибо автору данного поста: https://fvsch.com/video-background/

Источник записи:

где применять и как сделать самому

 

Доброго времени суток всем, кто прямо сейчас читает мой блог! Каждый из вас хоть раз, но встречался с такими сайтами, на которых при масштабировании фоновое изображение или другие важные графические объекты «прятались» за границами экрана.

В некоторых случаях это критично для пользователя, ведь полезная информация просто исчезает. Именно поэтому в текущей статье я расскажу, как сделать резиновый фон css — средствами, раскрою маленькие хитрости и конечно же приведу контрольные примеры. Думаю, пришло время приступать к обучению!

Что такое резиновый фон и как им пользоваться?

Как вы уже наверняка догадались, речь пойдет именно о фоновых изображениях и об их растягивании и одновременном масштабировании на весь экран вне зависимости от размера последнего. По сути это и называется резиновым фоном или резиновой картинкой на заднем фоне.

Как же его можно заприметить на веб-сервисах? Очень просто. При увеличении или уменьшении окна браузера внедренные объекты (текст, рисунки, кнопки и т.д.) будут сдвигаться, подстраиваясь под размер вкладки.

В этот же момент резиновое изображение почти не будет видоизменяться. А если масштабируемое окно сохранит пропорции, то фон останется идентичен и только размер изображения будет колебаться.

Каким образом создается резиновый фон?

Существует несколько способов «превращения» обычного изображения в растягиваемое. Все они используют одно и то же свойство. Отличие состоит только в том, что второй способ, о котором я расскажу, появился благодаря css3.

Главные инструменты, которые используются в обеих вариантах, это background-size и background.

Первое свойство управляет размером изображения, а второе задает сам путь к картинке. Также через background можно указать повторяемость и пролистывание вместе с контентом.

Итак, начнем с первого и более старого варианта.

Растягиваемость картинки устанавливается при помощи процентов. Так, строка background-size: 100% растянет изображение на все окно браузера вне зависимости от его размера.

 

В некоторых случаях можно увидеть и такой код: background-size: 100% auto.

Атрибут auto отвечает за вертикальное размещение картинки, которое должно автоматически подстраиваться под высоту вкладки.

Для наглядности разберем пример. Для сайта был сверстан блок с текстом и задано резиновое изображение.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>Растягиваемый фон</title>
  <style>
   body {
    background: url(https://www.zastavki.com/pictures/originals/2012/Nature_Flowers_Big_flowers_of_a_sunflower_036583_.jpg) no-repeat center center fixed;
    -o-background-size: 100% auto; 
    -webkit-background-size: 100% auto;
    -moz-background-size: 100% auto; 
    background-size: 100% auto; 
  text-align: center;
color: #8B2500;
   }
div {
background: #FFFACD;
border: 5px double #FFA500;
width: 86%;
 margin: 4% 4% 4% 4%;
padding: 35px;
} 
h2 {
color: #FFA500;
text-shadow: 2px 2px 1px #8B4513;
}
  </style>
 </head>
 <body>
<div>
 <h2>Создайте солнечное настроение вместе с туристической компанией "Подсолнух"</h2>
 <p>Мы предлагаем туры в солнечную Мексику, загадочный Египет, великолепную Францию. ..</p>
</div>
 </body>
</html>

<!DOCTYPE html> <html> <head> <meta charset=»utf-8″> <title>Растягиваемый фон</title> <style> body { background: url(https://www.zastavki.com/pictures/originals/2012/Nature_Flowers_Big_flowers_of_a_sunflower_036583_.jpg) no-repeat center center fixed; -o-background-size: 100% auto; -webkit-background-size: 100% auto; -moz-background-size: 100% auto; background-size: 100% auto; text-align: center; color: #8B2500; } div { background: #FFFACD; border: 5px double #FFA500; width: 86%; margin: 4% 4% 4% 4%; padding: 35px; } h2 { color: #FFA500; text-shadow: 2px 2px 1px #8B4513; } </style> </head> <body> <div> <h2>Создайте солнечное настроение вместе с туристической компанией «Подсолнух»</h2> <p>Мы предлагаем туры в солнечную Мексику, загадочный Египет, великолепную Францию…</p> </div> </body> </html>

Обратите внимание на такие моменты:

  1. background: url (http://www. zastavki.com/pictures/originals/2012/Nature_Flowers_Big_flowers_of_a_sunflower_036583_.jpg) no-repeat center center fixed. В этой строчке кода я описал изображение как фиксированное (оно не будет скролироваться вместе с содержимым веб-страницы) и не повторяющееся.
  2. Что касается слов center center, то они указывают, какая именно часть изображения всегда будет видна вне зависимости от масштаба. Первый параметр отвечает за левый и правый край рисунка, а второй – верхний и нижний край. Таким образом можно закрепить изображение так: left bottom.
  3. В этом случае указанные границы всегда будут видны пользователю и само фоновое изображение сместиться. Также можно задавать данные значения через пикселы. Например, вместо первого параметра пишем 150px и тогда изображение сдвинется вправо на указанное число единиц.
  4. margin: 4% 4% 4% 4%. Такой способ указания отступов позволит даже в маленьком окне браузера сохранить расстояние между краями вкладки и блоком с текстом.

Выбирайте картинки только большого размера и хорошего качества, чтоб при масштабировании фон не размывался.

Во втором способе создания резинового фона используется ключевое свойство cover, которое появилось в спецификации css3.

Замените у background- size параметры 100% auto на cover и оцените результат.

На этом у меня все. Если вам понравилась публикация, то обязательно подписывайтесь на обновления моего блога, а также делитесь впечатлениями и новыми знаниями с друзьями. Пока-пока!

С уважением, Роман Чуешов

 

 

Прочитано: 424 раз

Справочник по CSS : Тематический указатель : Справочник по свойствам и атрибутам : Цвет и фон : background — Справочник Web-языков

Материал из Справочник Web-языков

Атрибут background | Свойство background

Задает от 1 до 5 свойств фона для объекта.

Синтаксис

HTML { background : sBackground }
Скрипты [ sBackground = ] object.style.background

Возможные значения

sBackground
Строка, которая может определять и принимать одно или несколько из следующих значений, значения описываются в любом порядке:

Это свойство не наследуется.

Значением по умолчанию для background является transparent none repeat scroll 0% 0%.

Замечания

Свойство background является составным. Разумеется, можно использовать отдельные свойства для задания параметров объекта, но, как правило, более удобным является их задание внутри одного составного свойства.

Если при задании составного свойства для фона некоторые его отдельные свойства не описаны, то им назначаются значения по умолчанию. Например, значением по умолчанию для изображения является none. Таким образом, если вы напишите background: white, то это будет эквивалентно записи background: white none repeat scroll 0% 0%. То есть, дополнительно к тому, что фоновым цветом будет установлен белый, также отменяются все настройки для повторения, прокрутки, изображения и позиционирования фона, установленные ранее.

Фон с настроенными свойствами отображается позади контента объекта и отступов (padding). Однако, свойства для границы (border) задаются отдельно; например, цвет фона на нее не влияет.

Поддерживаемые браузерами цвета фона можно посмотреть в таблице Коды и названия цветов в HTML.

Примеры

Следующие примеры иллюстрируют применение свойства background и атрибута background для задания различных параметров фона объекта.

В первом примере используется атрибут background для изменения фонового цвета (background-сolor) и расположения (background-position) изображения при наведении курсора мыши на него.

<STYLE>
.style1{background:beige url(sphere.jpg) no-repeat top center}
.style2{background:ivory url(sphere.jpeg) no-repeat bottom right}
</STYLE>
</HEAD> 
<BODY>
<SPAN
   >
. . .  </SPAN>

Во втором примере для изменения фонового цвета (backgroundСolor) и расположения (backgroundPosition) изображения при клике мышью по нему используется свойство background.

<SPAN>
. . . </SPAN>

Стандарты

Это свойство определено в World Wide Web Consortium (W3C) Document Object Model (DOM) Level 1 и Cascading Style Sheets (CSS), Level 1 (CSS1)

Поддерживаемые браузеры

Internet Explorer 5.5, 6.0, 7.0, 8.0

Opera 7.0, 8.0, 9.2, 9.5

Safari 1.3, 2.0, 3.1

Firefox 1.5, 2.0, 3.0

Ссылки на источники

https://msdn.microsoft.com/en-us/library/ms530722(VS.85).aspx

https://developer.mozilla.org/en/CSS/background

CSS | Справочная информация — GeeksforGeeks

CSS | Фон

Свойства фона CSS используются для определения фоновых эффектов для элементов.

Css свойства фона следующие:

  1. Цвет фона
  2. Изображение фона
  3. Повторение фона
  4. Вложение фона
  5. Положение фона
  1. Цвет фона: Это свойство определяет цвет фона элемента.
    Синтаксис:
     body
    {
       background-color: название цвета
    } 

    Название цвета также может быть указано как: «зеленый», значение HEX как «# 5570f0», значение RGB как «rgb (25, 255, 2)».
    Пример:

    < style >

    h2 {

    background-color: blue;

    }

    стиль >

    < корпус >

    < h2 > Geeksforgeeks h2 >

    body >

    ВЫХОД:

  2. Фоновое изображение: Это свойство указывает изображение для использования в качестве фона элемента. По умолчанию изображение повторяется, чтобы покрыть весь элемент.
    Синтаксис:
    тело
    {
       фоновое изображение: ссылка;
    } 

    Пример:

    ВЫХОД:

  3. Повторение фона: По умолчанию свойство фонового изображения повторяет изображение как по горизонтали, так и по вертикали.
    Чтобы повторить изображение по горизонтали:
    Синтаксис:
    тело
    {
       фоновое изображение: ссылка;
       фон-повтор: повтор: х;
    }
     

    Пример:

    ВЫХОД:

    Чтобы повторить изображение по вертикали:

    Синтаксис:

     body
    {
       фоновое изображение: ссылка;
       фон-повтор: повтор: у;
    } 

    Пример:

    ВЫХОД:

  4. Присоединение фона: Это свойство используется для исправления фонового изображения земли. Изображение не будет прокручиваться вместе со страницей.
    Синтаксис:
     тело
    {
       background-attachment: исправлено;
    } 

    Пример:

    ВЫХОД:

  5. Background-position: Это свойство используется для установки изображения в определенное положение.
    Синтаксис:
     тело
    {
       фон-повтор: без повтора;
       положение фона: слева вверху;
    } 

    Пример:

    ВЫХОД:

Фон CSS

Пример <стиль> .backgroundBox { ширина: 200 пикселей; отступ: 3px 130px 3px 10px; фон: url ("/ pix / samples / 71. gif") золото 90% 30% без повтора; }

Свойства этого элемента div установлены с помощью свойства background, которое является сокращением для установки всех свойств фона.

Свойство CSS background - это сокращенное свойство для установки фона элемента HTML.

Это свойство позволяет вам установить большинство свойств фона с помощью одного свойства.

Свойство background устанавливает следующие свойства:

Синтаксис

[,] *

Где

= || <позиция> [/ ]? || <стиль повторения> || <приложение> || || = || <позиция> [/ ]? || <стиль повторения> || <приложение> || || || <'background-color'>

Количество элементов, разделенных запятыми, определяет количество фоновых слоев.

Возможные значения

bg-изображение
Устанавливает свойство background-image .
позиция
Устанавливает свойство background-position .
размер bg
Устанавливает свойство background-size .
повторение
Устанавливает свойство background-repeat .
насадка
Устанавливает свойство вложения фона .
ящик
Если присутствует одно значение блока , тогда оно устанавливает как background-origin , так и background-clip на это значение. Если присутствуют два значения, то первое устанавливает background-origin , а второе background-clip .
'цвет фона'
Устанавливает свойство background-color .

Кроме того, все свойства CSS также принимают следующие значения ключевых слов всего CSS в качестве единственного компонента значения своего свойства:

начальный
Представляет значение, указанное в качестве начального значения свойства.
наследовать
Представляет вычисленное значение свойства родительского элемента.
снято
Это значение действует как наследует или как начальный , в зависимости от того, унаследовано свойство или нет.Другими словами, он устанавливает для всех свойств их родительское значение, если они наследуются, или их начальное значение, если они не наследуются.

Общая информация

Пример кода

фон: url ("/ pix / smile. gif") синий 90% 30% без повтора исправлено

Официальные спецификации

15 удивительных фоновых эффектов CSS - 1stWebDesigner

Знаете ли вы, что вы можете использовать CSS для создания красивой анимации и интересных эффектов? В сочетании с HTML и JavaScript или даже сам по себе CSS может быть чрезвычайно мощным.Вы будете удивлены тем, что могут создать разработчики. От простой анимации прокрутки до сложных сред, полностью построенных на коде, эти фоновые эффекты CSS могут добавить индивидуальности вашему веб-сайту.

Что, если бы вы могли бесплатно использовать фоновые эффекты CSS, созданные другими? Такие сайты, как CodePen, были созданы для размещения кода с открытым исходным кодом или другого свободно лицензируемого кода, что означает, что вы можете использовать его в своих собственных проектах с минимальными условиями.

Это также полезно для дизайнеров, которые хотят изучить CSS или создать похожий, но индивидуальный вид. Вы можете использовать эти фрагменты кода в качестве основы для создания собственных эффектов.

Множество разработчиков создали потрясающие фоновые эффекты CSS и бесплатно выпустили их. Сегодня мы собрали 15 самых потрясающих из них. Убедитесь сами, что вы можете сделать с творческим умом и небольшим кодом!

НЕОГРАНИЧЕННАЯ ЗАГРУЗКА: электронная почта, администратор, целевая страница и шаблоны веб-сайтов

Всего от 16,50 $ в месяц!



СКАЧАТЬ

См. Фон Pen Parallax Star в CSS от Саранша Синха (@saransh) на CodePen.свет

См. Pen Pure CSS Gradient Background Animation от Мануэля Пинто (@ P1N2O) на CodePen. light

См. Эффект матового стекла Pen CSS only от Gregg OD (@GreggOD) на CodePen.light

См. CSS «Только перо»: «Падающая звезда» Юсуке Накая (@YusukeNakaya) на CodePen.light

Посмотрите книгу Pen Tri Travelers от Нейта Уайли (@natewiley) на CodePen.light

См. Pen ColorDrops от Nate Wiley (@natewiley) на CodePen.light

См. Заголовок фона с анимацией пером от Джаспера ЛаШанса (@jasperlachance) на CodePen.свет

Смотрите Pen Zero Element: DeLight Кейта Кларка (@keithclark) на CodePen.light

Посмотрите анимацию светящихся частиц Pen CSS от Нейта Вили (@natewiley) на CodePen.light

См. Эффект прокрутки фонового изображения Pen Pure CSS от carpe numidium (@carpenumidium) на CodePen.light

См. Pen CSS Multiple Background Image Parallax Animation от carpe numidium (@carpenumidium) на CodePen.light

Посмотрите эффект Pen Bokeh (CSS) Луи Хобрегтса (@Mamboleoo) на CodePen.свет

См. Экран входа в систему Pen Calm breeze от Леви Хасси (@Lewitje) на CodePen.light

См. Градиент текста с эффектом пера от Diogo Realles (@SoftwaRealles) на CodePen.light

Творчески красивые фоновые эффекты CSS

Хороший веб-дизайн производит неизгладимое впечатление на посетителей, и всегда есть что-то особенное в хорошо сделанной анимации. Если вы изо всех сил стараетесь использовать анимированный звездный или градиентный фон, или просто добавляете элегантные и тонкие эффекты параллакса на свой сайт, он может творить чудеса с вашим дизайном.

CodePen содержит исключительно открытый исходный код, сделанный разработчиками в качестве вклада в сообщество. Итак, если один из этих эффектов привлек ваше внимание, не стесняйтесь копировать его, настраивать или использовать в качестве основы для создания собственных анимаций CSS.

Просто не забудьте использовать ту же лицензию, и все на CodePen можно использовать бесплатно.

Примечание редактора: эта статья последний раз обновлялась 2 сентября 2020 г.

Этот пост может содержать партнерские ссылки. Смотрите наше раскрытие о партнерских ссылках здесь .

CSS-фоновых изображений и специальных возможностей

Было множество статей, в которых обсуждались фоновые изображения и их доступность. Кажется, не существует однозначного решения для всех браузеров и обсуждения всех текущих методов в одном месте.

Проблема

Фоновые изображения CSS часто используются вместо встроенных изображений, поскольку их можно использовать как карты спрайтов CSS. Карта спрайтов - это способ использования одного изображения и отображения только небольшой части этого изображения в виде определенного значка или элемента страницы, например вкладки страницы.Поскольку отправляется только одно изображение, оно быстрее, чем множество небольших изображений, и может повысить производительность страницы.

Основная проблема с не декоративными фоновыми изображениями CSS заключается в том, что при выключении изображений или включении режима высокой контрастности (например, в ОС Windows) фоновые изображения исчезают. Если фоновое изображение содержит текст, как в случае вкладок страниц, или содержит значимые изображения значков, то пользователи режима высокой контрастности и пользователи без изображений не увидят этот контент.Хотя это может повлиять только на пользователей программ чтения с экрана, для пользователей программ чтения с экрана эту проблему проще решить, используя атрибут title в ссылках на изображения и текст вне экрана внутри контейнеров, содержащих фоновые изображения.

Сравнение со встроенными изображениями

Эта проблема отличается для стандартного встроенного изображения, так как при его удалении браузеры вставляют замещающий текст на экран вместо них. Это может быть проблемой для маленьких значков, где не так много места, но для многих изображений это не проблема.

Требования

Для изображений текста - для чего часто используется этот метод - существует четкое требование WCAG 2 уровня AA не использовать изображения текста, когда текст может быть отображен технологической платформой. Для веб-приложений текст почти всегда может быть создан, за исключением шрифтов, которые могут отсутствовать в пользовательских системах. В этих случаях можно использовать технику стиля Куфон. Проблема все еще остается для изображений, которые не являются текстовыми, но имеют смысл, и проблемы по-прежнему актуальны для других требований доступности, таких как Раздел 508.

Решения

Невозможно просто скрыть текст за чем-либо, поскольку фоновое изображение CSS является фоновым изображением, и поэтому никакая установка его непрозрачности не приведет к закрытию текста в элементе, который его содержит. Есть несколько возможных концептуальных решений.

Не использовать фоновые изображения

Просто замените недекоративный фон CSS стандартными встроенными изображениями. Это решение не решает проблему производительности, но предоставляет доступное решение, а именно то, сколько сайтов было отображено за последние 15 лет.

Позиционирование частей встроенного изображения

Не использовать фоновые изображения - используйте встроенные изображения, но с помощью CSS, чтобы расположить только ту часть изображения, которую вы хотите видеть в нужных элементах. В основном это включает в себя создание карты спрайтов встроенного изображения. Информацию об этой технике можно найти в статье TJK Design CSS Sprite.

Использовать до или после псевдоэлементов

Для отображения изображений могут использоваться псевдоэлементы. Этот метод отлично подходит для изображений, чтобы они оставались на экране, но не поддерживается некоторыми браузерами, в основном Internet Explorer 7.Информацию об этой технике можно найти в блоге Paciello Group. Кроме того, псевдоэлементы не могут быть выбраны.

Используйте холст HTML 5

Элемент холста можно использовать для отображения изображения и размещения холста поверх текста внутри элемента. Это метод, который Cufon использует при поддержке HTML 5. В противном случае Cufon использует VML для визуализации пользовательских шрифтов. Cufon разбивает каждое слово на отдельный элемент span, и, таким образом, одним из побочных эффектов использования Cufon является то, что текст может быть разбит на части при чтении с помощью программы чтения с экрана.

Используйте хитрость позиционирования CSS

Можно разместить фоновое изображение как дочерний элемент (но поверх) элемента, содержащего текстовый эквивалент. Затем сделайте размер родительского элемента шириной изображения. Когда фоновые изображения отключены, текст отображается в некоторых браузерах, и текст также будет доступен для программ чтения с экрана.

Похоже, что этот метод не работает в разных браузерах одинаково. Firefox по-прежнему отображает текст поверх фонового изображения, в то время как Internet Explorer скрывает текст за изображением.Хотя в режиме высокой контрастности Internet Explorer не отображал текст должным образом.

Заключение

В заключение, единственный метод, который действительно доступен и поддерживается почти всеми браузерами, - это использовать встроенные изображения вместо фоновых изображений CSS для отображения недекоративного содержимого. Если требуются спрайт-карты, рассмотрите возможность использования встроенных спрайт-карт.

Хотите расширить знания своей команды о передовых методах обеспечения доступности Интернета?

Узнайте больше о наших выездных семинарах под руководством экспертов и нашем портале электронного обучения.

10 фрагментов для создания уникальных фоновых эффектов с помощью CSS

В современном веб-дизайне фоны большие (как в прямом, так и в переносном смысле). С появлением дисплеев HD (а теперь и 4K) дизайнеры создают фоны, которые занимают много места на экране. Почему? Потому что они производят невероятное визуальное впечатление и помогают рассказать историю.

Но фон - это гораздо больше, чем просто размещение фотографии или текстуры в большом пространстве. Комбинация CSS и иногда немного JavaScript позволяет создавать удивительные спецэффекты.

Давайте рассмотрим некоторые уникальные способы, с помощью которых дизайнеры делают фоны более яркими. Мы также добавим ручку для каждой техники, чтобы вы могли точно увидеть, как они работают.

Панель инструментов веб-дизайнера

Неограниченное количество скачиваний: более 1 000 000 веб-шаблонов, тем, плагинов, ресурсов дизайна и многое другое!

Изменение цвета в режиме наложения CSS

Что делает этот фоновый эффект таким крутым, так это то, что фиксированный элемент сверху меняет цвет при прокрутке пользователем.Использование свойства смешанного режима CSS позволяет изменять оттенок, который зависит от содержимого фона.

Анимация прокрутки

Напоминает видеоигры с боковой прокруткой прошлого, эта техника включает в себя два различных изображения, каждое из которых прокручивается в противоположном направлении. Это делается с помощью CSS , преобразования и некоторого JS.

С перекосом

Перекошенный фон - одна из самых популярных тенденций в веб-дизайне. Это эффект, который невероятно легко было реализовать в полиграфическом дизайне, и до сих пор было сложно реализовать в Интернете.Это чистое решение HTML / CSS делает его простым.

Движущиеся картинки

Используя довольно простой фрагмент CSS, этот фон позволяет плавно переходить между несколькими изображениями. Это делает слайдер гораздо более легким, чем традиционный JavaScript.

Анимированный градиент

Если не сделать это аккуратно, анимированный фон может отвлекать от любого содержимого, находящегося на нем. Этот пример анимированного градиента хорош тем, что дает более тонкий эффект. Используя JavaScript, вы можете определить цвета градиента в соответствии с вашей палитрой.

Размытие на свитке

Этот метод может быть весьма полезен в тех случаях, когда вы действительно хотите, чтобы посетители сосредоточились на фоновом изображении (например, заголовке новостной статьи), а затем позволяли легко читать текст поверх. Немного jQuery изменяет свойство background-size при прокрутке, чтобы создать эффект.

Появление изображения героя с наложением

В этом примере происходит несколько вещей. Во-первых, к полноразмерному главному изображению добавляется наложение цвета сверху, чтобы создать другой оттенок.Затем реализуется плавная анимация, чтобы изображение выглядело более гладким. Наконец, в микс добавлен эффект прокрутки в стиле параллакса. В результате получился очень современный вид, использующий относительно небольшой объем кода (и без JS).

Фоновое масштабирование и панорамирование

Вот эффект, который мы наблюдаем довольно часто в последнее время. Когда пользователь наводит курсор на панель, фоновое изображение увеличивается и перемещается вместе с любыми движениями курсора. Это простой способ добавить интерактивности и поддержать интерес пользователей.

Раскрытие при зависании

В этом примере показан разделенный экран, на котором фон раскрывается в зависимости от положения мыши пользователя. Отлично подходит для сравнения, например снимков «до» и «после».

Изменение цвета при прокрутке

Иногда мы забываем, насколько мощным может быть использование простых сплошных цветов. Здесь мы видим влияние, которое он может оказать при изменении цвета фона в зависимости от положения прокрутки. Это легкое решение может быть таким же визуально эффективным, как и тяжелые изображения.

Фоны на передовой

Фоны больше не являются просто средством кадрирования контента - теперь они часто составляют часть самого контента. Имея так много интересных способов их использования, стоит поэкспериментировать с различными фоновыми методами и посмотреть, как они могут улучшить пользовательский опыт вашего следующего проекта.

Comments