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

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

ただいまの
回答率

90.49%

  • HTML

    9230questions

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

  • CSS

    5966questions

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

レスポンシブデザインでの画像配置

解決済

回答 1

投稿 編集

  • 評価
  • クリップ 0
  • VIEW 339

kdng

score 1

レスポンシブデザインのサイトを作成中です。

ウィンドウ幅を767px以下にした場合、
ヘッダーの左端に青い画像を、右端にテキスト(電話番号や営業時間の部分)とその左隣に赤い画像を配置しています。

テキストと赤い画像は一定の間隔を保ったまま、常にウィンドウの右端に表示したいです。

しかし、
・ウィンドウ幅を変えると画像とテキストの間隔が変動する。
・ウィンドウ幅を小さくすると(389px以下)、テキストが画面からはみ出てしまう。
(赤い画像が「メールでのお問合せ」を右に押しやってしまう)
・赤い画像とテキストが、縦方向に中央揃えになっていない。

の3つ問題があります。

以下にコードを記載します。

<body>      
    <header>  
        <div class="header-logo">  
        <a href=""><img src="http://kado-select.com/images/test/header-logo.png"></a>  
        <h1>説明文</h1>  
        </div>  
        <div class="header-address pcbl">  
            <img src="http://kado-select.com/images/test/header-miyako.png" alt="ロゴ">  
            <p class="btn-action-01"><a href="mailto:mail@.com">メールでのお問い合わせはこちら</a></p>  
            <p class="header-tel-contact-txt">お電話でのお問い合わせはこちら</p>  
            <p class="header-hours-txt">[営業時間]<br class="pcin">月〜金9:00〜17:00</p>  
            <p class=" header-tel-number-txt">0000-00-0000</p>  
        </div>  
        <div class="header-address spbl">  
            <img src="http://kado-select.com/images/test/header-miyako.png" alt="ロゴ" style="width:6rem;float:left;">  
            <p class="header-tel-number-txt">0000-00-0000</p>  
            <p class="header-hours-txt">[営業時間]月〜金9:00〜17:00</p>  
            <p class="btn-action-01"><a href="mailto:mail@.com">メールでのお問い合わせ</a></p>  
        </div>  
    </header>  
</body>  

``````````````````````````````````````````````````````````````````````````

html, body, div, h1, p, img, header{  
    margin: 0;  
    padding: 0;  
    border: 0;  
    font-size: 100%;  
    vertical-align: baseline;  
}  
body {  
    line-height: 1;  
    font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", "游ゴシック", YuGothic, sans-serif;  
    width: 100%;  
}  
*,  
*:after {  
  -webkit-box-sizing: border-box;  
  -moz-box-sizing: border-box;  
  box-sizing: border-box;  
}  
img {  
  display: inline-block;  
  vertical-align: middle;  
  max-width: 100%;  
}  
html{  
    font-size: 16px;  
}  
.warapper{  
    width:100%;  
}  
header{  
    width: 1000px;  
    margin: 10px auto 20px;  
    display: flex;  
    justify-content:space-between;  
    align-items: center;  
}  
.header-logo{  
    display: flex;  
    justify-content:space-between;  
    align-items: center;  
    margin-left: 1rem;  
}  
header h1{  
    margin-left: 35px;  
    font-weight: normal;  
    font-size: 0.8rem;  
    line-height: 1.5;  
}  
.header-address{  
    width: 490px;  
    text-align: right;  
    position: relative;  
    margin-top: -5px;  
    display: inline-block;  
}  
.pcbl img{  
    float:left;  
    clear:both;  
    margin-left: 5rem;  
}  
.pcbl{  
    display: block !important;  
}  
.pcin{  
    display: inline !important;  
}  
.spbl{  
    display: none !important;  
}  

.btn-action-01{  
    display: inline-block;  
}  
.btn-action-01 a {  
    background: #a48831 none repeat scroll 0 0;  
    color: #fff;  
    display: block;  
    text-align: center;  
    text-decoration: none;  
    border-radius: 5px;  
    padding:5px 30px 5px 20px;  
    font-size: 0.9rem;  
    position: relative;  
}  
.btn-action-01 a::after {  
    -moz-border-bottom-colors: none;  
    -moz-border-left-colors: none;  
    -moz-border-right-colors: none;  
    -moz-border-top-colors: none;  
    border-color: transparent transparent transparent #fff;  
    border-image: none;  
    border-style: solid;  
    border-width: 5px;  
    content: "";  
    display: block;  
    right: 15px;  
    margin-top: -5px;  
    top: 50%;  
    width: 0;  
    position: absolute;  
}  
.header-tel-contact-txt{  
    font-size: 0.9rem;  
    margin-top: 0.5rem;  
}  
.header-hours-txt{  
    text-align: left;  
    font-size: 0.875rem;  
    line-height: 1rem;  
    display: inline-block;  
    margin-right: 10px;  
}  
.header-tel-number-txt{  
    font-size: 1.5rem;  
    font-weight: bold;  
    color: #a48831;  
    display: inline-block;  
}  

@media only screen and (max-width: 767px) {  
html{  
    font-size: 13px;  
}  
header{  
    width: 100%;  
    padding-left: 5%;  
    padding-right: 5%;  
    margin-bottom: 1rem;  
}  
header h1 {  
    display: none;  
}  
.header-address{  
    position: static;  
    text-align: right;  
    max-width: 70%;  
}  
.header-logo{  
    margin-left: 0.5rem;  
}  
.header-logo img{  
    width: 3rem;  
}  
.header-hours-txt{  
    text-align: right;  
    font-size: 0.7rem;  
    margin-bottom: 0.5rem;  
    display: block;  
}  
.header-tel-number-txt{  
    position: static;  
    margin-bottom: 0.5rem;  
    font-size: 1.2rem;  
    margin-top: 1rem;  
    display: block;  
}  
.header-tel-number-txt a{  
    text-decoration: none;  
    color: #a48831;  
}  
.pcbl{  
    display: none !important;  
}  
.pcin{  
    display: none !important;  
}  
.spbl{  
    display: block !important;  
    white-space: nowrap;  
}  
/* --- ボタン-- */  
.btn-action-01 a{  
    border-radius: 0;  
    background-color: #fff;  
    border: 2px solid #a48831;  
    color: #a48831;  
    padding: 0.2rem 0.5rem;  
    padding-right: 1rem;  
    font-weight: 600;  
}  
.btn-action-01 a::after {  
-moz-border-bottom-colors: none;  
-moz-border-left-colors: none;  
-moz-border-right-colors: none;  
-moz-border-top-colors: none;  
border-color: transparent transparent transparent #a48831;  
border-image: none;  
border-style: solid;  
border-width: 5px;  
content: "";  
display: block;  
right: 0;  
margin-top: -5px;  
top: 50%;  
width: 0;position: absolute;  
}  
}  
@media only screen and (max-width: 320px) {  
html{  
    font-size: 11px;  
}  
}  

`````````````````````````````````````````````````````````````````````````

大変お手数ですが、解決方法をご教示ください。
宜しくお願いいたします。

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

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

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

    クリップを取り消します

  • 良い質問の評価を上げる

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

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

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

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

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

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

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

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

質問への追記・修正、ベストアンサー選択の依頼

  • kei344

    2017/09/27 17:40

    提示のHTMLでは「赤い画像」がどれであるか、そのサイズがどうなっているのかがわかりません。

    キャンセル

  • alg

    2017/09/27 18:48

    レスポンシブルデザイン → レスポンシブデザイン かと。 レスポンシブル(responsible):責任のある、など。レスポンシブ(responsive):すぐ応答する、敏感な、など。

    キャンセル

  • kdng

    2017/09/28 10:53

    algさん、ご指摘ありがとうございます。お恥ずかしい限りです。

    キャンセル

回答 1

checkベストアンサー

+1

こういうことかな。

.header-address.spbl {
    width: auto;
    position: relative;
}
.header-address.spbl > img {
    position: absolute;
    right: 100%;
    top: 50%;
    transform: translateY(-50%);
}

https://jsfiddle.net/5Lg7h9bs/3/

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2017/09/28 10:49

    まさしくこれです!ありがとうございました。

    キャンセル

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

  • ただいまの回答率 90.49%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

関連した質問

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

  • HTML

    9230questions

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

  • CSS

    5966questions

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