Я хочу установить background-image
(или даже сделать изображение через псевдоэлементы :after
или :before
) на значение, которое будет URL-адресом, атрибута rel
, но только в некоторых случаях (это список файлов облаков). Например:
HTML:
<div class="icon ${fileExtension}" rel="${fileURL}"></div>
Было бы здорово, если бы я мог сделать что-то вроде этого:
CSS
.icon.png,
.icon.jpg,
.icon.jpeg,
.icon.bmp,
.icon.gif { background-image: attr(rel,url); }
... но очевидно, что это не работает, если я не ошибаюсь, функция CSS attr()
работает только внутри блоков псевдоэлементов.
Я знаю, что есть способы сделать это, используя условную JSP или даже логику jQuery, но я хотел бы найти аккуратный способ сделать это с помощью CSS3, так как в данный момент меня интересуют только современные браузеры.
Кроме того, я не хочу явно устанавливать фоновое изображение в URL-адрес или создавать элемент <img>
, потому что по умолчанию, если файл не поддерживается, я предпочитаю отображать заранее определенный набор значков.