如何在新平板电脑上使用高分辨率?

时间:2015-12-14 10:57:32

标签: android css ipad tablet screen-resolution

我有一个为1920px宽屏幕构建的网站(外联网应用程序),因为它需要同时显示大量信息,并且具有该分辨率的桌面显示器随时可用且便宜。

客户现在想要购买平板电脑,以便在旅途中使用该网站。当然,我们很高兴地看到新的平板电脑系列(例如三星和苹果)的分辨率超出了这一范围。但是,我在一家商店对这些平板电脑进行了一些测试,看起来那些广告显示分辨率都是一个骗局,因为它们不会显示超过907像素宽。

我知道Apple如何销售他们的视网膜屏幕......但你无法解释为什么所有平板电脑品牌现在都可以开始销售具有越来越高分辨率的平板电脑广告,而浏览器中的网站永远无法展示超过我们习以为常的默认低分辨率。

有没有办法让平板电脑上的浏览器支持广告宣传的全分辨率?就像在250px宽的div中,无论你做什么都不超过屏幕宽度的1/4!

客户会购买任何工作,因此不会选择Android或IOS。

3 个答案:

答案 0 :(得分:0)

听起来像你处理设备像素比率,根据这里提出的问题可以处理,但不建议:

Tablet's scaling my web page by 1.5x causing layout issues

答案 1 :(得分:0)

他多米尼克,

您是否尝试过媒体查询? 所以你可以说屏幕的宽度是240,而不是这个..

http://www.w3schools.com/cssref/css3_pr_mediaquery.asp

我希望这是你寻找的地方。

您也可以使用ctrl + shift + m查看自定义分辨率(Firefox)。

答案 2 :(得分:0)

经过一整天的测试后,我终于明白了。

由于像素比率有点缩放您的页面,您需要缩小,但似乎默认情况下它不会允许您缩放1倍以下。所以我在meta视口标签上添加了一个小于1的初始缩放,让你可以完全控制你想要缩小的距离,从而抵消浏览器实现的像素比率。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Net;
using System.Data.SqlClient;
using System.Web;
using System.Configuration;
using System.Data;
using System.Globalization;
using System.ComponentModel;
using Newtonsoft.Json;
using System.Web.Script.Serialization;
using System.IO;
using System.Net.Http;
using System.Net.Http.Headers;



namespace ConsoleApplication5
{


//Classes needed to deserialze JSON data (JSON to C# website)
public class DataObject
{
    public string Name { get; set; }
}

public class Footnote
{
}

public class Datum
{
    public string year { get; set; }
    public string period { get; set; }
    public string periodName { get; set; }
    public string value { get; set; }
    public List<Footnote> footnotes { get; set; }

}

public class Series
{
    public string seriesID { get; set; }
    public List<Datum> data { get; set; }


}

public class Results
{
    public List<Series> series { get; set; }
}

public class RootObject
{
    public string status { get; set; }
    public int responseTime { get; set; }
    public List<object> message { get; set; }
    public Results Results { get; set; }

    public override string ToString()
    {
        return string.Format("Status: {0}", status);
    }

}

class Program
{

    static double octLY;
    static double oct2y;

    static void Main(string[] args)
    {
        TryParsing();

    }


    static void TryParsing()
    {
        var httpWebRequest = (HttpWebRequest)WebRequest.Create("http://api.bls.gov/publicAPI/v2/timeseries/data/CUUR0000SA0");
        httpWebRequest.ContentType = "application/json";
        httpWebRequest.Method = "POST";

        using (var streamWriter = new StreamWriter(httpWebRequest.GetRequestStream()))
        {
            //string json = new JavaScriptSerializer().Serialize(new
            //{
            //    seriesid = "CUUR0000SA0",
            //    startYear = "2010",
            //    endYear = "2015",
            //    catalog = "true",
            //    calculations = "true",
            //    annualAverage = "true",
            //    registrationKey = "f3171173a8ce4b969b5085ba9a83202f"


            //});

            string json = "{\"seriesid\":[\"CUUR0000SA0\"],\"startyear\":\"2010\",\"endyear\":\"2015\",\"catalog\":true,\"calculations\":true,\"annualAverage\":true,\"registrationKey\":\"f3171173a8ce4b969b5085ba9a83202f\"}";

            //Console.WriteLine(json.ToString());
            //Console.ReadLine();

            streamWriter.Write(json);
            streamWriter.Flush();
            streamWriter.Close();
        }

        var httpResponse = (HttpWebResponse)httpWebRequest.GetResponse();
        using (var streamReader = new StreamReader(httpResponse.GetResponseStream()))
            {
            var result = streamReader.ReadToEnd();
            Console.WriteLine(result.ToString());
            Console.ReadLine();
            }
        }

    }
}

当然,这在各种设备上使用时并不直接适用,因为缩放级别总是不同的......但正如我在问题中提到的,它是一个外联网应用程序。

也许有一种方法可以解决这个问题,使解决方案更加完美。我很乐意接受这个答案作为&#34;首选&#34;然后