Как писать правила CSS, работающие только с одним из браузеров: Chrome, Safari или Opera?
Для Firefox писать код предельно просто, так как, ориентируясь при кодировании на Firefox, достаточно следовать установленным нормам и стандартам. Для браузеров IE, как в целом, так и по отдельности, сделать это так же легко с помощью всем известных хаков или при помощи условных комментариев IE, которые избирательно присоединяют таблицы стилей, руководствуясь номером версии нужного нам браузера. А как написать CSS правила и заставить браузер распознать, что написаны они специально под Chrome, Safari или Opera?
Используйте PHP для разграничения браузеров.
PHP
echo $_SERVER['HTTP_USER_AGENT'];
Поместите эту строку в ваш php файл, загрузите этот файл на свой сервер и просмотрите его через все те браузеры, который стоят на вашем компьютере. Данные приходят от сервера, причем $_SERVER['HTTP_USER_AGENT']
содержит всю информацию, которая известна PHP об источнике запроса, коим является ваш браузер. Теперь, когда сервер в состоянии распознать браузер пользователя, вы можете создавать различные версии веб-страницы, используя PHP и вставляя различные CSS классы, соответствующие тому типу браузера, который вам нужен:
PHP
if (strpos($_SERVER['HTTP_USER_AGENT'], 'Safari') !== false) {
// Chrome содержит в строке 'Chrome' и 'Safari'
if (strpos($_SERVER['HTTP_USER_AGENT'], 'Chrome') !== false) {
echo '<body class="chrome">';
} else {
echo '<body class="safari">';
}
} elseif (strpos($_SERVER['HTTP_USER_AGENT'], 'Opera') !== false) {
echo '<body class="opera">';
} else {
echo '<body>';
}
haystack
, string needle
) Возвращает позицию первого вхождения подстроки
needle
в строку haystack
. Дальше легче. Создайте нужные вам стили к вышеприведенным классам, чтобы адаптировать свой дизайн под Safari, Chrome или Opera. С помощью переменной $_SERVER['HTTP_USER_AGENT']
можно сделать гораздо больше , а именно - можно определять версии браузеров и операционных систем или писать программное обеспечение для статистики веб-трафика вашего сайта.
Комментарии к статье