7

スタイル シート (@media print など) を使用して Web サイトに印刷機能を追加したばかりで、モバイル デバイスのサポートを追加するために同様の方法を使用できないかと考えていました。

そうでない場合、どうすればモバイル デバイスを検出できますか? 私のページは C# (.aspx) で、モバイル デバイスで使いやすいようにページを縮小したいと考えています。

私へのアドバイスはありますか?

編集: 私の妻は BlackBerry を持っているので、最低限、私たちの会社の Web サイトを有効にしたいと思います。

4

6 に答える 6

7

スタイルシートを要求するときに IPhone/iPod Touch が自分自身をどのように宣言するかはわかりませんが、ほとんどの場合、

<style type="text/css">
    @media handheld
    {
      /* handheld styles */
    }
</style>

トリックを行う必要があります。@media print と同じように機能します (または機能しません)。

メディア タイプの完全なリストについては、こちらを参照してください。

于 2008-11-07T19:20:44.607 に答える
2

他の解決策が機能しない場合は、デバイスとそのユーザー エージェントについて多くのことを知っているかなり優れたデータベースであるWURFLのようなものを使用することをお勧めします。

そして、ダウンロードサイズを減らすことを忘れないでください:)

于 2008-11-07T21:58:55.880 に答える
2

モバイル ブラウザは、スタイルの「メディア」属性に従うかどうかなど、サポート対象の点で本当に寄せ集めです。

プログレッシブ エンハンスメント(これは一連の記事の 1 つです) を目指して、ブラウザーがプレーンな HTML しか理解できない場合でも、コンテンツが適切な順序で表示されていることを確認してください。たとえば、メイン コンテンツを前に表示する必要があります。メインコンテンツの方が重要であるため、コードのサイドバー。

まともなリソースが上記の記事で言及されました。

于 2008-11-07T19:43:25.297 に答える
1

持っているユーザー エージェントのタイプを調べて、それがモバイル デバイスかどうかを確認する必要があります。次のコードは、この例です。

public static bool IsMobile(string userAgent)
{
    userAgent = userAgent.ToLower();

    return userAgent.Contains("iphone") |
         userAgent.Contains("ppc") |
         userAgent.Contains("windows ce") |
         userAgent.Contains("blackberry") |
         userAgent.Contains("opera mini") |
         userAgent.Contains("mobile") |
         userAgent.Contains("palm") |
         userAgent.Contains("portable");
}

ほとんどの場合、これでうまくいくはずです。このリンクは、より具体的にするのにも役立ちます。

于 2008-11-07T19:21:48.757 に答える
0

これらすべてを実行する最善の方法は、サーバー レベルで実行することです。

Web サービスを使用して訪問者がモバイルかどうかを確認し、これに基づいて出力を配信します。同じ URL を使用して、アプリケーションで同じビジネス ロジックを実行します。アプリのビュー レイヤーを変更するだけです。

優れたオプションは Wapple Architect (http://wapple.net) です。これを使用すると、一部の Web サービスを使用してサーバー レベルでこれらのチェックを実行し、モバイル デバイスの場合はロジックを実行してコードを追加できます。

間違いなく一見の価値があります。

于 2011-01-22T21:51:59.590 に答える
0

これをチェックしてください!超カッコイイ!http://mobstac.com/developer/

MobStac API プラットフォームは、モバイル サイトを構築および管理する最速の方法です。開発者向けドキュメントと API キーにアクセスできます。

于 2013-05-03T09:13:38.040 に答える