html - 使用图像而不是带有图像下方文本的单选按钮

标签 html css

我使用以下示例来使用图像代替单选按钮 http://jsbin.com/image-instead-of-radio-button/5/来自用户@Roko C. Buljan,CSS 代码是:

label > input{ /* HIDE RADIO */
  visibility: hidden; /* Makes input not-clickable */
  position: absolute; /* Remove input from document flow */
}
label > input + img{ /* IMAGE STYLES */
  cursor:pointer;
  border:2px solid transparent;
}
label > input:checked + img{ /* (RADIO CHECKED) IMAGE STYLES */
  border:2px solid #f00;
}

Html 代码是:

<label class="layersMenu">
    <input type="radio" id="radioZoom14" name="zoomsMBtiles" value="14" checked />
    <img src="./img/zoom14.jpg">
</label>

<label class="layersMenu">
    <input type="radio" id="radioZoom18" name="zoomsMBtiles" value="18" />
    <img src="./img/zoom18.jpg">
</label>

这很好,但是,现在我需要在图像下方放置一些文本,但我没有在 img 旁边使用 div( block 内容)得到它。

<label class="layersMenu">
    <input type="radio" id="radioZoom14" name="zoomsMBtiles" value="14" checked />
    <img src="./img/zoom14.jpg">
    <div>my text 1</div>
</label>

<label class="layersMenu">
    <input type="radio" id="radioZoom18" name="zoomsMBtiles" value="18" />
    <img src="./img/zoom18.jpg">
    <div>my text 2</div>
</label>

文字出现在图片的右侧。

有什么想法吗?

提前致谢

最佳答案

制作标签 display: inline-block 会为你修复它

label { display: inline-block }
label > input { /* HIDE RADIO */
  visibility: hidden; /* Makes input not-clickable */
  position: absolute; /* Remove input from document flow */
}
label > input + img { /* IMAGE STYLES */
  cursor:pointer;
  border:2px solid transparent;
}
label > input:checked + img { /* (RADIO CHECKED) IMAGE STYLES */
  border:2px solid #f00;
}
<label class="layersMenu">
    <input type="radio" id="radioZoom14" name="zoomsMBtiles" value="14" checked />
    <img src="./img/zoom14.jpg">
    <div>blah</div>
</label>

<label class="layersMenu">
    <input type="radio" id="radioZoom18" name="zoomsMBtiles" value="18" />
    <img src="./img/zoom18.jpg">
  <div>blah</div>
</label>

关于html - 使用图像而不是带有图像下方文本的单选按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42137293/

相关文章:

jQuery 不将表单输入传递给我的方法

jquery - 覆盖 iframe 宽度

javascript - 覆盖 div 不会阻止在特定时间窗口中触发的下一个事件

html - 3 个相邻的 100% 大小的 div,另一个作为包含流畅照片的背景

css - 在我的 Wordpress 网站上更改主导航菜单字体颜色

javascript - 使用 TD 标签的数据创建数组

html - 问题 : Padding between bootstrap elements and card

javascript - 通过操作 URL 设置单选按钮值

html - 如何在IE中制作自定义滚动条?

html - 保持对背景图像的响应以及完整的拖放元素并响应背景图像