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

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

新規登録して質問してみよう
ただいま回答率
85.35%
レスポンシブWebデザイン

レスポンシブWebデザイン(RWD)は、スクリーンのサイズ、プラットフォーム、オリエンテーションに基づいて様々なデバイスで最適のサイトを生成するのウェブデザインとその開発のアプローチ方法を呼びます。

HTML

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

CSS

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

Q&A

解決済

1回答

907閲覧

HTML/CSS absoluteで流動的な画像3枚とテキストのまとまり レスポンシブ対応

TERASHU_

総合スコア3

レスポンシブWebデザイン

レスポンシブWebデザイン(RWD)は、スクリーンのサイズ、プラットフォーム、オリエンテーションに基づいて様々なデバイスで最適のサイトを生成するのウェブデザインとその開発のアプローチ方法を呼びます。

HTML

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

CSS

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

0グッド

0クリップ

投稿2021/12/22 18:06

HTML/CSSでデザインカンプからLPを制作しています。

そのトップ画面で、左側に配置と角度が不規則な3枚の画像と、見出しなどのテキスト群が横並びになっているデザインがあります。それについてわからないことが2点あります。

1点目はレスポンシブ対応です。PC表示ではposition:absoluteでカンプ通りに配置すればいいと思うのですが、画面幅を縮めると画像とテキストが被ってしまいます。画像が横滑りせずに意図したところに配置できる方法を教えてほしいです。

2点目はこのトップのbackground-imageをどのサイズでも同じところが見えてほしいのですが、サイズにより見える部分が変わってしまうことです。どんなサイズでも同じ部分が表示される方法があれば教えてほしいです。

HTML

1<div id = "top"> 2 <div class = "flex"> 3 <div class = "flex-item1"> 4 <img src = "写真1"> 5 <img src = "写真2"> 6 <img src = "写真3"> 7 <img src = "写真吹き出しの上の"> 8 </div> 9 <div class = "flex-item2"> 10 <h1> 11 見出しテキスト見出しテキスト見出しテキスト見出しテキスト見出しテキスト見出しテキスト見出しテキスト 12 </h1> 13 </div 14 </div> 15 16 <div class = "column-flex"> 17 <div class = "flex-item3"> 18 <p>テキストテキストテキストテキストテキスト</p> 19 </div> 20 <div class = "flex-item4"> 21 <div>ボタン</div> 22 </div> 23 </div> 24</div>

CSS

1#top{ 2 background: url(../img/背景.jpg); 3 background-size: cover; 4 background-repeat: no-repeat; 5 background-position: 0px -900px; 6 background-color: rgba(255,255,255,0.8); 7 background-blend-mode: lighten; 8} 9.flex{ 10 display:flex; 11 flex-wrap:wrap; 12 justify-content:space-around; 13} 14.flex-item1,.flex-item2{ 15 width:50%; 16} 17.flex-item1 img{ 18 position:absolute; 19 top:任意px; 20 left:任意px; 21 height:300px; 22 width:300px; 23 z-index:1000; 24} 25.flex-item2 h1{ 26 font-size:3rem; 27} 28@media screen and (max-width:640px){ 29 .column-flex{ 30 display:flex; 31 align-items:column-reverse; 32 } 33}

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

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

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

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

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

guest

回答1

0

ベストアンサー

__PC表示ではposition:absoluteでカンプ通りに配置すればいいと思うのですが、画面幅を縮めると画像とテキストが被ってしまいます。画像が横滑りせずに意図したところに配置できる方法を教えてほしいです。 __

具体的なコードと想定しているデザインが提示されていないので、ふわっとした一般論的な回答になりますが、px単位で指定するのをやめた方がいいでしょう。


どんなサイズでも同じ部分が表示される方法があれば教えてほしい

background-position background-size をパーセンテージ指定するのがいいかと思います。
サンプルを置いておきます。
https://jsfiddle.net/Lhankor_Mhy/xdvag5jo/

なお、アスペクト比を維持したいのであれば、どちらかの軸のサイズ指定を外すのがいいかと思います(全く同じ部分ではなくなりますが)。

background-position - CSS: カスケーディングスタイルシート | MDN
background-size - CSS: カスケーディングスタイルシート | MDN

投稿2021/12/23 02:19

Lhankor_Mhy

総合スコア36960

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

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

TERASHU_

2021/12/23 05:27

サンプルまでわざわざありがとうございました! とてもためになりました。 試してみます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.35%

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

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

質問する

関連した質問