Web design and hosting, database, cloud and social media solutions that deliver business results
  • ビジネスソリューション
    • データベースサービス
      • サーバーのアップグレードと DBA サービス
      • データウェアハウス サービス
      • データ統合
      • パワーBI
    • ウェブサイトデザイン
      • Web サイトのセキュリティ
      • Web サイトの最適化
      • ロゴデザイン
      • 支払いゲートウェイ
      • テクニカルツール
    • ビジネスサービス
      • Google クラウド サービス
      • アマゾン ウェブ サービス
      • マイクロソフト アズール
    • ソーシャルメディア
    • マイクロソフトオフィス
  • 学校
    • テスト環境
    • 学習データベース
      • 基礎
      • SQL Serverデータ
      • SQLServerのメンテナンス
      • SQL Serverの日付の使用
      • SQLServerピボットの使用-ピボット解除
      • SQLServer関数の使用
      • オープンクエリを取得
      • ツール
    • ウェブデザインを学ぶ
      • Ousia コンテンツ管理システムの構築
      • ASP-NET の使用
      • CSS の使用
      • JavaScript の使用
    • クラウドと IT サービスの学習
      • タスク スケジューラ エラー 2147943645
      • OpenSSL での SSL の要求と PFX ファイルの生成の簡単な手順
    • ソーシャル メディアの使用
      • Facebookアカウントを個人用からビジネス用に変更する
      • Google レビューを依頼する
      • ソーシャル メディアの取り組みをどこに集中させるかを選択する
      • ソーシャル メディアの画像サイズ
      • メタ データを使用してソーシャル メディア画像を設定する
  • 私たちに関しては
    • ブログ
      • Google コア アップデート 2020 年 1 月
      • インターネット上のウェブサイトに関する最も厄介なこと
      • ウェブサイトの広告リーフレットのコンテンツを選択する方法
      • エントリーレベルのゲーム機の構築
      • オンライン詐欺の防止
      • ギグエコノミーのスキマー
      • ホットチリインターネット閉鎖
      • 無料のベクター グラフィックスのトップ 5 Web サイト
    • キャリア
      • 翻訳者 英日
      • 英語-トルコ語翻訳者
    • チーム
      • アイセ・ハー
      • アリ アル アミン
      • ギャビン・クレイトン
      • サイガングー
      • スーリヤ・ムッカマラ
      • スニール・クマール
      • チェスターコッパーポット
    • ポートフォリオ
Deutsch (DE)English (EN-US)English (EN-GB)हिंदी (HI)italiano (IT)日本語 (JA)Türk (TR)

モバイルおよびデスクトップ開発用の 1 つまたは個別のサイトの使用

モバイルおよびデスクトップ開発用に 1 つまたは個別のサイトを使用する。

Use responsive CSS if possible.

I've been spending time looking at the ongoing battles between developers over one of the fundamental headaches of web design, should you build separate sites for mobile devices and desktop computers. Some of the changes that Google have introduced like syncing your bookmarks for the IPhone and Chrome are really useful, this has led me to the single site conclusion, but a lot the code below could be used to redirect to a seperate site.

The site should be easy enough to use on either, while you can turn some things on or off with some simple detection.

There is also a cookie stored on the users device that remembers the last option selected.

This is what the detection does on this site. It is a simple dropdown with three options; Desktop, Apple and Mobile. There is also a dual menu system, which offers a simplified breadcrumb for the user as well.

HTML

<asp:DropDownList ID="SelDevice" runat="server" ClientIDMode="Static" Width="100px" AutoPostBack="True">

    <asp:ListItem>Desktop</asp:ListItem>

    <asp:ListItem>Apple</asp:ListItem>

    <asp:ListItem>Mobile</asp:ListItem>

</asp:DropDownList>

<div id="SubMenu">

    <div id="Current" runat="server" clientidmode="Static"></div>

    <div id="SubMenuList" runat="server" clientidmode="Static"></div>

</div>

Now this code is used in the Page Load event, setting the linked style sheet before rendering on the page. You could also for instance change the visibility of certain items within the If statement.
LoaderVBC#

VB

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load    If Session("View") Is Nothing Then        If Request.Cookies("ViewType") Is Nothing Then            If Request.Browser.IsMobileDevice = True Then                Dim ua As String = Request.UserAgent.ToString().ToLower()                If ua.Contains("iphone") Or ua.Contains("ipad") Or ua.Contains("ipod") Then                    Session("View") = "Apple"                Else                    Session("View") = "Mobile"                End If            Else                Session("View") = "Desktop"            End If        Else            Session("View") = Request.Cookies("ViewType").Value.ToString        End If    End If    SelDevice.SelectedValue = Session("View").ToString    If Session("View").ToString = "Apple" Then        cssLink.Href = "/gsclaytonmob.css"    ElseIf Session("View").ToString = "Mobile" Then        cssLink.Href = "/gsclaytonmobold.css"    Else        cssLink.Href = "/gsclayton2.css"    End If    GetMenus()End Sub

C#

protected void Page_Load(object sender, EventArgs e){    if (Session("View") == null)    {        if (Request.Cookies("ViewType") == null)        {            if (Request.Browser.IsMobileDevice == true)            {                string ua = Request.UserAgent.ToString().ToLower();                if (ua.Contains("iphone") | ua.Contains("ipad") | ua.Contains("ipod"))                {                    Session("View") = "Apple";                }                else                {                    Session("View") = "Mobile";                }            }            else            {                Session("View") = "Desktop";            }        }        else        {            Session("View") = Request.Cookies("ViewType").Value.ToString;        }    }    SelDevice.SelectedValue = Session("View").ToString;    if (Session("View").ToString == "Apple")    {        cssLink.Href = "/gsclaytonmob.css";    }    else if (Session("View").ToString == "Mobile")    {        cssLink.Href = "/gsclaytonmobold.css";    }    else    {        cssLink.Href = "/gsclayton2.css";    }    GetMenus();}
In the code above you would replace the setting of CSS with a redirect.
We will need some code to recognise that the user has changed their view type. We will also stored a cookie here to remember the value next time they access the site.
LoaderVBC#

VB

Protected Sub SelDevice_SelectedIndexChanged(sender As Object, e As EventArgs) Handles SelDevice.SelectedIndexChanged    Session("View") = SelDevice.SelectedValue    Response.Cookies("ViewType").Value = Session("View")    Response.Cookies("ViewType").Expires = DateTime.Now.AddDays(1000)    If Session("View").ToString = "Apple" Then        cssLink.Href = "/gsclaytonmob.css"    ElseIf Session("View").ToString = "Mobile" Then        cssLink.Href = "/gsclaytonmobold.css"    Else        cssLink.Href = "/gsclayton2.css"    End If    GetMenus()End Sub

C#

protected void SelDevice_SelectedIndexChanged(object sender, EventArgs e){    Session("View") = SelDevice.SelectedValue;    Response.Cookies("ViewType").Value = Session("View");    Response.Cookies("ViewType").Expires = DateTime.Now.AddDays(1000);    if (Session("View").ToString == "Apple")    {        cssLink.Href = "/gsclaytonmob.css";    }    else if (Session("View").ToString == "Mobile")    {        cssLink.Href = "/gsclaytonmobold.css";    }    else    {        cssLink.Href = "/gsclayton2.css";    }    GetMenus();}
Once the menu type has been set we can also populate the menu manually in code behind, adding the references dependant on the menu provided.
LoaderVBC#

VB

Protected Sub GetMenus()    Dim m As String = Page.RouteData.Values("PageMenu")    Select Case m        Case "Home"            'HomeSubMenu.Attributes.CssStyletyle = "Active"            Current.InnerHtml = "Home"            Dim a As New HyperLink            a.NavigateUrl = "Home/"            a.Text = "Home"            SubMenuList.Controls.Add(a)            Dim b As New HyperLink            b.NavigateUrl = "About/"            b.Text = "About"            SubMenuList.Controls.Add(b)            Dim c As New HyperLink            c.NavigateUrl = "Login/"            c.Text = "Login"            SubMenuList.Controls.Add(c)    End SelectEnd Sub

C#

protected void GetMenus(){    string m = Page.RouteData.Values("PageMenu");    switch (m)    {        case "Home":            //HomeSubMenu.Attributes.CssStyletyle = "Active"            Current.InnerHtml = "Home";            HyperLink a = new HyperLink();            a.NavigateUrl = "Home/";            a.Text = "Home";            SubMenuList.Controls.Add(a);            HyperLink b = new HyperLink();            b.NavigateUrl = "About/";            b.Text = "About";            SubMenuList.Controls.Add(b);            HyperLink c = new HyperLink();            c.NavigateUrl = "Login/";            c.Text = "Login";            SubMenuList.Controls.Add(c);            break;    }}

You can then style each of the Menus differently in your CSS, for example each of the links in my Sub Menu area are styled differently. The first one is for mobile (full width), and the second for desktop.

CSS

#SubMenu a{color: #332700;float: left;width: 100%;display: block;text-decoration: none;padding: 5px 0px 5px 0px;font-size: large;border-bottom: 1px solid Grey;}#SubMenu a{color: #45144D;padding-left: 8px;float: right;text-decoration: none;}

Author

Helpful?

Please note, this commenting system is still in final testing.

Claytabaseによるウェブサイトのデザイン

これは、当社の Web サイト デザイン サービスの一部である、市場で最も高速で最適化されたシステムの 1 つである Ousia コンテンツ管理システム コードから変更されたコードのセクションです。

これらは、約£500から始まるサイトで利用できます.

システムで行っているように、レスポンシブ CSS を使用することをお勧めします。

詳細: レスポンシブで高速。コンテンツ管理システムを使用した Web 開発、設計、およびホスティング
Copyright Claytabase Ltd 2020

Registered in England and Wales 08985867

RSSLoginLink クッキーポリシーサイトマップ

Social Media

facebook.com/Claytabaseinstagram.com/claytabase/twitter.com/Claytabaselinkedin.com/company/claytabase-ltd

Get in Touch

+442392064871info@claytabase.comClaytabase Ltd, Unit 3d, Rink Road Industrial Estate, PO33 2LT, United Kingdom
The settings on this site are set to allow all cookies. These can be changed on our Cookie Policy & Settings page.
By continuing to use this site you agree to the use of cookies.
Ousia Logo
Logout
Ousia CMS Loader