zoukankan      html  css  js  c++  java
  • 最佳网页宽度及其实现

    http://www.ruanyifeng.com/blog/2008/07/best_webpage_width_and_realization.html

    作者: 阮一峰

    日期: 2008年7月27日

    1.

    设计网页的时候,确定宽度是一件很苦恼的事。

    minifun.cn为例,根据Google Analytics的统计,半年多以来,访问者的屏幕分辨率一共有81种。最小的分辨率是122x160,这应该是手机;最大的分辨率是3360x1050,天知道是什么设备。

    一张网页要在大小如此悬殊的各种屏幕上,都呈现令人满意的效果,难度可想而知。举例来说,一张400px宽的图片,在800px的屏幕上会占据50%的宽度,而在1920px的屏幕上(Windows Vista的流行设置),只占据20%。

    2.

    目前,常见的屏幕分辨率宽度大概有6种:800px,1024px,1280px,1440px,1680px和1920px。其中,1024px最常见,但是随着大屏幕显示器的流行,更高的分辨率正变得越来越多。

    常见的解决方法有两种:

    第一种:用javascript根据不同的客户端分辨率,选择css样式表文件,具体的做法可以看这里

    第二种:采用弹性布局(Fluid Width Layout),实现网页宽度的自适应。

    第一种方法的优点是,可以根据不同屏幕分辨率,采用完全不同的布局,缺点是要设计和维护多张样式表,比较麻烦。第二种方法只采用一张样式表,比较省事。

    下文就根据css-tricks上的解决方案,讨论如何实现第二种方法,实际上是很简单的。

    3.

    首先,网页的缺省宽度,确定为满足1024px宽度的显示器。这不仅因为1024x768是现在最常见的分辨率,还因为这个宽度对网页最合适:1)它放得下足够的内容,足够三栏的布局;2)单行文字不宜太长,1024px已是极限,否则容易产生阅读疲劳;3)在当前的互联网带宽条件下,网页难以采用大分辨率所要求的大尺寸图片。

    其次,网页宽度会在780px-1260px的范围内,自动变化,即最小不小于780px,最大不超过1280px。

    最后,对于更大的分辨率,网页内容会自动居中。

    4.

    下面就是CSS文件的写法,只要4行。需要注意的是,这几行的语句都针对整个页面,即body标签或者最外层的那个div区域。

    margin: 10px auto;

    这一行保证了网页在任何分辨率下,都会居中。

    min- 780px;
    max- 1260px;

    这二行规定了网页的最小和最大宽度。注意,IE6不支持这二行,即它们在IE6中是无效的。

    expression(document.body.clientWidth < 782? "780px" : document.body.clientWidth > 1262? "1260px" : "auto");

    这一行是针对IE6的解决方法。它采用了CSS表达式,也可以通过javascript实现。

    另外,如果想让内层的各个区块也自动伸缩,它们的宽度可以采用百分比的形式,比如:

    #div-left{
    50%;
    }

    #div-right{
    50%;
    }

    最后的效果和源码下载请查看这里。通过变动浏览器窗口的大小,可以发现网页在780px-1260px的范围内会自动伸缩。

    5.

    最后,建议大家平时使用计算机的时候,不要盲目采用高分辨率,意义不大。

    =======================================================================================================

    为何1024*768分辨率下网页的宽度为960px

    设计网页的时候,确定宽度是一件很苦恼的事。
    网页最佳宽度应该是:960px ,怎么得出的呢?


    以淘宝网为例,根据Google 统计,半年内浏览者屏幕分辨率一共有81种之多。
    最小的分辨率是122x160,这应该是手机;最大的分辨率是3360x1050,我就不知道是什么设备了。

    其中64%的用户为1024*768,一张网页要在如此大小悬殊的屏幕上都显示出满意的效果,那么我们一定是首先兼容最小分辨率,1024的宽度,还要减去浏览器的竖向滚动条,因为根据不同浏览器的左右会有不同边距,保守估计最合适的宽度为960px,在大屏幕上市居中显示,而小屏幕正好满屏。
     

    您还觉得不满意?
    我们还推荐一种方法:采用弹性布局  (利用css实现),让网页来自动调节宽度。
    操作起来很简单:

     

    首先,网页的缺省宽度为1024px的显示器。这不仅因为1024x768是现在最常见的分辨率,还因为这个宽度对网页最合适:
    1.它放得下足够的内容,足够三栏的布局;
    2.单行文字不宜太长,1024px已是极限,否则容易产生阅读疲劳;
    3.在当前的互联网带宽条件下,网页难以采用大分辨率所要求的大尺寸图片。
    其次,网页宽度会在780px-1260px的范围内,自动变化,即最小不小于780px,最大不超过1280px。

    下面就是CSS文件的写法,只要4行。需要注意的是,这几行的语句都针对整个页面,即body标签或者最外层的那个div区域。

    margin: 0px auto;
    这一行保证了网页在任何分辨率下,都会居中。
    min- 780px;
    max- 1260px;
    这二行规定了网页的最小和最大宽度。注意,IE6不支持这二行,即它们在IE6中是无效的。
    expression(document.body.clientWidth < 782? "780px" : document.body.clientWidth > 1262? "1260px" : "auto");
    这一行是针对IE6的解决方法。它采用了CSS表达式,也可以通过javascript实现。 另外,如果想让内层的各个区块也自动伸缩,它们的宽度可以采用百分比的形式,比如:

    #div-left{
    50%;
    }
    #div-right{
    50%;
    }

    通过变动浏览器窗口的大小,可以发现网页在780px-1260px的范围内会自动伸缩。

  • 相关阅读:
    DOCK-SWARM
    springMVC上传和下载文件
    生成任意内容任意类型的文件
    配置监听(系统启动和关闭时运行的程序)
    配置过滤器
    读取文件内容(TXT之类的文件)
    读取properties文件中的内容
    时间戳转时间字符串和时间
    启动Service的时候报错unable to install breakpoint in
    java后台调用接口并获取返回值
  • 原文地址:https://www.cnblogs.com/buffer/p/1802836.html
Copyright © 2011-2022 走看看