Я хочу установить 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>
, потому что по умолчанию, если файл не является поддерживаемым изображением, я бы предпочел отобразить заранее определенный набор значков.