レスポンシブ対応で右カラムのコンテンツを上に表示させる方法
2024/01/16
レスポンシブ対応サイトの簡易なコーディングをする経験があった。何も考えずにHTMLを上から書いていくと最初に左カラム部分の作成し、次に右カラム部分を書くことになる。ただ、スマホで閲覧した際に右カラム部分を上部に、左カラム部分を下部に表示させたかった。以下に方法をメモ。
HTML部分
<div class="container"> <div class="right"> right </div> <div class="left"> left </div> </div>
CSS
.container{ display: flex; max-width: 100%; } .left{ width: 50%; height: 500px; background-color: #555; order: 1; } .right{ width: 50%; height: 500px; background-color: #f00; order: 2; } @media screen and (max-width: 700px) { .container{ display: inline-block; width: 100%; max-width: 100%; } .left{ width: 100%; max-width: 100%; } .right{ width: 100%; max-width: 100%; } }
HTMLのソースコードを見る限りだと.rightが左にきそうだが、CSSのorderプロパティを指定することで順序を決められる。ディスプレイ横幅が700px以下になるとそれが解除され、HTMLのソースコード通り.rightが上に来る。
関連記事
-
CSSのdisplayについて
よく使うdisplayだけれども、noneとblock以外で 初めて使うことがあ ...
-
CSSとJavaScriptでテキストのコピー防止
あるサイトで文言の意味が分からずGoogleで検索する為にコピペしようとするも、 ...
-
HTML / CSSで作成したコンテンツをPDFファイルで出力する方法(TCPDF)
HTML / CSSで作成したコンテンツをPDFファイルで出力させたい。以前mp ...
-
CSSで一つの要素に対して複数の背景色を指定する方法
1つのdiv要素に対して複数の背景色をつけたかった。background-col ...
-
「slick」でスライダー中央の下部にのみ指定したコンテンツを表示する方法
「slick」でスライダー画像の下部に何らかのコンテンツ(テキスト・リンク・別画 ...