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
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
|
---
title: image-set()
slug: Web/CSS/image-set()
translation_of: Web/CSS/image-set()
---
<div>{{cssref}}</div>
<p class="summary">CSS функция <code>image-set()</code> это способ позволить браузеру выбрать наиболее подходящее изображение CSS из заданного набора, в первую очередь для экранов с высокой плотностью пикселей.</p>
<p>Разрешение экрана и пропускная способность могут отличаться в зависимости от устройства и доступа к сети. Функция <code>image-set()</code> обеспечивает наиболее подходящее разрешение изображения для устройства пользователя, предоставляя набор параметров изображения — каждый с соответствующим объявлением разрешения — из которых браузер выбирает наиболее подходящее для устройства и настроек. Разрешение может использоваться в качестве прокси для размера файла — клиент на медленном мобильном соединении с экраном высокого разрешения может предпочесть получать изображения с более низким разрешением, а не ждать загрузки изображения с более высоким разрешением.</p>
<p><code>image-set()</code> позволяет автору предоставлять параметры, а не определять, что нужно каждому отдельному пользователю.</p>
<h2 id="Синтаксис">Синтаксис</h2>
<pre class="syntaxbox notranslate">image-set() = image-set( <image-set-option># )
где <image-set-option> = [ <image> | <string> ] <resolution> и
<string> в качестве <url>
</pre>
<h3 id="Значения">Значения</h3>
<p>Чаще всего вы можете увидеть значение <code>url()</code> как <code><string></code>, но <code><a href="/en-US/docs/Web/CSS/image"><image></a></code> может быть любым типом изображения, кроме набора изображений. Функция <code>image-set()</code> не может быть вложена в другую функцию <code>image-set()</code>.</p>
<p>Блоки <code><a href="/en-US/docs/Web/CSS/resolution"><resolution></a></code> включают в себя <code>x</code> или <code>ddpx,</code> для точек на пиксель, <code>dpi</code> для точек на дюйм, и <code>dpcm</code> для точек на сантиметр. Каждое изображение в наборе <code>image-set()</code> должно иметь уникальное разрешение.</p>
<h2 id="Примеры">Примеры</h2>
<pre class="brush: css notranslate">background-image: image-set( "cat.png" 1x,
"cat-2x.png" 2x,
"cat-print.png" 600dpi);</pre>
<p>Этот пример демонстрирует использование <code><a class="css" href="https://drafts.csswg.org/css-images-4/#funcdef-image-set" id="ref-for-funcdef-image-set⑨">image-set()</a></code> для обеспечения двух альтернативных {{cssxref("background-image")}} свойств, из которых будет выбрано более подходящее по разрешению: обычная версия и версия с высоким разрешением.</p>
<h2 id="Вопросы_доступности">Вопросы доступности</h2>
<p>Браузеры не предоставляют никакой специальной информации о фоновых изображениях для вспомогательных технологий. Это важно прежде всего для экранных считывающих технологий, так как они не объявят о своем присутствии и поэтому ничего не передадут своим пользователям. Если изображение содержит информацию, критически важную для понимания общего назначения страницы, лучше описать ее семантически в документе.</p>
<ul>
<li><a href="https://developer.mozilla.org/en-US/docs/Web/Accessibility/Understanding_WCAG/Perceivable#Guideline_1.1_%E2%80%94_Providing_text_alternatives_for_non-text_content">MDN Understanding WCAG, Guideline 1.1 explanations</a></li>
<li><a class="external external-icon" href="https://www.w3.org/TR/2016/NOTE-UNDERSTANDING-WCAG20-20161007/text-equiv-all.html" rel="noopener">Understanding Success Criterion 1.1.1 | W3C Understanding WCAG 2.0</a></li>
</ul>
<h2 id="Спецификации">Спецификации</h2>
<table class="standard-table">
<thead>
<tr>
<th>Спецификация</th>
<th>Статус</th>
<th>Комментарий</th>
</tr>
</thead>
<tbody>
<tr>
<td>{{SpecName('CSS4 Images', '#image-set-notation', 'The image-set() notation')}}</td>
<td>{{Spec2('CSS4 Images')}}</td>
<td> </td>
</tr>
</tbody>
</table>
<h2 id="Browser_compatibility" name="Browser_compatibility">Поддержка браузерами</h2>
<p>{{Compat("css.types.image.image-set")}}</p>
<h2 id="See_also" name="See_also">Смотрите также</h2>
<ul>
<li>{{cssxref("image")}}</li>
<li>{{cssxref("_image", "image()")}}</li>
<li>{{cssxref("element")}}</li>
<li>{{cssxref("url")}}</li>
<li>{{cssxref("<gradient>")}}</li>
<li>{{cssxref("cross-fade")}}</li>
</ul>
|