Dun*_*kes 6 css presentation-layer separation-of-concerns
我有一个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>
Run Code Online (Sandbox Code Playgroud)
而CSS:
div.backgrounded {
background: url(/images/an_image.jpg);
}
div.attribution {
color: #ffffff;
float: right;
}
Run Code Online (Sandbox Code Playgroud)
这具有内容中的归属,我宁愿不拥有它.
我考虑过的其他事情包括:
将归因放在图像本身中.这解决了代码分离问题,但我的图像是一个很好的宽图像,位于左侧,因此有足够的背景用于宽浏览器窗口.图像的右下角几乎总是不在视野范围内.我不知道如何将此归因作为链接.
制作包含归因文字的图片并将其放在当前归属的位置,再次在后台,但最重要的是我想我可以使用JavaScript将其作为链接.这似乎是很多摆弄.
有没有办法在我的图像只在CSS中引用?或者失败了,保持事物分离的最佳方法是什么,以便例如可以在不编辑HTML的情况下替换图像?
您可以在 CSS 本身中留下评论:
div.backgrounded {
background: url(/images/an_image.jpg); /*Image provided by [name]*/
}
Run Code Online (Sandbox Code Playgroud)
那么属性就在CSS中,但在实际页面上是不可见的。