
かれこれもう2時間くらい色々と構っているのですが、全く解決ができないので質問をさせてください。
現在HTMLとCSSでオーム部品のチェックボックスに、チェックが入った際に、チェックボックスの背景色?(四角の中の色)を変更させたいのですが、これがとても難しく色ついてくれません。
少し調べたのですが、結構面倒そうなことは書いてあったのですが、試しても再現できません。
お助けください。
最初に思ったのは、単純に
input[type="checkbox"]{
background:red;
}
とかで初期値の色を変えようとしても変わらず…。
input[type="checkbox"]:checked {
background-color: red;
}
で指定してもチェック後に背景が変わる気配が全くありません。
その他、サイズやpaddingの指定でチェックボックスの見た目なども試してみたのですが、一切変わりません。marginで余白が定義できるくらいです。
チェックボックスの定義には何か特別なルールなどがあるのでしょうか?
全く変更ができなくて困っています。
お詳しい方、設定方法についてアドバイスをお願いいたします。
No.4ベストアンサー
- 回答日時:
No2です
>何だか難しいですね
同じ方法なんですけれどね。
簡単にしたいなら、画像を利用するのが簡単かも。
考え方は変わりませんけれど、「チェック時の画像」(=checked.png)を用意しておいて、背景画像にする例です。
※ 色を変えるだけでいいなら、background-colorでもよいですけれど、チェックマークがつかないので…
<!DOCTYPE HTML>
<html lang="ja">
<head><title>Sample</title>
<style>
input.hoge{
display: none;
}
/* label 通常表示 */
input.hoge+label {
display: inline-block;
width: 1em; height: 1em;
border: 1px solid black;
}
/* label チェック時 */
input.hoge:checked+label {
background-image: url("./checked.png")
}
</style>
</head>
<body>
<form>
<input class="hoge" id="inp1" type="checkbox" />
<label for="inp1"></label>
</form>
</body>
</html>
何度もすみません、有難うございます!
前回頂いたものと今回の画像版で、それぞれ理解ができました。
画像でチェックを作るか、
transform: rotate(-45deg) translate(0, .15em); でチェック風のデザインに仕上げるか…。
いずれにしても、直接簡単には操作ができないのですね…。
もっとカスタマイズしやすく、かつ全ブラウザで統一できればいいですね!
有難うございました!
No.3
- 回答日時:
inputやselectは、昔から多くのブラウザに依存していて、
AndoroidやiPhoneで見るとPCブラウザとは違いますし、CSSで指定しても、ブラウザによっては、効かないです・・・
ただ、
inputはlabelで連動できるので、
input { position: absolute; opacity: 0;}
このように、消しちゃってw labelで適用します。
<input id="t01" type="checkbox" name="tabs">
<label for="t01">□</label>
のように、
□を擬似的に画像化し(チェック済み画像も用意)
labelで展開するとお望みの事が出来ると思います。
良くlabelで利用するのは、ハンバーガーメニューのアイコン「三」→「×」→「三」→「×」のように、切り替えの仕様で応用できます。
有難うございます。
何だか難しいですね、色々と調べてみたのですが、やはり簡単では無いような記述が多々見受けられました。
できるかわかりませんが、色々と試してみます。
有難うございます。㎜
No.2
- 回答日時:
No1です。
input要素を非表示にして、表示は(操作しやすい)labelで代用する簡単な例を作成してみました。
(見えているのはlabel要素です)
ご参考までに。
<!DOCTYPE HTML>
<html lang="ja">
<head><title>Sample</title>
<style>
input.hoge{
display: none;
}
/* label 通常表示 */
input.hoge+label {
display: inline-block;
width: 1em; height: 1em;
border: 1px solid black;
}
/* label チェック時 */
input.hoge:checked+label {
background-color: red;
}
/* チェックマーク */
input.hoge:checked+label::after {
content: "";
display: block;
width: 0.6em; height: 0.4em;
border: 3px solid black;
border-width: 0 0 3px 3px;
transform: rotate(-45deg) translate(0, .15em);
}
</style>
</head>
<body>
<form>
<input class="hoge" id="inp1" type="checkbox" /><label for="inp1"></label>
</form>
</body>
</html>
No.1
- 回答日時:
こんにちは
>チェックボックスの定義には何か特別なルールなどがあるのでしょうか?
チェックボックスに限らず、多くのform内要素はOSの制御を利用している部分が多いようです。
https://developer.mozilla.org/ja/docs/Learn/Form …
このため、ご質問のような事象になっていると考えられます。
対象要素に
appearance: none;
を設定することでこれらの適用を外すことはできますが、その代わりに、全ての設定を明示的に行うことが必要となります。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) マクロ実行時、自動で背景色を変えたい。 C列にあるチェックボックスをチェックするとB列に「TRUE」 4 2022/11/08 11:14
- HTML・CSS HTML <input type=password>の黒丸の色を変える方法 3 2022/11/23 13:56
- HTML・CSS CSS のみのタブ切り替えについて 1 2023/01/11 16:47
- HTML・CSS CSSがなぜかfont-sizeだけ効かない...記述がまちがっているんでしょうか 5 2022/04/09 17:52
- ノートパソコン AMDディスプレイ設定 暖色見にくい 2 2023/07/18 17:24
- HTML・CSS ただいま勉強始めたての初心者です。フォームを縦並べにしたいです。 2 2022/11/20 17:18
- HTML・CSS CSSでサイトの背景に画像を組み込みたいのですが反映されません 2 2022/11/22 16:21
- Access(アクセス) ACCESS2019 ナビゲーションウィンドウの色 1 2022/05/10 17:15
- Excel(エクセル) こんなことできますか?例えば、sheetに貼り付けた図形のタイトルを、セルA1の文字で表示する。 5 2022/04/22 15:25
- 待ち受け・壁紙 ロック画面に表示される時刻のサイズ変更 AQUOS SENSE 4 (ドコモ)を使用中です。スマホの 2 2022/08/08 10:39
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
background-sizeでcontainする...
-
画像の上にテキスト配置で、拡...
-
同じ画像 複数回使用
-
【至急お助け!】チェックボッ...
-
<hr>の縦バージョンはありますか?
-
background-sizeの背景で最小値...
-
<ul>タグの上の空白って消せま...
-
IMGタグで画像の繰り返し使用は…
-
【Webサイト】画像が小さく表示...
-
WEBページの背景に画像を連続配...
-
携帯サイトでの背景画像表示に...
-
ページの上下に白い横線が入る
-
画像とその下にあるテキストの...
-
要素の幅をいろんな写真の幅に...
-
画像を複数横に並べ、かつそれ...
-
疑似要素で背景画像に指定したS...
-
画像横の余白をなくしたいんで...
-
背景に使うjpgを大きめに表...
-
ページごとに背景画像を変更し...
-
スマートフォンやタブレットの...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
【至急お助け!】チェックボッ...
-
【Webサイト】画像が小さく表示...
-
画像とその下にあるテキストの...
-
background-repeat CSS で切れ...
-
<hr>の縦バージョンはありますか?
-
WEB上でディレクトリ内の画像を...
-
IMGタグで画像の繰り返し使用は…
-
画像の上にテキスト配置で、拡...
-
同じ画像 複数回使用
-
background-sizeでcontainする...
-
iframe内をクリックさせない方...
-
要素の幅をいろんな写真の幅に...
-
background-sizeの背景で最小値...
-
ページごとに背景画像を変更し...
-
lightbox2で画像を天地左右中央...
-
CSSのrepeatで切れ目が出る
-
画像の大きさに合わせて文字の...
-
フッターの背景に色を指定した...
-
Safariでのひどいレイアウト崩れ
-
CSSで背景画像をランダムに表示...
おすすめ情報