【发布时间】:2015-07-02 03:46:47
【问题描述】:
我有几个单选按钮替换为图像。我有第二组图像,我希望在选择某个按钮时将原始图像更改为。
HTML
<label class="item">
<input type="radio" value="10" name="size" required="required"/>
<img src="./images/10.png"/>
</label>
...
CSS
label.item > input {
visibility: hidden;
position: absolute;
}
在这种情况下,图像是10.png。我希望它在选择时更改为10S.png,但在选择另一个选项时恢复为10.png。
我最好的想法是使用 JS 将S 附加到图像路径 onclick 的末尾,但恢复回来证明很麻烦。是否有严格的 HTML/CSS 方式来做到这一点,或者 JS 是必须的?用于单选按钮的所有图像都是从 1 到 10 的 #.png 形式,更新的图像是从 1 到 10 的 #S.png(即 2.png 将变为 2S.png 等)。
如果可能的话,我宁愿不使用 JQuery,我希望有一个与浏览器兼容的解决方案。
【问题讨论】:
-
我知道你说不使用 Jquery,但请看这里:stackoverflow.com/questions/3469789/…
-
你最终能并排合并图像 10 + 10s 吗?这样做您可以使用
clip属性,具体取决于先前输入的:checked状态 -
@FabrizioCalderan 你是说 CSS 精灵吗?
-
是的。这样做您可以保存多个请求并同时获得所有
-s图像的“免费”预加载 :)
标签: javascript html css