雑記
2021.08.21 2024.10.01

【現役が語る】iOSブラウザは現代のIE6かもしれない【Webデザイン】

雑記

案件でちょくちょく遭遇するんですけれど、「ChromeやMacのSafari、Android環境では問題なかったのに、iOS(iPhone)だけにバグが起きてしまう」という事案がままあって、その対応のためだけに遅くまで残業することもあり、悩ましく思っています。

この状態はまさに、「iOSは現代のIE6(インターネットエクスプローラー6)」とも言えるのではないかと、ある意味そう思わざるをえません。

では具体的にどう悩ましく思っているのかを、極力わかりやすく述べていきます。同じく悩んでいる人や、これからWEBデザイナー・フロントエンドとして働こうとしている人にも、知識として知っていただければと。

それから、以下の内容は2021年の現状で書かれている部分は、あらかじめご留意ください。

正確情報求む

誤りがあればご連絡ください

iOSにだけ起きる代表的なバグ

背景

iOSは悩ましい

まず、iOS特有のバグや症状がどのようなものがあるのか、以下に代表的なものを挙げていきます。

iOSは背景固定と背景切り抜きの併用ができない

現状のiOSでもっとも頭を悩ませるバグが、

background-attachment:fixed; //背景固定
background-size: cover; //背景トリミング(切り抜き)

このふたつのCSS併用がiOSだけできないというもの(MacのSafariでは問題ないのに……)。

背景固定して、閲覧者のデバイス幅に合わせて背景をトリミング加工もするという、現代のデザイン重視のサイトだとよくあるレイアウトが、iOSにだけできないんですよね。

ちなみにiOSで見るとどうなるかというと、原寸サイズ(?)に拡大されてしまい、なんの背景がわからなくなってしまいます。これはデザイン上かなり致命的です。

fixed(完全固定)やsticky(追従固定)といった、さまざまな人が代替案を考案していますが、前者は1ページに一箇所しか使えませんし、後者はその表現のために全体のコードを微調整しなければならず、余計な時間がかかってしまいます。

このバグが厄介(というよりタチが悪い)なのは、ほぼほぼ公式認定のバグであることと、それを数年前から言われているのに、Apple側はいまだに修正しないことなんですね。

ここを直してもらえれば残業せずに救われる人が世界中で出るでしょうから、早急に対応してもらいたいものです。

background:fixedでの背景固定はiOS(iPhone)でうまく動かないのでこれを使いましょう|ホームページ制作のYCOM

【CSS】background-attachment:fixedがスマホだけ効かない原因と対処法|でざなり

【注意!】iOSでは背景画像が動いてしまう問題について|Qiita

background-attachment:fixed still not supported?|Apple Developer Forums

iOS(iPhone10)はSlickの指スライド操作が無効化される

『Slick』という、Webサイト制作会社やフリーランスなら有名な画像スライドがあります。画像スライドというのは、よく企業サイトのトップページを見ると、最初に画像が左右へ動いたり、ふわーっと切り替わる(フェードイン・アウト)アレのことです。

そしてこの『Slick』はオープンソースライブラリということもあって、誰でも自由に使えるコードな上に自由度も高く、さまざまなサイトでも紹介されているほど、重ねるように有名なんですね。こちらの職場でもよく使っています。

しかしiPhone10のiOSブラウザから、「画像スライドを指(タップ操作)でも動かせるようにする」という挙動ができません。

とはいえ、対応するコードが明確にあるということですし、そんなに難しくないですから、業務を圧迫されることもありませんから、それは救いでしょう。

具体的には、SlickのJavascript(JS)のファイルの最後に、

$(document).ready(function () {
    $('.スライドの該当クラス名').on('touchstart', function(){
        return true;
    });
});

これを追記で入れるだけになります。

jQueryとよばれるライブラリが必要であることや、WordPressだと「$」だと動かない問題が起きるため、「jQuery」と書き換える必要も出てくるかもしれません。

これを語ると長くなりますから、よくわからない方は「jQuery 使いかた」で検索してください。

ただ、これを入れてもiOSだけ指スライドしてもコマ送りのようにスムーズにスライドできない場合もあり、検証は必要です。

【JQuery】Slickのスライダーで、iOS10以上でフリックが効かないバグ対応|MAKOCHIN WEB

slick.jsでフリックの動作が効かないときの対応メモ|kishiken.com

ほかにも縦横比率を維持する「aspect-ratio」がiOSだけ対応されていなかったり(2021年秋に実装予定)、角丸(boeder-radius)とマウスホバー(:hover)の併用が上手くできなかったりと、細かいところはあるんですが、おおむね代表的かつ、致命的になりかねないバグは上記ふたつでしょうね。

コーダーから嫌われていた『IE6』

背景

IE6対応は
いい思い出

この「特定のブラウザに適応させるためだけに残業や追加業務を強いられる」という部分は、かつてWindowsXPなどで使われていた『IE6』を彷彿(ほうふつ)とさせます。

コーディングやフロントエンド知識がない人からすれば、「IE6の何が悪いの? みんな使ってたじゃん」となるんですが、IE6は本当にくせ者でした。

当時のIE6全盛期のころの自分はまだ学生で、趣味でサイトを作っていたレベルでしたが、IE6のためだけに適応させる意味不明なコードなどが多々あったのを覚えています。

どのぐらい嫌われていたのかは、以下のサイト様などがわかりやすいため、興味のある方は参考にしていただければと。というか、マイクロソフト公式すらもIE6を「腐った牛乳」とボロクソに言われ、葬式まであげるレベル。

IE6がコーダーに嫌われていたなんて知らなかった|マイネ王

なぜ、Webサイト制作者からIEは嫌われてきたのか??|株式会社アイビーネット

「IE6は9年前の腐った牛乳」――Microsoftがアップグレード呼び掛け|ITmedia NEWS

IE6の“葬儀”行われる Microsoftから献花も|ITmedia NEWS

記事タイトルでは「iOSは現代のIE6かもしれない」とは書いているんですけれど、正直なところ、まだiOSのほうがマシです。そこもまた救いであり、実際、IE6ほど嫌われてはいませんからね。

ただ重ねるように、iOSのためだけにコードを最適化させる気苦労と憤(いきどお)りは変わりません。

最後に:日本のiPhoneシェアは多くないがしろにできない

背景

日本はiPhone使用率が
非常に高い

iOSってコーダーから見ると悩ましい部分が多々あり、かつてのIE6のようなことをしているんですね。しかもMacのSafari上では問題ないことも多々あることから、「おなじAppleのブラウザなのに、開発部署が別なの?」とツッコみたくなります。

これもまたIE6と似ているんですが、iOS(iPhone)の利用者は特に日本が多いため、「iOSの対応は切ればいい」と単純に言えず、ないがしろにできないのも、頭を抱えている部分です。

そのため、コーディングをするWEBデザイナーやフロントエンドエンジニアの人、またはその業界を目指す人は、サブ端末でもいいのでiPhoneの一台ぐらいは持っておいたほうがいいです。

iPhoneというか、スマホ上ではデベロッパーツール(開発者モード)が使えないため、推測上で直すしかありませんが、全くわからないという状況よりかはマシなはずですからね。

Mac環境なら、『Xcode』というアプリケーションを使用して擬似的なiPhoneの再現は可能ですが、高性能なマシンスペックが必要なため、自信がない場合はオススメしません。

どちらにせよ、AppleはiOS特有のバグを一日でも早く直してもらいたいものです。

iPhoneシェア率が異常!世界と逆をいく日本のスマホ市場【2021年5月】|bitWave

記事・作品が気に入ったら
SNSシェア・引用

利用規約について

本利用規約(以下「本規約」といいます)は、赤竹ただきち(以下「当管理者」)の著作物、または運営するウェブサイト「ウマコセドットコム」(以下「当サイト」)の利用条件を定めるものです。

当サイトの閲覧および、当管理者の著作物を利用時点で、本規約に同意したものとみなされます。

第1条:適用

本規約は、当管理者の著作物・作品利用(複製・引用・転載・解析・AI利用なども含む)に関する一切の行為に適用されます。

第2条:シェアについて

当著作物・作品をシェアする場合は出典を明記してください。

内容の恣意的な改変や創作、攻撃的言動・当管理者や他者の誹謗中傷目的など、モラル・マナーに反しない範囲に限り、シェアやご意見・ご感想などを自由に述べていただけます。

第3条:引用・転載

当著作物の流用・抜粋・引用などにおいて、当管理人までの申告は原則不要です。

当著作物の引用には法的条件(公表物・引用の明示・出典元明記・補足使用・必然性・改変しない)を満たす必要があり、満たしていない場合は無断転載とみなされます。

記事・動画作成などにおいて、当サイト記事を参考にとどめて文章を創作した場合、URL記載は任意です。要約の一部改変は、記事の目的・意図を大幅に変えなければ可能とします。

当作品の引用・転載はURL記入、もしくは当管理者名・アカウント名などの記載をお願いいたします。支援サイト有償公開コンテンツの二次利用・転載は固くお断りいたします。

第4条:キャラクターの使用

当サイトのオリジナルキャラクターは創作性が高い非営利の個人に限り利用できます。非営利・個人の定義はこちらをご参照ください。

AIを利用せず制作費・人件費の範囲内なら、有償配布・支援サイト掲載も可能とします。

第5条:著作権

当サイトは著作権の侵害を目的とするものではありません。スクリーンショットや二次創作元の知的所有権は各権利者・団体に帰属し、各利用規約を確認した上で掲載しています。

当管理者が作成した文章・画像・デザイン・オリジナルキャラクターや作品などは原則、ご依頼でも著作権は当管理人に属し、日本の著作権法および国際条約により保護されています。

ただしVTuberなど、権利者ご自身、または二次創作元のキャラクターなどの知的財産権は、当管理者ではなく元の権利者に属します。

有料二次創作は権利元の創作ガイドライン厳守を努めていますが、問題があれば当サイトのお問い合わせよりご報告ください。

第6条:AIの利用

当管理者の著作物は、解析・研究・個人的利用などの目的において、AIその他の技術の入力・学習対象として利用される可能性を、当管理者および利用者は相互認識するものとします。

当管理者は当著作物・作品のAI利用自体を一律に禁止しませんが、AI生成物で当管理者の創作物だと誤認、有償利用などは固くお断りいたします。

前項に該当する行為は、著作権侵害・不正競争防止法違反・または人格権侵害等に該当する可能性がありますのでご注意ください。

第7条:禁止行為

以下の行為が見られた場合、個別連絡や法的処置などの対応をする場合があります。

A.二次利用・加工・改変

当サイト画像・作品・文章などの悪意ある二次利用・加工・改変行為、名誉毀損・反社会的など、社会通念上問題のある目的での利用。

法律で認められる引用範囲から逸脱した、当管理者のコンテンツ・作品を無断で複製・転載・公衆送信・再配布・販売・改変行為の禁止(引用元を明記しない記事・動画の作成など)。

B.AI生成物の悪用

当管理者の作品・メイキング・設定画など、当著作物、またはその表現上の特徴をAIに利用し、当管理者が創作・関与したかのように誤認、またはAI生成物の有償販売など。

当管理者の名前・サイト名・作品名等を無断で用いたAI生成物の利用行為。

C.歪曲・誹謗中傷

単語・見出しに反応、過度な歪曲・脚色などの不適切なシェアや、当サイト・他者・企業などの誹謗中傷目的での引用。あおり・マウントといった、人格・風評を著しくおとしめる行動の禁止。

D.その他

その他、社会通念上・公序良俗に反する行為や、当管理者が不適切だと判断した場合。

第7条:トラブル・免責事項

当サイトの掲載情報について、正確性・完全性・安全性を保証するものではありません。

シェアなどが要因で発生したトラブルなどについては、一切の責任を負いかねます。あくまでも参考・一意見として扱ってください。

当管理者まで直接ご連絡を希望される場合は当サイトのお問い合わせからご連絡ください。

第8条:規約の変更

当管理者は必要と判断した場合に限り、事前通知をすることなく本規約を変更できるものとします。変更後の規約は、当サイトに掲載された時点で効力を生じるものとします。

第9条:準拠法および管轄

本規約の解釈は日本法を準拠法とします。また、本規約に関して生じた紛争については、当サイト運営者の所在地を管轄する裁判所を専属的合意管轄とします。

米国その他の海外法域における著作権侵害の申立てにおいて、米国デジタルミレニアム著作権法(DMCA)に基づく場合があります。

DMCAに基づく申立ては、海外プラットフォーム、検索エンジン、ホスティングサービス等に対する削除要請が目的であり、本規約の準拠法または管轄を変更するものではありません。

DMCA申立てを行う場合、当管理者が当該著作権・正当な権限を有することを前提とします。

制定日:2017/2/24
改定日:2026/1/4

シェア・引用の前に「規約・ポリシー」をご一読ください(同意したものとみなします)。

特定の単語・見出しで全体を判断したり、内容の過度な歪曲・脚色行為、他者を誹謗中傷・バッシング目的のシェア・引用は固くお断りいたします。

シェア・引用内容が問題・風評被害行為だと判断した際、個別にご連絡を差し上げる場合があります。

社会通念上のモラル・マナー・礼節の範囲内であれば、ご連絡することはございません。シェア・引用をしていただきありがとうございます。

プロフィール

雑記