Como exibir algo diferente para cada navegador com PHP
Em alguns momentos precisamos descer o nível e fazer umas falcatruas inimagináveis pra inserir um CSS em um navegador específico.
Hoje eu passei por uma dessas. Precisava inserir um “margin-left” dentro de uma div, mas que isso funcionasse apenas no Chrome, pois no Firefox and others tudo estava funcionando normal.
Há diversas maneiras de fazer isso, umas mais simples, através do próprio CSS, outras mais complexas… mas nem sempre a mais simples funciona em alguns casos, então, precisei usar essa belezinha aqui:
<?php
$msie = strpos($_SERVER[“HTTP_USER_AGENT”], ‘MSIE’) ? true : false;
$firefox = strpos($_SERVER[“HTTP_USER_AGENT”], ‘Firefox’) ? true : false;
$safari = strpos($_SERVER[“HTTP_USER_AGENT”], ‘Safari’) ? true : false;
$chrome = strpos($_SERVER[“HTTP_USER_AGENT”], ‘Chrome’) ? true : false;
if ($chrome) {
echo ‘<style type=”text/css”>.bx-wrapper {margin-left:-130px;}</style>‘;
}
?>
Se você quiser usar para outro navegador, basta alterar a variável da condicional:
$msie -> Internet Explorer
$firefox -> Moozila Firefox
$safari -> Safari
$chrome -> Google Chrome
Nada impede também de você exibir algo no diferente em dois navegadores:
if ($msie) {
echo ‘<p>Internet Explorer!</p>’;
}
if ($chrome) {
echo ‘<p>Google Chrome!</p>’;
}