Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/278.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# iPad作为非特定视图_C#_Ipad_Mobile_Asp.net Mvc 4 - Fatal编程技术网

C# iPad作为非特定视图

C# iPad作为非特定视图,c#,ipad,mobile,asp.net-mvc-4,C#,Ipad,Mobile,Asp.net Mvc 4,这篇文章展示了如何识别特定视图 MVC4将iPad的请求识别为移动设备,但我希望它识别为桌面设备,而不是移动设备,因此我使用了以下代码: DisplayModeProvider.Instance.Modes.Insert(0, new DefaultDisplayMode("") { ContextCondition = (context => context.GetOverriddenUserAgent().IndexOf("iPad",

这篇文章展示了如何识别特定视图

MVC4将iPad的请求识别为移动设备,但我希望它识别为桌面设备,而不是移动设备,因此我使用了以下代码:

DisplayModeProvider.Instance.Modes.Insert(0, new DefaultDisplayMode("")
{
    ContextCondition = (context => context.GetOverriddenUserAgent().IndexOf("iPad", StringComparison.OrdinalIgnoreCase) >= 0)
});
还有更好的办法吗


谢谢

跨多个设备处理多个屏幕分辨率的最佳方法是通过级联样式表。实际上,您可以指定哪个分辨率应该运行布局的变体

您还可以使用Javascript将其推向高潮,这可以让您创建一个真正动态的依赖于分辨率的布局。可以找到这样一个例子

您可以对样式表执行
媒体查询
,也可以执行
视口

例如:

@media screen and (max-width: 980px) {

    #pagewrap {
        width: 95%;
    }

    #content {
        width: 60%;
        padding: 3% 4%;
    }

    #sidebar {
        width: 30%;
    }
    #sidebar .widget {
        padding: 8% 7%;
        margin-bottom: 10px;
    }
这将采取任何屏幕小于980px和调整页面

您可以在这里找到有关的一些调整。你提到的那篇文章实际上建议使用
媒体查询
视口

值得注意的是,一些移动设备提高了分辨率。因此,看起来他们可以正确地查看和处理一个普通的桌面站点,但他们通常不会。例如,
悬停效果
在手机上单键点击时无法正常工作。它不知道手什么时候在按钮上方。所以触摸屏常常不能正确处理桌面界面。在设计过程中要记住这一点


希望这对您有所帮助,或者为您指明了正确的方向。

非常感谢Greg,我正在使用样式表来确定屏幕大小,我的布局已经响应了,但现在,我需要为手机开发一个版本,我希望ipad不会被识别为手机。我理解,我想说的是,你必须确定iPad的分辨率,并将其作为焦点,这样它就不再被认为是“移动的”。上面的例子确实解决了您对如何做的担忧;这里有一些额外的细节: