Есть ли аккуратный способ получить атрибуцию фонового изображения на уровне презентации? - PullRequest
6 голосов
/ 25 июня 2011

У меня есть изображение 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?

Ответы [ 2 ]

1 голос
/ 25 июня 2011

Соответствующий бит CC-BY лицензии (читаемая версия) равен

Атрибуция - Вы должны приписать произведение в порядке, указанном вавтор или лицензиар (но никоим образом не предполагает, что они одобряют вас или ваше использование произведения).

Что заставляет меня верить, что, если не указано иное, ваше усмотрение приемлемо.Я думаю, что это вполне разумно сделать для фонового изображения, как это сделано на этой странице: внизу вы найдете сдержанный

 site design / logo © 2011 stack exchange inc;

, который легко соответствует духу CC-BY.Выложив в Интернете несколько созданий в виде CC-BY, мое личное намерение было «просто, пожалуйста, не притворяйтесь, что вы его создали», что, я думаю, является обычным использованием этой лицензии.

Так как вы, по определению, должны иметь информацию об атрибуции, выбрать легкий путь и просто спросить создателя: "Это нормально?".

1 голос
/ 25 июня 2011

Вы можете оставить комментарий в самом CSS:

div.backgrounded {
    background: url(/images/an_image.jpg); /*Image provided by [name]*/
}

Тогда атрибуция будет в CSS, но она не будет видна на реальной странице.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...