フロントの人の雑多メモ

【CSS】iPhoneのSafariでアドレスバーに被る部分が一瞬表示されないときの対処法

【CSS】iPhoneのSafariでアドレスバーに被る部分が一瞬表示されないときの対処法

iPhoneのSafariにおいて、CSSのfixedで固定した要素のアドレスバーに被る部分が一瞬表示されないときの対処法をご紹介。

具体的には、こうなってしまう現象。

スクロールしてアドレスバーが消えた瞬間、画面下部がガクッとなってしまっています。

対処法

CSSでfixedを指定している要素に以下を追記

transform: translateZ(0.01px);

具体的には、こういうCSSになると思います。

.view {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100lvh;
	background: url(img/img.jpg) 50% 50% / cover no-repeat;
	z-index: 2;
	transform: translateZ(0.01px); /*追記*/
}

すると解消されました。

※iOS16.5.1で検証

ちなみに、高さの指定には「lvh」を使っています。

「dvh」を使っていると解消されないのでご注意ください。

サンプル

一応、本ページにこの現象を再現したものを置いておきます。

よければ実機でご確認ください。

うまくいく例と

うまくいかない例です。

コメント

内容を確認の上、個人情報などは省いて掲載させていただきます。

お名前・メールアドレスも入力する

メールで返信がほしい場合に入力してください。

頂いた個人情報は開示しません。返信のためだけに利用いたします。

直接送信されます。確認の上、「送信」してください。

お役に立てましたら応援をお待ちしております!
頂いた応援は子育てに活用させていただきます。

OFUSEで応援を送る


または以下のボタンからなにか買って応援
(リンク先の商品を買わなくても大丈夫です。)

Amazon

楽天市場

Yahoo!ショッピング

PR

Amazonのアソシエイトとして「けん」は適格販売により収入を得ています。

シェア

Twitterでシェア Facebookでシェア LINEでシェア はてなブックマークでシェア

お役に立てましたら以下のボタンからなにか買って応援をお願いします!
頂いた応援は子育てに活用させていただきます。