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

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

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

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

CSS

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

解決済

flexboxを使ってスマホの時要素の順序を変更

退会済みユーザー

退会済みユーザー

総合スコア0

HTML

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

CSS

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

3回答

0評価

0クリップ

275閲覧

投稿2019/07/18 04:12

編集2019/07/18 04:14

お世話になってます。
CSSとHTMLの学習を1からしようと思い、現在はflexboxについて学習しています。

そして、今実現したいのがfloatを使わずに、レスポンシブに以下のような図を作りたいです。

■ デスクトップ
デスクトップ

■ スマホ
スマホ

下記のようにデスクトップの方はできていますが、このコードだと
スマホの幅にした時に、サイドがフッターの下にきてしまいます。
htmlで、footerを一番下にしてあげたいのですが、
そうなるとsideの高さがfooterの横まで伸びません。

html

<div id="wrapper"> <div id="left"> <div id="main1">main1</div> <div id="main2">main2</div> <div id="footer">footer</div> </div> <div id="right"> <div id="side"></div> </div> </div>

css

#wrapper { width: 1000px; margin: 0 auto; display: flex; border: 2px solid black; } #left { width: 75%; } #right { width: 25%; } #main1, #main2, #footer, #side { margin: 20px 10px; border: 2px solid black; text-align: center; } #main1, #footer { height: 50px; } #main2 { height: 100px; } #side { height: calc(100% - 44px); } @media screen and (max-width: 599px) { /* ここで、sideをフッターの上に入れ、 結果、フッターを一番下にしたい */ }

どのようにしたら良いでしょうか。
floatではできるのですが、今回は極力使いたくないです。
お力を貸していただけますと嬉しいです。

良い質問の評価を上げる

以下のような質問は評価を上げましょう

  • 質問内容が明確
  • 自分も答えを知りたい
  • 質問者以外のユーザにも役立つ

評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

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

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

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

teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

  • プログラミングに関係のない質問
  • やってほしいことだけを記載した丸投げの質問
  • 問題・課題が含まれていない質問
  • 意図的に内容が抹消された質問
  • 過去に投稿した質問と同じ内容の質問
  • 広告と受け取られるような投稿

評価を下げると、トップページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

m.ts10806

2019/07/18 04:14

reset.cssは入れられましたか?
退会済みユーザー

退会済みユーザー

2019/07/18 04:16 編集

こちら、choromeのみでとりあえず試したいなと思ってます。 この後、autoprefixerを使ってブラウザ対応したいと考えています。
退会済みユーザー

退会済みユーザー

2019/07/18 04:19

これは... リセットCSSというものがあるというのを、今知りました... ありがとうございます。flexboxの問題が解決したのち、調べて入れてみます。。
m.ts10806

2019/07/18 04:21

wrapperにボーダーがあるうえで内部のwidthが75%25%になってるのではみ出る可能性ありそうだなぁと思っては見てました(コードを実際に動かしたわけではないですが) 要素にはデフォルトで持っている幅とか(特にpadding,margin)があるので個別に0をいれるくらいならreset.cssでリセットしておいてブラウザ間の差がないようにしてから対応したほうがスムーズにいくことも多いです。
退会済みユーザー

退会済みユーザー

2019/07/18 04:29

ありがとうございます。 #wrapperは、内部のwidthを1000pxにして固定し、#leftと#rightで3:1にして、margin等は使っていないのでbox自体は問題なかったです。 reset.cssを使って、ブラウザ間の差異がないようにできるように。ですね! 勉強します!

まだ回答がついていません

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

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

ただいまの回答率
87.20%

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

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

質問する

関連した質問

同じタグがついた質問を見る

HTML

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

CSS

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