html - 标签上方单选按钮的样式

标签 html css sass

我正在使用 CSS Sprite 添加一些自定义背景 radio 。我需要 2 种样式(标签左侧的单选按钮和标签顶部的单选按钮)。

我已经在我的跨度上尝试了 inline-block 和 margin:auto (HTML 中的内联样式)来将 radio 移动到上面,但现在背景位于 00 位置。

如何设置我的 radio 的样式,使其位于标签上方并居中?

.my-radio-class {
  width: 50px;
  height: 50px;
  opacity: 0;
  vertical-align: middle;
}

.my-radio-class+span {
  background: url('/image/hG6IV.gif');
  width: 22px;
  height: 22px;
  margin-left: -22px;
  display: inline-block;
  pointer-events: none;
  vertical-align: middle;
}

.my-radio-class:checked+span {
  background-position: -22px 0;
}
<div class="row">
  <div class="col-md-6">
    <input id="mys-radio-1" class="my-radio-class" type="radio" name="my-group">
    <span></span>
    <label for="mys-radio-1">Small</label>
  </div>
</div>
<h3 class="pt-5">Above</h3>
<br />
<div class="row">
  <div class="col-md-6">
    <input id="mys-radio-2" class="my-radio-class" type="radio" name="my-group">
    <span style="display:inline-block: margin:auto;"></span>
    <label for="mys-radio-2">Small - Need Radio Above</label>
  </div>
</div>

雪碧 enter image description here

最佳答案

您可以在要移动到下方的范围上使用 display:block。您必须使用 margin-leftmargin-top 来移动其位置。

给你一个想法:

.my-radio-class {
  width: 50px;
  height: 50px;
  opacity: 0;
  vertical-align: middle;
}

#mys-radio-2+span{
  display: block;
  margin-left: 11px;
  margin-top:-30px;
}

.my-radio-class+span {
  background: url('/image/hG6IV.gif');
  width: 22px;
  height: 22px;
  margin-left: -22px;
  display: inline-block;
  pointer-events: none;
  vertical-align: middle;
}

.my-radio-class:checked+span {
  background-position: -22px 0;
}
<h3 class="pt-5">Left</h3>
<div class="row">
  <div class="col-md-6">
    <input id="mys-radio-1" class="my-radio-class" type="radio" name="my-group">
    <span></span>
    <label for="mys-radio-1">Small</label>
  </div>
</div>
<h3 class="pt-5">Above</h3>
<div class="row">
  <div class="col-md-6">
    <input id="mys-radio-2" class="my-radio-class" type="radio" name="my-group">
    <span style="display:inline-block: margin:auto;"></span>
    <label for="mys-radio-2">Small</label>
  </div>
</div>

关于html - 标签上方单选按钮的样式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49143983/

相关文章:

html - Bootstrap 日期时间选择器中的 CSS 问题

html - 使用 Mathematica 从 html 中的特定标签中提取文本

javascript - 使用 javascript 或 jquery 进行多数字计数器的循环之间的延迟

html - 带分号的元刷新

javascript - 根据客户端浏览器大小更改 .css 文件

css - SASS计算HSL 2种颜色之间的差异

css - 响应式网格中的固定宽度元素?

javascript - 防止div可点击干扰javascript

Javascript 不工作 - 2 个不同的 div 容器

css - 使用媒体查询通过 Sass 设置变量值