У меня есть изображение CC-BY, которое я использую в качестве фона, созданное с помощью CSS. Это изображение просто для его внешности, и определенно не содержание. Мне нужно где-то поставить атрибуцию на это изображение, и, очевидно, было бы лучше сделать эту атрибуцию ссылкой на доброго человека, который предоставил изображение. Однако я не хочу помещать текст ссылки в свой HTML, поскольку это нарушает разделение реального контента и презентации (я бы сказал, что ссылка на атрибуцию действительно является частью презентации, поскольку, если вы просматривали страницу без фонового изображения) ты бы не хотел этого видеть).
Можно ли как-то разделить презентацию и контент прямо здесь?
Мой текущий код для этого выглядит примерно так:
<div class='backgrounded'>
<div class='content'><h1>Some stuff here</h1></div>
<div class='attribution'>
Image from <a href='http://example.com/image'>Lovely CC-BY person</a>
</div>
</div>
И CSS:
div.backgrounded {
background: url(/images/an_image.jpg);
}
div.attribution {
color: #ffffff;
float: right;
}
Это имеет атрибуцию в контенте, где я бы предпочел его не иметь.
Другие вещи, которые я рассмотрел, включают:
Помещение атрибуции на само изображение .
Это решает проблему разделения кода, но мое изображение довольно широко расположено слева, поэтому для широкого окна браузера достаточно фона. Правая нижняя часть изображения почти всегда не видна.
Я не вижу, как я могу сделать эту атрибуцию ссылкой.
Создание изображения, содержащего текст атрибуции и размещение его там, где текущая атрибуция , снова в фоновом режиме, но сверху
Я думаю, я мог бы сделать это ссылкой, используя JavaScript Это похоже на много возни.
Есть ли выход из этого, когда мое изображение упоминается только в CSS? Или, если это не удастся, то как лучше всего отделить вещи, чтобы, например, изображение можно было заменить без редактирования HTML?