Asp.net mvc 2 在asp.net MVC2中制作网站移动版本的最佳方法是什么?
我最近一直在思考这个问题,我不知道有什么好方法可以创建现有或新MVC2网站/应用程序的移动版本 我认为最简单的方法是根据是否检测到手机使用不同的样式表,但有时如果到处都有大量内联图像或出于其他原因,您也需要更改视图内容Asp.net mvc 2 在asp.net MVC2中制作网站移动版本的最佳方法是什么?,asp.net-mvc-2,themes,skinning,Asp.net Mvc 2,Themes,Skinning,我最近一直在思考这个问题,我不知道有什么好方法可以创建现有或新MVC2网站/应用程序的移动版本 我认为最简单的方法是根据是否检测到手机使用不同的样式表,但有时如果到处都有大量内联图像或出于其他原因,您也需要更改视图内容 这方面的好方法是什么?有没有一种方法可以很容易地创建主题?MVC只是您的服务器端技术,您应该问自己“无论服务器端技术如何,创建移动网站的最佳实践是什么” 在我看来,创建格式良好的语义(x)html是第一步。正如您所说,最合乎逻辑的做法是为不同的媒体类型创建不同的样式表,您是对的
这方面的好方法是什么?有没有一种方法可以很容易地创建主题?MVC只是您的服务器端技术,您应该问自己“无论服务器端技术如何,创建移动网站的最佳实践是什么” 在我看来,创建格式良好的语义(x)html是第一步。正如您所说,最合乎逻辑的做法是为不同的媒体类型创建不同的样式表,您是对的 对于你提到的问题,像内联图像,考虑一下:这些图像是内容还是表示? 在第一种情况下,即使在移动版本中,它们也应该存在。 在后者中,它们在样式表中定义,因此您可以在移动css中简单地避免它们
我能想到的唯一例外是,当你想在移动设备上提供不同的功能时,或者如果你被迫提供不同的功能,例如,在严重依赖JS的页面上,这些脚本不会在移动浏览器上运行。在这种情况下,您可能希望创建这些页面的不同版本,并根据用户代理提供相应的版本。MVC只是您的服务器端技术,您应该问自己“无论服务器端技术如何,创建移动网站的最佳实践是什么” 在我看来,创建格式良好的语义(x)html是第一步。正如您所说,最合乎逻辑的做法是为不同的媒体类型创建不同的样式表,您是对的 对于你提到的问题,像内联图像,考虑一下:这些图像是内容还是表示? 在第一种情况下,即使在移动版本中,它们也应该存在。 在后者中,它们在样式表中定义,因此您可以在移动css中简单地避免它们
我能想到的唯一例外是,当你想在移动设备上提供不同的功能时,或者如果你被迫提供不同的功能,例如,在严重依赖JS的页面上,这些脚本不会在移动浏览器上运行。在这种情况下,您可能希望创建这些页面的不同版本,并根据用户代理提供相应的版本。检查源代码以了解更多信息。他们实现了一个MobileCapableWebFormViewEngine类,该类继承自基本WebFormViewEngine类。MobileCapableWebFormViewEngine使用HTTPContext来决定在客户端中呈现哪个视图。当您看到源代码时,这将更有意义。请检查源代码以了解更多信息。他们实现了一个MobileCapableWebFormViewEngine类,该类继承自基本WebFormViewEngine类。MobileCapableWebFormViewEngine使用HTTPContext来决定在客户端中呈现哪个视图。当您看到源代码时,这会更有意义,但是对于CSS中未定义的图像,您该怎么做呢?只需设置display:none on the mobile version?“创建这些页面的不同版本,并根据用户代理提供相应的版本。”-想知道在MVC中为上述页面执行此操作的好方法吗?当然,这取决于图像。即使对于移动设备,它们也是重要的内容吗?在这种情况下,您应该显示它们。否则显示:无将是适当的。对于另一个问题:您可以为actionmethod创建两个视图。然后在actionmethod中,您可以读取用户代理,并根据它呈现一个或另一个视图。但是,对于CSS中未定义的图像,您该怎么做呢?只需设置display:none on the mobile version?“创建这些页面的不同版本,并根据用户代理提供相应的版本。”-想知道在MVC中为上述页面执行此操作的好方法吗?当然,这取决于图像。即使对于移动设备,它们也是重要的内容吗?在这种情况下,您应该显示它们。否则显示:无将是适当的。对于另一个问题:您可以为actionmethod创建两个视图。然后在actionmethod中,你可以读取用户代理,并根据它呈现一个或另一个视图。我已经完成了大部分工作,但必须在移动设备之前停止。我会看看的。我已经完成了大部分的晚餐,但必须在移动设备之前停止。我去看看。