我想知道哪种方式最好。
我有一些半透明的锚图像,它们在悬停时将完全透明的背景更改为半透明的红色背景:
->
雇主为我提供了每个图像的红色背景版本,但我当然不想使用它们,因为它将是总的带宽浪费。相反,我想
选择选项 1:使用 1 个通用图像在悬停时切换背景图像:
选项 2:使用 CSS3,但我不确定是否可能
顺便提一句。我已经阅读了很多关于 CSS sprites 的好意见,将网站上的整个图像定位转换为 sprite 时尚是一个好主意吗?还是仅推荐用于某些图像类型,例如锚点?
我想知道哪种方式最好。
我有一些半透明的锚图像,它们在悬停时将完全透明的背景更改为半透明的红色背景:
->
雇主为我提供了每个图像的红色背景版本,但我当然不想使用它们,因为它将是总的带宽浪费。相反,我想
选择选项 1:使用 1 个通用图像在悬停时切换背景图像:
选项 2:使用 CSS3,但我不确定是否可能
顺便提一句。我已经阅读了很多关于 CSS sprites 的好意见,将网站上的整个图像定位转换为 sprite 时尚是一个好主意吗?还是仅推荐用于某些图像类型,例如锚点?
当您的网站上到处都是零散的图像时,Sprites 是一个不错的选择,例如电子邮件、电话、服务等图标,您拥有的图像越多,http
它创建的请求就越多,从而使您的网站效率低下。此外,使用 CSS Sprites,当您将按钮悬停时,它们不会产生故障,是的,显然只有第一次用户可能会遇到故障,但通常会产生不好的印象,您可以通过使用 CSS Sprites 来克服你将不得不改变background-position
图像的。
来到按钮,如果你愿意,你可以简单地使用 CSS 精灵,将两个按钮状态放在一个画布上,然后使用属性使用它们,然后在悬停background-image
时使用属性切换它们。background-position
另一方面,如果你想要的效果是可能的,你也可以使用 CSS3。通过查看图像,我认为甚至不需要 CSS3。如果这些不是真正的按钮,而真正的按钮是额外的花哨,CSS Sprites 将是一个很好的选择,因为 IE 会破坏你的 CSS3 按钮。
就透明度而言,您可以使用rgba()
wherea
代表不透明度。您还可以使用 CSS 过渡美化它们以获得更平滑的悬停效果。
如果您想快速了解 CSS Sprite 是什么以及如何使用它们,可以在此处阅读我的答案。