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

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

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

Google Chromeは携帯、テレビ、デスクトップなどの様々なプラットフォームで利用できるウェブブラウザです。Googleが開発したもので、Blink (レンダリングエンジン) とアプリケーションフレームワークを使用しています。

HTML

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

CSS

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

Q&A

3回答

2534閲覧

【HTML/CSS】モバイル表示でdiv間の細い隙間が消せない

timer

総合スコア0

Chrome

Google Chromeは携帯、テレビ、デスクトップなどの様々なプラットフォームで利用できるウェブブラウザです。Googleが開発したもので、Blink (レンダリングエンジン) とアプリケーションフレームワークを使用しています。

HTML

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

CSS

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

1グッド

1クリップ

投稿2021/11/22 07:52

編集2021/11/22 09:02

発生している問題

HTMLを書いていますが、モバイル表示のときに意図しない薄い隙間が表示されてしまいます。
font-size,padding,marginなどを0にしてみましたが上手く行きません。

Windows:10
Chrome:バージョン96
※モバイル表示のモードでなければ隙間は表示されない。

具体的な内容

以下のHTMLをChromeで開き、デベロッパーツール(F12)を開き、
『デバイスのツールバーの切り替え』でモバイル表示にして、サイズを例えば『iPad』にすると、
divとdivの間に隙間ができて、細い白い線が表示されてしまいます。

<!DOCTYPE html> <html> <head> <style> div { height: 100px; background-color: #58e0ff; font-size:0; line-height:0; padding:0; margin:0; } </style> </head> <body> <div></div><div></div> </body>

↓非常に細いですが隙間が空いて、細い白い線が表示されています。
イメージ説明

助言いただければ幸いです。

fufufuIQ👍を押しています

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

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

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

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

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

itagagaki

2021/11/22 08:28

再現しませんでした。
timer

2021/11/22 08:49

申し訳ありません。 質問に記載した以上の条件が思いつかず、追加情報を記載することができません。 かなり薄い線ですので、ディスプレイが小さいと見えなかったりするかもしれません(当方15.6インチ)。 強いて言えば、サイズを『iPad』に設定した場合、拡大率を75%にすると線が細すぎて目を凝らさないとと見えませんが、50%、100%にすると少し見えやすくなります。
Lhankor_Mhy

2021/11/22 08:55

Chrome のズームレベルは100%ですか?
timer

2021/11/22 08:59

はい、100%です。
timer

2021/11/22 09:02

念のため、モバイル表示のモードでなければ隙間は表示されない旨、追記しました。
itagagaki

2021/11/22 09:04

再現しました。 heightによっても変わりますね。 height: 97px; だとちょうど消える感じ。 blinkまたはdevtoolの問題なのでは。
timer

2021/11/22 09:09

実際に本番サーバにアップして当方のスマホ(Galaxy S21/Chrome)で見ても うっすらと線が入ってしまうため、なんとか解決したい次第です。
guest

回答3

0

(本質的ではないですし、マジックナンバーを使うのは褒められたことではないと思いますが、絶対配置で微調整することも可能かと…)

CSS

1div:last-child { 2 position: absolute; 3 width: calc(100% - 16px); 4 top: 107px; 5 height: 101px; 6}

bodyのmarginなくすと、わかりやすくなるのでそれも。

CSS

1body { 2 margin: 0; 3 position: relative; 4} 5div:last-child { 6 position: absolute; 7 width: 100%; 8 top: 99px; /* 本来100pxだが、隙間消すために99pxに。99.5pxとかでも試すとよいかも… */ 9 height: 101px; /* 上に詰めた1px分高く */ 10}

投稿2021/11/22 16:36

編集2021/11/22 16:51
mmkkmm

総合スコア103

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

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

timer

2021/11/23 01:18

ご回答ありがとうございます!! 教えていただいたやり方で隙間を完全に見えなくすることができました。
guest

0

理由はわかりませんが、もし下記が回避策になれば。

CSS

1div{ 2 height: 98px; # 2px少なくして 3 border-top: 1px solid #58e0ff; # そのうち1pxを上のボーダーに 4 border-bottom: 1px solid #58e0ff; # あと1pxを下のボーダーに 5 background-color: #58e0ff; # この背景色とボーダーの色は同じにする 6 padding: 0; 7 margin: 0; 8}

DevToolでは完璧に隙間が消えたわけではありませんでしたが、軽減はされました。
実機で隙間が消えることを願います。

投稿2021/11/22 09:30

itagagaki

総合スコア8402

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

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

timer

2021/11/22 09:57

ご回答ありがとうございます! 隙間がほとんど分からなくなりました。 実機のほうも完全に消えてはくれませんでしたが、なかなか気づく人もいないレベルにはなりましたので、 これで前に進めそうです。
guest

0

これどうですか?
ちょっとだけ縦に伸ばす。

css

1div { 2 height: 100px; 3 background-color: #58e0ff; 4 font-size: 0; 5 line-height: 0; 6 padding: 0; 7 margin: 0; 8 transform: scaleY(1.001); 9}

投稿2021/12/10 12:12

recal

総合スコア1128

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

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

timer

2021/12/10 13:39

ご回答ありがとうございます! 少しの修正で隙間をなくすことができました!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

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

アカウントをお持ちの方は

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

ただいまの回答率
85.35%

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

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

質問する

関連した質問