Могу ли я использовать CSS-переменные с атрибутом 'picture->source - >media'?
В моем HTML-коде это так и есть...
<picture> <source media="(min-width: 1200px)" srcset="images/Size600.jpg"> <source media="(min-width: 600px)" srcset="images/Size300.jpg"> <img src="images/Size300.jpg"> </picture>
..что работает именно так, как и ожидалось.
Проблема в том, что у меня есть несколько изображений, даже на разных страницах, которые я хочу ответить на один и тот же запрос медиа-ширины экрана. Поэтому я решил использовать переменные CSS. Я перешел на это...
В отдельной комнате стили.в CSS файл:
:root { --image-big: 1200px; --image-small: 600px; }
В HTML файле:
<picture> <source media="(min-width: val(--image-big))" srcset="images/Size600.jpg"> <source media="(min-width: val(--image-small))" srcset="images/Size300.jpg"> <img src="images/Size300.jpg"> </picture>
..но это, кажется, не работает. Насколько я могу судить, я всегда получаю меньшее изображение. Я не уверен, что это вызвано вторым
source
линия или запасной вариант img
линия.Должно ли это сработать? Если да, то может ли кто-нибудь определить, что я делаю неправильно (кроме программирования как живого!)?
Что я уже пробовал:
Я пробовал использовать более конкретную область применения, чем
:root
(например, присвоение класса picture
элемент и нацеливание на него).Я также пробовал копаться в инструментах разработчика Edge, но не вижу ничего, что помогло бы мне.