Итак, я снова натягиваю волосы на адаптивные изображения.CMS дает мне srcset
, я создаю простой атрибут sizes
, Я проверяю currentSrc
, наводя курсор на атрибут в Dev Tools - неверный Src!Перейдите к 10, возможно, измените состояние носителя, сохраните, перезагрузите, наведите курсор мыши, повторите, пока все не будет работать.Надеюсь, что это никогда не подведет для других изображений.
Должен быть лучший способ сделать это?Учитывая, что Firefox по-прежнему лучше, чем Chrom * в отладке веб-шрифтов, и что только сегодня я обнаружил Добавить соотношение пикселей устройства в Chrome Dev Tools, мне интересно, что я пропускаю.Я знаю и использовал заполнителей изображения , но их может быть сложно настроить, и они не могут сказать мне
- Является ли атрибут
sizes
синтаксически правильным? - сколько пикселей устройства браузер считает изображение в текущем окне просмотра?Сколько это "srcset
w
-pixels"? - и самое главное: какое условие мультимедиа соответствует текущему окну просмотра? Почему?
EDIT:Придумали этот пример, надеюсь, он поможет:
<img
src="foo.jpg"
sizes="(max-width: 599px) 100vw, ((min-width: 600px) and (max-width: 1000px)) 33vw, 300px"
srcset="foo_a.jpg 300w, foo_b.jpg 768w" />
Область просмотра с разрешением 650 пикселей, соотношение устройств к пикселям 1.
DevTools говорит мне:
currentSrc == "foo_b.jpg"
Почему?Какое это условие?Что означает 33vw
?650px*33/100
?Как это относится к 300w
?Как это ближе к 768w
?
Обратите внимание, что я на самом деле не спрашиваю об этих конкретных значениях, а об общем рабочем процессе.
EDIT2: я, вероятно, запрашиваю функцию инструментов Dev (илирасширение), который сказал бы мне, в этом случае:
- Область просмотра 650px
- соответствует
((min-width: 600px) and (max-width: 1000px))
- 650px @ DPR 1.0 = 650w
- => 33Вт = 650Вт * 33/100 = 214,5Вт
- ближайший источник =
foo_a.jpg 300w
- НО, у меня
foo_b.jpg
в кеше - выбор foo_b.jpg