zoukankan      html  css  js  c++  java
  • 根据判断PC浏览器类型和手机屏幕像素自动调用不同CSS的代码

    1. css媒体查询

    2. php、asp、js判断客户端输出对应的样式

    ------------------- 1.媒体查询方法在 css 里面这样写 --------------------

    @media screen and (min- 320px) and (max- 480px){
    在这里写小屏幕设备的样式
    }

    @media only screen and (min- 321px) and (max- 1024px){
    这里写宽度大于321px小于1024px的样式(一般是平板电脑)
    }

    @media only screen and (min- 1029px){
    这里写pc客户端的样式
    }

    ------------------- 2.用js根据客户端输出对应样式 --------------------

    /*事实上用asp、php后台判断更保险,js在前端,有可能被用户禁止*/

    function loadCSS() {
     if((navigator.userAgent.match(/(phone|pad|pod|iPhone|iPod|ios|iPad|Android|wOSBrowser|BrowserNG|WebOS)/i))) {
            document.write('<link href="css/pad-phone.css" rel="stylesheet" type="text/css" media="screen" />');
        }
        else {
            document.write('<link href="css/pc.css" rel="stylesheet" type="text/css" media="screen" />');
        }
    }
    loadCSS();

    ------------------- 3.既判断分辨率,也判断浏览器-------------------

    应E.Qiang提议,重新完善代码,使之成为判断浏览器类型屏幕分辨率自动调用不同CSS的代码。
    代码如下:
    <SCRIPT LANGUAGE="JavaScript">
    <!--
    if (window.navigator.userAgent.indexOf("MSIE")>=1)
    {
    var IE1024="";
    var IE800="";
    var IE1152="";
    var IEother="";
    ScreenWidth(IE1024,IE800,IE1152,IEother)
    }else{
    if (window.navigator.userAgent.indexOf("Firefox")>=1)
    {
    //如果浏览器为Firefox
    var Firefox1024="";
    var Firefox800="";
    var Firefox1152="";
    var Firefoxother="";
    ScreenWidth(Firefox1024,Firefox800,Firefox1152,Firefoxother)
    }else{
    //如果浏览器为其他
    var Other1024="";
    var Other800="";
    var Other1152="";
    var Otherother="";
    ScreenWidth(Other1024,Other800,Other1152,Otherother)
    }
    }
    function ScreenWidth(CSS1,CSS2,CSS3,CSS4){
    if ((screen.width == 1024) && (screen.height == 768)){
    setActiveStyleSheet(CSS1);
    }else{
    if ((screen.width == 800) && (screen.height == 600)){
    setActiveStyleSheet(CSS2);
    }else{
    if ((screen.width == 1152) && (screen.height == 864)){
    setActiveStyleSheet(CSS3);
    }else{
    setActiveStyleSheet(CSS4);
    }}}
    }
    function setActiveStyleSheet(title){
    document.getElementsByTagName("link")[0].href="style/"+title;
    }
    //-->
    </SCRIPT>

    解释:
    var IE1024="";
    var IE800="";
    var IE1152="";
    var IEother="";
    引号里面分别填写,用户使用IE的时候并且分辨率为1024*768,800*600,1152*864要使用的css文件名.
    var Firefox1024="";
    var Firefox800="";
    var Firefox1152="";
    var Firefoxother="";
    引号里面分别填写,用户使用FF的时候并且分辨率为1024*768,800*600,1152*864要使用的css文件名.
    var Other1024="";
    var Other800="";
    var Other1152="";
    var Otherother="";
    引号里面分别填写,用户使用其他浏览器的时候并且分辨率为1024*768,800*600,1152*864要使用的css文件名.

    例子:

    不判断分辨率,只判断浏览器

    实现根据浏览器类型自动调用不同CSS。

    <SCRIPT LANGUAGE="JavaScript">
    <!--
    if (window.navigator.userAgent.indexOf("MSIE")>=1)
    {    
    //如果浏览器为IE
    setActiveStyleSheet("default.css");
    }else{
    if (window.navigator.userAgent.indexOf("Firefox")>=1)
    {
    //如果浏览器为Firefox
    setActiveStyleSheet("default2.css");
    }else{
    //如果浏览器为其他
    setActiveStyleSheet("newsky.css");
    }
    }
    function setActiveStyleSheet(title){
    document.getElementsByTagName("link")[0].href="style/"+title;
    }
    //-->
    </SCRIPT>

    解释:
    如果浏览器为IE,则调用default.css
    如果浏览器为Firefox,则调用default2.css
    如果浏览器为其他,则调用newsky.css

    用法:
    放在
    </head>
    前面即可。


    只要求判断根据屏幕宽度选择不同的CSS样式表。

    <script language=javascript>
    <!--
    if (screen.width == 800)
    {
    document.write('<link rel=stylesheet type="text/css" href="css800.css">')
    }
    else {document.write('<link rel=stylesheet type="text/css" href="css1024.css">')}
    //-->
    </script>

    转自:http://www.sztjjt.com/post/CSSJSDY.html

  • 相关阅读:
    绑定方法和非绑定方法
    property属性
    面向对象的三大特征之一:封装
    asp:GridView控件的使用
    javaWeb中struts开发——Logic标签
    javaWeb中struts开发——Bean标签
    大话数据结构(十二)java程序——KMP算法及改进的KMP算法实现
    大话数据结构(十一)java程序——串
    大话数据结构(七)——单链表的整表创建与删除
    大话数据结构(十)java程序——队列
  • 原文地址:https://www.cnblogs.com/xuxiaoshuan/p/4371725.html
Copyright © 2011-2022 走看看