码迷,mamicode.com
首页 > Web开发 > 详细

(转)CSS 为不同大小的浏览器视窗使用不同的样式表

时间:2015-01-13 21:31:28      阅读:179      评论:0      收藏:0      [点我收藏+]

标签:

转自:http://www.iefans.net/liulanqi-shichuang-butong-yangshibiao/

同一个网站,访问它的浏览器可能会是不同的宽度,常见的有320px,480px,800px,1024px,1280px,1920px等,为不同大小的浏览器视窗提供不同的访问效果,提高用户的使用体验,同时网站本身也可以为不同受众提供不同的资源。
下面提供两种不同的浏览器视窗解决方案,这两个方法都同样适用于IE浏览器与其他非IE内核浏览器。

技术分享

一、通过W3C standard来定义,例如:

view sourceprint?
<link rel="stylesheet" media="screen and (min-device-width: 800px)" href="800.css" />
上面的代码表示:当访问网站的设备浏览器宽度大于等于800px时,将使用800.css这个样式。

又如:

view sourceprint?
<link rel=‘stylesheet‘ media=‘screen and (min-width: 701px) and (max-width: 900px)‘ href=‘css/medium.css‘ />
上面的代码表示:当访问网站的设备浏览器宽度在701px和900px之间时,将使用medium.css这个样式。

目前Mozilla, Opera和WebKit等浏览器的当前版本都支持这个标准,不幸的是IE浏览器并不支持此标准,包括IE8,以及IE9 Previous。

不要着急,方案二将解决此问题。

二、通过JQuery来动态调整页面样式
1、首先定义两个link,当然你也可以是一个,第二个是要更改的css

view sourceprint?
<link rel="stylesheet" type="text/css" href="main.css" />
<link id="size-stylesheet" rel="stylesheet" type="text/css" href="narrow.css" />

2、下面的JavaScript代码将根据不同的浏览器大小,更改css

view sourceprint?
unction adjustStyle(width) { 

    width = parseInt(width); 

    if (width < 701) { 

        $("#size-stylesheet").attr("href", "css/narrow.css"); 

    } else if ((width >= 701) && (width < 900)) { 

        $("#size-stylesheet").attr("href", "css/medium.css"); 

    } else { 

       $("#size-stylesheet").attr("href", "css/wide.css"); 

    } 

} 

$(function() { 

    adjustStyle($(this).width()); 

    $(window).resize(function() { 

        adjustStyle($(this).width()); 

    }); 

});

查看例子:

例子1 例子2 例子3 下载所有例子
英文原址:http://css-tricks.com/resolution-specific-stylesheets/

(转)CSS 为不同大小的浏览器视窗使用不同的样式表

标签:

原文地址:http://www.cnblogs.com/jiajinyi/p/4222472.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!