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

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

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

HTML5 (Hyper Text Markup Language、バージョン 5)は、マークアップ言語であるHTMLの第5版です。

Safari

SafariはAppleのウェブブラウザであり、Mac OS XとiOSのデフォルトのブラウザです。

iPhone

iPhoneとは、アップル社が開発・販売しているスマートフォンです。 同社のデジタルオーディオプレーヤーiPodの機能、電話機能、インターネットやメールなどのWeb通信機能の3つをドッキングした機器です。

HTML

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

CSS

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

Q&A

解決済

1回答

241閲覧

iPhoneのSafariでのレイアウト崩れを解消したい

ttaa7030

総合スコア3

HTML5

HTML5 (Hyper Text Markup Language、バージョン 5)は、マークアップ言語であるHTMLの第5版です。

Safari

SafariはAppleのウェブブラウザであり、Mac OS XとiOSのデフォルトのブラウザです。

iPhone

iPhoneとは、アップル社が開発・販売しているスマートフォンです。 同社のデジタルオーディオプレーヤーiPodの機能、電話機能、インターネットやメールなどのWeb通信機能の3つをドッキングした機器です。

HTML

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

CSS

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

0グッド

0クリップ

投稿2024/12/04 05:09

編集2024/12/05 00:25

実現したいこと

スマートフォンメニューを開いた部分に配置した、電話マークと問合わせ番号を横並びで表示させたいです。

発生している問題・分からないこと

iPhoneのSafariで表示させると、電話マークと番号が改行されて不自然な状態になってます。
なぜかiPhoneのChromeでは正常に表示されています。
イメージ説明

該当のソースコード

html

1<div class="contact-3line-sp"> 2 <p>ご相談は無料です</p> 3 <p class="phone-num"><img src="img/icon_phone_white.svg" alt="">000-000-0000</p> 4 <p>(月曜〜金曜)9時〜18時 (土曜)9時〜17時</p> 5</div>

css

1.phone-num a { 2 color: #fff; 3 text-decoration: none; 4} 5 6 .contact-3line-sp { 7 width: calc(100% - 16px * 2); 8 border-radius: 4px; 9 background: #f00; 10 color: #fff; 11 text-align: center; 12 margin: 0 auto; 13 line-height: 1.1; 14 padding: 12px 0; 15 margin-top: 72px; 16 } 17 18 .contact-3line-sp p:nth-child(1) { 19 font-size: 24px; 20 font-weight: bold; 21 } 22 23 .contact-3line-sp p:nth-child(2) img { 24 width: 19px; 25 height: 30px; 26 margin-right: 5px; 27 vertical-align: -2px; 28 } 29 30 .contact-3line-sp p:nth-child(2) { 31 font-size: 38px; 32 font-weight: bold; 33 line-height: 1.1; 34 letter-spacing: 1px; 35 white-space: nowrap; 36 } 37 38 .contact-3line-sp p:nth-child(3) { 39 font-size: 13px; 40 margin-top: 4px; 41 }

試したこと・調べたこと

  • teratailやGoogle等で検索した
  • ソースコードを自分なりに変更した
  • 知人に聞いた
  • その他
上記の詳細・結果

CSSにおいて
・省略していたwidthを追加してみました。
・横幅に余裕を持たせるために、画面幅全体に幅を広げてみました。
・white-space: nowrap;を追加してみました。

全て結果は変わらず、レイアウトは崩れたままでした。

補足

表示確認時の機種
iPhone SE3 iOS17.7.1(Safariも同じバージョンらしいです)
Chrome バージョン131.0.6778.73

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

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

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

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

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

int32_t

2024/12/04 08:02

iPhoneのSafariとChromeは同一のレンダリングエンジンなので、このような描画の差が観測されること自体がおかしいです。同一のデバイス上で差が出るのでしょうか? 同一のデバイスであれば、Safariの方だけ古いコンテンツをロードしているとかないですか。
ttaa7030

2024/12/04 09:39

改めてデータ更新時に一部文字変更するなどして確認しましたが、どちらのブラウザでも最新に更新されてるようでした。
guest

回答1

0

ベストアンサー

とりあえずimgはfontawesomeとかにしてみて

html

1<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.1/css/all.min.css" /> 2<div class="contact-3line-sp"> 3 <p>ご相談は無料です</p> 4 <p class="phone-num"><i class="fa-solid fa-phone"></i>000-000-0000</p> 5 <p>(月曜?金曜)9時?18時 (土曜)9時?17時</p> 6</div>

nth-childへのwhitespaceはやめて、ピンポイントにphone-numクラスに指定したほうがよいかと

css

1.phone-num{ 2 white-space: nowrap; 3}

投稿2024/12/04 05:46

yambejp

総合スコア116921

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

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

ttaa7030

2024/12/04 07:28

以下の点を変更してみたのですが、アイコンは変更できましたが改行については変わらずそのままでした。 キャッシュ削除後でも同じでした。 変更した点 ・電話マークをfontawesomeのアイコンに変更 ・nth-child(2)の表記をphone-numで統一
yambejp

2024/12/04 08:22

.phone-num{ white-space: nowrap; word-break: keep-all; overflow: hidden; } とかではどうでしょう?
ttaa7030

2024/12/04 09:45

こちらも変わらず改行は解消されませんでした。
ttaa7030

2024/12/13 13:29

今回は画像に置き換えて対応することにしました。複数の提案をいただきありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.34%

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

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

質問する

関連した質問