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

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

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

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

CSS

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

Q&A

解決済

1回答

1099閲覧

レスポンシブで要素の置き換えとかって出来ますか?

takawork

総合スコア95

HTML

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

CSS

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

0グッド

0クリップ

投稿2020/09/07 18:15

編集2020/09/07 18:40

スマホサイズの時は問い合わせフォームを正方形の小さな画像と置き換えたいと思っているのですが、そのような表現は可能ですか?
もしくはもともとの問い合わせフォームを消して、新しく画像を表示するのでしょうか?
https://fastcoding.jp/blog/all/frontend/responsive_img/
このサイトを参考にclassにpcとspと入れて見たのですが、スマホ用サイズにしても問い合わせフォームが表示されたままでした。

<section class="header-main"> <div class="header-main-cover"> <div class="logo"> <img class="logo-img" src="img/logo.png" alt="会社ロゴ"> </div> <div class="form"> <a class="pc" href="#">問い合わせフォーム</a> <img class="sp" href="#" src="/img/fire.png"> </div> </div> </section>
@charset "UTF-8"; * { margin: 0; padding: 0; -webkit-box-sizing: border-box; box-sizing: border-box; outline: none; font-family: 'Roboto', sans-serif; } .header-main { height: 80px; background-color: black; } .header-main-cover { max-width: 1080px; margin: 0 auto; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; margin-left: 10px; } .header-main .logo { float: left; } .header-main .logo-img { height: 80px; margin-left: 10px; } .header-main .form { margin-top: 10px; margin-bottom: 10px; margin-right: 10px; background: -webkit-gradient(linear, left top, left bottom, color-stop(50%, #ffcc00), to(#ee8f0b)); background: linear-gradient(to bottom, #ffcc00 50%, #ee8f0b); -webkit-transition: all 0.5s; transition: all 0.5s; width: 200px; border: 2px solid black; border-radius: 8px; } .header-main .form:hover { background-color: #ffcc00; } .header-main .form a { color: rgba(5, 1, 1, 0.842); font-weight: bold; line-height: 60px; display: block; text-align: center; text-decoration: none; } @media screen and (max-width: 640px) { .header-main { height: 80px; background-color: black; } .header-main-cover { max-width: 640px; margin: 0 auto; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; margin-left: 10px; } .header-main .logo { float: left; } .header-main .logo-img { height: 60px; margin-left: 10px; } .header-main .form { margin-top: 10px; margin-bottom: 10px; margin-right: 10px; background: -webkit-gradient(linear, left top, left bottom, color-stop(50%, #ffcc00), to(#ee8f0b)); background: linear-gradient(to bottom, #ffcc00 50%, #ee8f0b); -webkit-transition: all 0.5s; transition: all 0.5s; width: 200px; border: 2px solid black; border-radius: 8px; } .header-main .form img { width: 20px; } .header-main .form:hover { background-color: #ffcc00; } .header-main .form a { color: rgba(5, 1, 1, 0.842); font-weight: bold; line-height: 60px; display: block; text-align: center; text-decoration: none; } /* パソコンで見たときは"pc"のclassがついた画像が表示される */ .pc { display: none !important; } .sp { display: block !important; } } /* スマートフォンで見たときは"sp"のclassがついた画像が表示される */ .pc { display: block !important; } .sp { display: none !important; } /*# sourceMappingURL=style.css.map */

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

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

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

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

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

guest

回答1

0

ベストアンサー

CSS は後に記述した設定か優先されます。

css

1@media screen and (max-width: 640px) { 2 3 4/* 中略 */ 5 6 /* パソコンで見たときは"pc"のclassがついた画像が表示される */ 7 .pc { 8 display: none !important; 9 } 10 .sp { 11 display: block !important; 12 } 13} 14 15/* スマートフォンで見たときは"sp"のclassがついた画像が表示される */ 16.pc { 17 display: block !important; 18} 19 20.sp { 21 display: none !important; 22}

現状は上記のようになってますが、これだと最後の7行分のコードが優先されます。
この7行を@media screen and (max-width: 640px) {の前に移動させてください。

css

1/* スマートフォンで見たときは"sp"のclassがついた画像が表示される */ 2.pc { 3 display: block !important; 4} 5 6.sp { 7 display: none !important; 8} 9 10@media screen and (max-width: 640px) { 11 12 13/* 中略 */ 14 15 /* パソコンで見たときは"pc"のclassがついた画像が表示される */ 16 .pc { 17 display: none !important; 18 } 19 .sp { 20 display: block !important; 21 } 22}

投稿2020/09/07 20:05

hatena19

総合スコア34075

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

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

takawork

2020/09/08 15:09

ありがとうございます。一応フォームを消して画像を出すことは出来たのですが、同じ場所に出したいのに場所がずれてしまいます。 別視点の問題かと思いますので新たに画像付きで質問をしました。よろしければご回答お願いします。 https://teratail.com/questions/290496
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.35%

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

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

質問する

関連した質問