我正在使用 CSS 将一些单选按钮设置为选项卡。我希望“选定”选项卡的字体粗细为粗体。当然,这会导致选项卡的大小增加,因为文本占用更多空间。我想找到一种方法让文本从粗体变为非粗体,而“标签”不会改变大小
如果没有设置固定宽度,是否有一种巧妙而干净的方法可以使文本占据粗体文本的大小而实际上不加粗?
我能想到的唯一方法是存在粗体文本(导致文本在 HTML 中存在两次),但使用visibility: hidden
.
标记:
<label class="tab active"><input type="radio" name="someTabs" value="someValueA" />Tab 1</label>
<label class="tab"><input type="radio" name="someTabs" value="someValueB" />Tab 2 (with longer text)</label>
现在的相关CSS:
.tab {
display: block;
font-size: 1.2em;
height: 2em;
line-height: 2em;
margin-right: 1px;
padding: 0 2em;
position: relative;
text-align: center;
float: left;
}
.tab.active,
.tab:hover {
font-weight: bold;
}
.tab input[type=radio] {
display: none;
}