admin管理员组

文章数量:1339470

Can anyone help me with this.

I would like to detect device such as Iphone, BB, andriod and browser to apply their specific css to make it liquefied or adjust to their resolution.

Does andriod and Iphone have difference resolution issue or css problem when it es to mobile browser because i plan to use same css for those 2 because i know they are using the same browser safari as default.

Can anyone help me with this.

I would like to detect device such as Iphone, BB, andriod and browser to apply their specific css to make it liquefied or adjust to their resolution.

Does andriod and Iphone have difference resolution issue or css problem when it es to mobile browser because i plan to use same css for those 2 because i know they are using the same browser safari as default.

Share edited Nov 13, 2018 at 9:12 Cyclonecode 30.2k11 gold badges76 silver badges97 bronze badges asked Feb 16, 2012 at 6:49 BertBert 1,0293 gold badges14 silver badges26 bronze badges 2
  • I think you have resolution issues is you need a website will e 100% on every device. – Mohit Singh Commented Feb 16, 2012 at 6:56
  • yah im using % on width and height on my site. but i want to make the site look different on mobile. just like Facebook it has its mobile version – Bert Commented Feb 16, 2012 at 6:59
 | 

7 Answers 7

Reset to default 7

Here is an example in javascript:

var isMobile = navigator.userAgent.match(/(iPhone|iPod|iPad|Android|BlackBerry)/);

if (isMobile) {
   // User-Agent is IPhone, IPod, IPad, Android or BlackBerry
}

To check for a specific User-Agent string you can do:

if (navigator.userAgent.match(/iPhone/)) {
   // The User-Agent is iPhone
}

Try to use http://www.php/get_browser and check for isMobileDevice field. It might help only, of course, if the path to browscap.ini is set up in php.ini. If not, you can use php classes like https://github./garetjax/phpbrowscap

<meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0;  user-scalable=0;" />
<meta name="HandheldFriendly" content="true"/>
<meta name="MobileOptimized" content="320"/>
<meta http-equiv="cleartype" content="on" />


use this code on your website under <header> tag.

Here is the code for the mobile device detection.

 function isMobile() {

// Check the server headers to see if they're mobile friendly
if(isset($_SERVER["HTTP_X_WAP_PROFILE"])) {
    return true;
}

// If the http_accept header supports wap then it's a mobile too
if(preg_match("/wap\.|\.wap/i",$_SERVER["HTTP_ACCEPT"])) {
    return true;
}

// Still no luck? Let's have a look at the user agent on the browser. If it contains
// any of the following, it's probably a mobile device. Kappow!
if(isset($_SERVER["HTTP_USER_AGENT"])){
    $user_agents = array("midp", "j2me", "avantg", "doo", "novarra", "palmos", "palmsource", "240x320", "opwv", "chtml", "pda", "windows\ ce", "mmp\/", "blackberry", "mib\/", "symbian", "wireless", "nokia", "hand", "mobi", "phone", "cdm", "up\.b", "audio", "SIE\-", "SEC\-", "samsung", "HTC", "mot\-", "mitsu", "sagem", "sony", "alcatel", "lg", "erics", "vx", "NEC", "philips", "mmm", "xx", "panasonic", "sharp", "wap", "sch", "rover", "pocket", "benq", "java", "pt", "pg", "vox", "amoi", "bird", "pal", "kg", "voda", "sany", "kdd", "dbt", "sendo", "sgh", "gradi", "jb", "\d\d\di", "moto");
    foreach($user_agents as $user_string){
        if(preg_match("/".$user_string."/i",$_SERVER["HTTP_USER_AGENT"])) {
            return true;
        }
    }
}

// Let's NOT return "mobile" if it's an iPhone, because the iPhone can render normal pages quite well.
if(preg_match("/iphone/i",$_SERVER["HTTP_USER_AGENT"])) {
    return false;
}

// None of the above? Then it's probably not a mobile device.
return false;
}
    if (isMobile()) {
   header("location:$mobile");
  // if the function returned true, it's a mobile.
  //echo "mobile"; // delete this line in your code, and unment the next line
 // header('Location: http://www.yoursite.mobi/'); // let's redirect the page to   the mobile site

   }

Hope this will help you.

take a look here : http://www.zytrax./tech/web/mobile_ids.html and here : http://www.mobile-phone-specs./user-agent-browser/0/

There are lists of almost all user agent strings for you. .

You can use CSS Media Queries to identify the different devices (actually the different device features like device-width, dpi, etc)

For the CSS, you can have different options like having separate CSS for each type of device OR having a fluid design which would mean having the same CSS scale for different device sizes. The 2nd approach is slightly plex to design, but is much more flexible from new devices that may e up in future..

I use this:

$mobile= stripos( $_SERVER['HTTP_USER_AGENT'], 'mob');

It works almost every time.

Javascript

var mobile= navigator.userAgent.toLowerCase().indexOf( 'mob');

-1 if not mobile; any other value if mobile

<?php

$useragent=$_SERVER['HTTP_USER_AGENT'];

if(preg_match('/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|pal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i',$useragent)||preg_match('/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i',substr($useragent,0,4)))

header('Location: http://detectmobilebrowser./mobile');

?>

本文标签: javascriptHow to Use userAgent to detect mobile deviceStack Overflow