對不起,如果這個問題似乎是多餘的,但在環顧四周,我發現圍繞每個瀏覽器的條件CSS,而不是操作系統有很多問題。根據操作系統加載不同的樣式表
有什麼方法可以簡單地加載每個操作系統的不同樣式表? (我試圖繞過Mac上的像素行走背景。)我最好需要一個可以很好地集成到Wordpress兒童主題中的選項。
謝謝!
對不起,如果這個問題似乎是多餘的,但在環顧四周,我發現圍繞每個瀏覽器的條件CSS,而不是操作系統有很多問題。根據操作系統加載不同的樣式表
有什麼方法可以簡單地加載每個操作系統的不同樣式表? (我試圖繞過Mac上的像素行走背景。)我最好需要一個可以很好地集成到Wordpress兒童主題中的選項。
謝謝!
最好的方法是將其按用戶代理分解,然後提供不同的樣式表。如果你使用wordperss這將是PHP。 #
$_SERVER['HTTP_USER_AGENT']
我在幾年前就有這種問題。我不得不再次搜索文章,所以這裏是文章中的代碼:
function get_broswer_stylesheet ($test_by = 'browser')
{
$broswer = array(
'MSIE', // parent
'OPERA',
'MOZILLA',
'NETSCAPE',
'FIREFOX',
'SAFARI',
'CHROME'
);
$os = array(
'MAC',
'WINDOWS',
'LINUX'
);
$info[browser] = 'OTHER';
$info[os] = 'OTHER';
$user_agent = $_SERVER['HTTP_USER_AGENT'];
foreach ($broswer as $parent)
{
$s = strpos(strtoupper($user_agent), $parent);
$f = $s + strlen($parent);
$version = substr($user_agent, $f, 5);
$version = preg_replace('/[^0-9,.]/', '', $version);
if (strpos(strtoupper($user_agent), $parent))
{
$info[browser] = $parent;
$info[version] = $version;
}
}
foreach ($os as $parent)
{
if (strpos(strtoupper($user_agent), $parent))
{
$info[os] = $parent;
}
}
if ($test_by == 'browser' || $test_by == 'os')
{
$string = '<link rel="stylesheet" type="text/css" href="' . get_bloginfo('template_directory') . '/css/';
if ($test_by == 'browser')
{
if ($info[browser] == 'MSIE') {
switch ($info[version])
{
case 9 : $string .= 'ie9.css'; break;
case 8 : $string .= 'ie8.css'; break;
case 7 : $string .= 'ie7.css'; break;
default: $string .= 'ie6.css'; break;
}
} elseif ($info[browser] == 'FIREFOX') {
$string .= 'firefox.css';
} elseif ($info[browser] == 'SAFARI') {
$string .= 'safari.css';
} elseif ($info[browser] == 'CHROME') {
$string .= 'chrome.css';
} else {
$string .= 'style.css';
}
} elseif ($test_by == 'os') {
if ($info[os] == 'MAC') {
$string .= 'mac.css';
} elseif ($info[os] == 'WINDOWS') {
$string .= 'windows.css';
} elseif ($info[os] == 'LINUX') {
$string .= 'linux.css';
} else {
$string .= 'style.css';
}
}
$string .= '">';
return $string;
}
}
我希望有幫助。您可以將$test_by
參數設置爲browser
或os
,它會嘗試提供正確的樣式表。
謝謝!你知道一個網站或教程,詳細說明如何使用PHP加載不同的樣式表?我不幸的是不能寫PHP。 – AccountStackOverflow 2012-04-24 14:42:09
我會從這裏開始。 http://devzone.zend.com/6/php-101-php-for-the-absolute-beginner/請專門查看此用戶代理http://www.mywebtronics.com/give-browser-specific -CSS-文件與 - PHP / – Ollie 2012-04-24 14:47:41