CSS を使用して、いくつかのラジオ ボタンをタブとしてスタイル設定しています。「選択した」タブのフォントの太さを太字にしたいと思います。もちろん、これにより、テキストがより多くのスペースを占めるため、タブのサイズが大きくなります。「タブ」のサイズを変更せずに、テキストを太字から非太字にする方法を見つけたい
固定幅を設定する以外に、テキストを実際に太字にせずに、太字のテキストのサイズを占める巧妙でクリーンな方法はありますか?
私が考えることができる唯一の方法は、太字のテキストを存在させることです(テキストがHTMLに2回存在する原因になります)が、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;
}