質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

CSS

CSSはXMLやHTMLで表現した色・レイアウト・フォントなどの要素を指示する仕様の1つです。

Q&A

2回答

476閲覧

特定の要素のCSS設定削除方法

radio2025

総合スコア11

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

CSS

CSSはXMLやHTMLで表現した色・レイアウト・フォントなどの要素を指示する仕様の1つです。

0グッド

0クリップ

投稿2018/09/21 08:00

前提・説明

HTML、CSS初心者です。
要素の表示/非表示を対応したく下記㏋を参照にしてコードを記述しました。

参照--------------------------------------------------
●要素の表示・非表示を切り替える方法
https://saruwakakun.com/html-css/reference/hidden-show

参考にしたコードではlabel、inputにCSSを適用させています。
最終的に作りたいページでは非表示の部分にフォーム入力、
名前(input type="text")、電話番号(input type="tel")などを
表示させたいです。

しかし上記の通り、参考にしたコードでlabelやinputにCSSを適用させているため
非表示のフォーム入力部分も同じCSSが適用されてしまいます。

実現したいこと

下記コードに書いてある通り、非表示部分のlabel、inputのCSSを削除して
標準的なフォームの設定に戻したいです。

<!--非表示 この部分のlabel、inputのCSSを除外したい-->

該当のソースコード

HTML

1<div class="hidden_box"> 2 <label for="label1">クリックして表示</label> 3 <input type="checkbox" id="label1"/> 4 <div class="hidden_show"> 5 <!--非表示 この部分のlabel、inputのCSSを除外したい--> 6 <form action="/my-handling-form-page" method="post"> 7 <div> 8 <label for="name">Name:</label> 9 <input type="text" id="name" name="user_name"> 10 </div> 11 <div> 12 <label for="mail">E-mail:</label> 13 <input type="email" id="mail" name="user_mail"> 14 </div> 15 <div> 16 <label for="msg">Message:</label> 17 <textarea id="msg" name="user_message"></textarea> 18 </div> 19 </form> 20 <!--ここまで--> 21 </div> 22</div>

CSS

1.hidden_box { 2 margin: 2em 0;/*前後の余白*/ 3 padding: 0; 4} 5 6.hidden_box label { 7 padding: 15px; 8 font-weight: bold; 9 border: solid 2px black; 10 cursor :pointer; 11} 12 13.hidden_box label:hover { 14 background: #efefef; 15} 16 17.hidden_box input { 18 display: none; 19} 20 21.hidden_box .hidden_show { 22 height: 0; 23 padding: 0; 24 overflow: hidden; 25 opacity: 0; 26 transition: 0.8s; 27} 28.hidden_box input:checked ~ .hidden_show { 29 padding: 10px 0; 30 height: auto; 31 opacity: 1; 32}

コメント

初歩的な質問になり申し訳ありません。
知識が少ないため対応方法がわからずご相談させて頂いております。
何卒、宜しくお願い致します。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

スタイルを適用したい要素にclassを付けるか、逆に適用したくない要素にclassを付けてあげる方がいいのではないかと思います。

ご提示のコード片だけから見れば、特殊なスタイルを適用したい要素にだけclassを付与する方が適切なような気がします。

投稿2018/09/21 08:42

spookybird

総合スコア1803

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

JavaScript

1for (let sheet of document.styleSheets) { 2 for (let i = sheet.cssRules.length; i--; ) { 3 if (sheet.cssRules[i].type === 1 && sheet.cssRules[i].selectorText.startsWith('.hidden_box ')) { 4 sheet.deleteRule(i); 5 } 6 } 7}

投稿2018/09/21 09:29

x_x

総合スコア13749

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問