iphoneのsafariで表示が崩れてしまった。

こんな壁にぶち当たっいませんか?
私は先々週ぶち当たっていました。

原因は何でしょうか?

それは、positionタグでした。

私はテキストをpositionで位置指定していました。
そして、display:block;でなんとかなる様な甘い壁ではありませんでした。

また、iphoneで崩れている。
という事はipadでも崩れている。
という事です。
心が漆黒の闇に包まれる瞬間ですね。

iphone確認環境は以下の通りです。
●iphone6s
●ios 10.3.1
●ブラウザ safari

CSSハックで回避を試みる

もうこれっきゃない。
そう思い、色々調べてsafariのみに対応するCSSを書くことにしました。

/*Safariだけに適用されるCSSハック*/
@media screen and (-webkit-min-device-pixel-ratio:0) {
::i-block-chrome, .css_selector {
position: absolute;
top: 15px;
text-align: center;
}
}

結果は、完敗でした。

そんな私は、もうpositionタグを使うことをやめたのでした。
そう。何をどうあがいても崩れ続ける時は、いっそのことpositionタグの使用をやめたらいいと思います。

そしてpadding君に助けてもらいました。
フッ、最初からそうすればよかったぜ。
それで表示がうまくいくなら、オールオッケー!!

safari用 新型CSSハック

しかしその後も少しsafariの事が気になったので、調べてみると…
ありました。
別の書き方。

/*Safariだけに適用される新型CSSハック*/
_::-webkit-full-page-media, _:future, :root .css_selector {
position: absolute;
top: 15px;
text-align: center;
}

しかし、padding君に助けられた私は未だにこのCSSを試していません。

試してみたら、またこの記事を更新します!

safari表示崩れに関するその後・・・とブレークポイント追記

約8ヶ月ぶりです!皆さん、こんにちは。
今日は、2017年12月7日です!

今回は、このsafari表示崩れに関する続きを書こうと思うのですが、
じつは前回最後に書いた、新型CSSハックを試していません。
違うサイトの制作時に、冒頭で書いた方のCSSで回避できました。

今回の確認環境は以下の通りです。
(今回の崩れはiphoneではないです。PC環境です!すみません。)
●Windows10 Pro Ver.1703
●ブラウザ safari 5.1.7

症状:レスポンシブサイトにおいて、PC表示の時に特定ブロックの位置が数ピクセル上にずれる。
   今回は直上のブロックにpositionタグを使用していました。
   (これが原因かどうかは謎ですが、、、怪しいze)

そして、レスポンシブサイトなのでブレークポイント(最小幅751px)も追記しました。
(これ、前の時もレスポンシブサイトだったのですが、、、もしかして、これ書き忘れてたかな。。。とゾッとしてます。。。)

/*Safariだけに適用されるCSSハック*/
@media screen and (-webkit-min-device-pixel-ratio:0) and (min-width:751px) {
  ::i-block-chrome, 
    セレクタ { プロパティ: 値; }
}	

という事で、レスポンシブサイトの時はブレークポイントも書いてみてくださいね!
ではでは。

Written by

売上が上がらない、人手が足りない…EC運営代行歴15年のプロが解決 繁忙期猫の手も借りたい!そんなあなたに代わって制作いたします。バナー・LP・商品画像・イラスト