
No.4ベストアンサー
- 回答日時:
> できればCSSで装飾したいので
#3を応用すると以下でできます
<style>
[name=hoge]{
display:none;
}
[name=hoge]:checked ~ span:before{
content:url(data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiPg0KPGNpcmNsZSBjeD0iMTAiIGN5PSIxMCIgcj0iOSIgc3Ryb2tlPSJ0ZWFsIiBmaWxsPSJ3aGl0ZSIgLz4NCjxjaXJjbGUgY3g9IjEwIiBjeT0iMTAiIHI9IjciIGZpbGw9InRlYWwiIC8+DQo8L3N2Zz4NCg==);
}
[name=hoge]:not(:checked) ~ span:before{
content:url(data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiPg0KPGNpcmNsZSBjeD0iMTAiIGN5PSIxMCIgcj0iOCIgZmlsbD0ic2lsdmVyIiAvPg0KPC9zdmc+DQo=);
}
</style>
<label>
<input type="radio" name="hoge">
<span>会社員</span>
</label>
<label>
<input type="radio" name="hoge">
<span>主婦</span>
</label>
<label>
<input type="radio" name="hoge">
<span>学生</span>
</label>
この回答へのお礼
お礼日時:2019/12/04 23:01
二度も具体的に教えて頂き、ありがとうございます。
やはり画像を使うといいようですね。
SVGも勉強になりましたので、ベストアンサーとさせて頂きます。
No.3
- 回答日時:
<style>
[name=hoge],[name=hoge] ~ svg{
display:none;
}
[name=hoge]:checked ~ svg.on{
display:inline
}
[name=hoge]:not(:checked) ~ svg.off{
display:inline
}
</style>
<label>
<input type="radio" name="hoge">
<svg width="20" height="20" class="off">
<circle cx="10" cy="10" r="8" fill="silver" />
</svg>
<svg width="20" height="20" class="on">
<circle cx="10" cy="10" r="9" stroke="teal" fill="white" />
<circle cx="10" cy="10" r="7" fill="teal" />
</svg>
会社員</label>
<label>
<input type="radio" name="hoge">
<svg width="20" height="20" class="off">
<circle cx="10" cy="10" r="8" fill="silver" />
</svg>
<svg width="20" height="20" class="on">
<circle cx="10" cy="10" r="9" stroke="teal" fill="white" />
<circle cx="10" cy="10" r="7" fill="teal" />
</svg>
主婦</label>
<label>
<input type="radio" name="hoge">
<svg width="20" height="20" class="off">
<circle cx="10" cy="10" r="8" fill="silver" />
</svg>
<svg width="20" height="20" class="on">
<circle cx="10" cy="10" r="9" stroke="teal" fill="white" />
<circle cx="10" cy="10" r="7" fill="teal" />
</svg>
学生</label>
No.2
- 回答日時:
some375さん
>・・・どうしたらいいのか・・・・・・・・・・・
そのようなチェック用画像を用意すればよいでしょう。
例えば↓
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<style>
label{
font-size: 32px; /* チェック画像の大きさと合わせる */
}
.radio {
display: none; /* 既定画像を非表示にする */
}
.radio + .radio-icon:before {
content: url(https://oshiete.xgoo.jp/images/v2/common/profile … /* 未チェック画像 */
}
.radio:checked + .radio-icon:before {
content: url(https://oshiete.xgoo.jp/images/v2/common/profile … /* 既チェック画像 */
}
</style>
</head>
<body>
<br>
<label>
<input type="radio" name="radio" class="radio" />
<span class="radio-icon"></span>
ラジオボタン1
</label>
<label>
<input type="radio" name="radio" class="radio" />
<span class="radio-icon"></span>
ラジオボタン2
</label>
<label>
<input type="radio" name="radio" class="radio" />
<span class="radio-icon"></span>
ラジオボタン3
</label>
</body>
</html>
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
clear bothで回り込みがうまく...
-
name属性とid属性
-
<span>で2重にかけているものを...
-
サイトにjQueryが使用されてい...
-
brにクラスをつけてcssでdispla...
-
liリストタグの背景色に色がつ...
-
含む含まないという概念自体の...
-
htmlのolやulなどlistにtitleや...
-
画像にリンクを張ると画像がず...
-
【ヒトの神秘】美男美女から何...
-
縦長広告をウェブページの右側...
-
header部分とnaviの位置の調整...
-
改行ほどは行かないけど、若干...
-
webのナビメニューで、どうして...
-
質問1.
-
指定したborderの一部が表示さ...
-
質問です。 新規登録ボタンが全...
-
ホームページ作成ソフトKompoZe...
-
htmlで画像を2個ずつ並べていき...
-
複数の画像にメニュー表示させたい
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
個別にリンクの色を変える方法
-
CSSのクラス名・ID名の指定でワ...
-
idの中のid指定
-
liリストタグの背景色に色がつ...
-
CSSが効かずどのように指定すれ...
-
HTML要素のid/class名の長さに...
-
<span>で2重にかけているものを...
-
brにクラスをつけてcssでdispla...
-
CSSのホバーエフェクト
-
[HTML] selectの線を非表示に...
-
特定の見出しのみ前後の空白を...
-
最近、HTMLのヘッダーをIDで定...
-
CSSに同じclass名がいっぱい‥。...
-
レシポンシブデザインをBootstr...
-
リンクの文字の色の反転につい...
-
「目次」と「サブ目次」のスタ...
-
htmlのid属性って必要なの?
-
blockquoteにclassとciteを記述...
-
dreamweaverのコード画面で波線。
-
外部スタイルシートで定義した...
おすすめ情報
イメージ画像をつけました。
一番左がチェック時のボタンイメージです。