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

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

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

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

CSS

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

Q&A

解決済

2回答

907閲覧

画像とテキストを交互に横並び2段の横並びを解除して縦並びにしたい

kk12

総合スコア11

HTML

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

CSS

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

0グッド

0クリップ

投稿2022/03/02 14:30

編集2022/03/02 15:18

display-directionでテキストと画像を交互に2段でレイアウトした部分をレスポンシブにするために縦並びに戻したいのですが、1段目しか解除できません。

h3とpタグが上、画像が下の並びにしたいのですがservice2の部分はどうしたらできるでしょうか。
調べてでてきた下記も試してみましたがそもそも適用されませんでした。

<試したこと>
・flex-direction: column;の適用
・display: block;を適用してflexを解除しようとした

イメージ説明

HTML

1コード 2```<section id="Service"> 3 <h2 class="title">Service</h2> 4 <ul class="Service-box"> 5 <li class="service1"> 6 <figure><img src="images/service-image-1.png"></figure> 7 <div class="Service-text"> 8 <h3 class="Service-heading">リリース時のサポートで<br>サービスのブランディングを</h3> 9 <p>弊社では、リリース時もサポートさせて頂きます。プレスリリース用のサイトや動画制作を通して、サービスのブランディングを行わせて頂きます。</p> 10 </div> 11 </li> 12 <li class="service2"> 13 <figure><img src="images/service-image.png"></figure> 14 <div class="Service-text"> 15 <h3 class="Service-heading">リリース後のサポートで<br>効果を最大化させる</h3> 16 <p>弊社では、リリース後もサポートさせて頂きます。サービスはリリース後に様々な課題にぶつかります。そこでクライアント様と一緒に改善を行うことで、デザインの効果を最大化させます。</p> 17 </div> 18 </li> 19 </ul> 20 </section> 21 22 23

コード

.Service-box li { display: flex; } .Service-box li:nth-child(even) { flex-direction: row-reverse; } .Service-heading{ line-height: 2.2em; font-size: 1.5rem; } figure{ width: 50%; } figure img { width: 100%; } .Service-text{ width: 50%; } @media screen and (max-width:960px){ .service1{ flex-direction: column-reverse; } .service2{ display: block; } .Service-text{ width: 100%; } figure{ width: 100%; } }

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

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

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

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

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

mineralwater

2022/03/02 14:45

出来れば、現状の画像が欲しいです。 力になれるかもしれません。
mineralwater

2022/03/02 15:13

画像ありがとうございます。 あと、cssの上の方のコードも記述して頂けると助かります。 dispaly:flex;がどの要素にかかっているのかわからないためです。
kk12

2022/03/02 15:20

確認不足で申し訳ありません。 追加しましたのでよろしくお願いいたします。
guest

回答2

0

最初の方で下記の設定をしています。

css

1.Service-box li { 2 display: flex; 3}

後ろのメディアクエリ内で、同じ要素に下記の設定をしています。

css

1.service2{ 2 display: block; 3}

前者の方が詳細度が高いので前者が有効になっています。

詳細度 - CSS: カスケーディングスタイルシート | MDN

後者のメディアクエリ内の設定の詳細度をあげればいいでしょう。
例えば、下記のように修正すれば縦並びになります。

css

1.Service-box .service2 { 2 display: block; 3}

投稿2022/03/02 15:47

hatena19

総合スコア33699

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

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

0

ベストアンサー

原因
cssの優先順位が原因のようですね。
詳しくは下記のurlの記事等を参考にしてみてください。
https://zero.css-happylife.com/basic/specificity.shtml
http://creator.aainc.co.jp/archives/4947

解決策
以下のコードどちらかをメディアクエリ内に追加してみてください。

css

1.Service-box li:nth-child(even) { 2 flex-direction: column; 3}

or

css

1.service2 { 2 flex-direction: column !important; 3}

投稿2022/03/02 15:26

編集2022/03/02 15:54
mineralwater

総合スコア289

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

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

kk12

2022/03/02 15:38

追加してみたのですが、service2の部分のみcssが打ち消されてしまい適用できませんでした。
mineralwater

2022/03/02 15:44

回答を編集してみました
kk12

2022/03/02 15:50

遅い時間までありがとうございます。 無事にできました!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問