2015-04-07 2 views
0

Хром неправильно отображает мой SVG, поэтому я бы хотел использовать Chrome вместо PNG. SVG выглядит красиво в других современных браузерах, особенно Mobile Safari на iOS, где пользователи, вероятно, будут щепотать, чтобы увеличить масштаб - так что все остальные получают SVG, но Chrome получает PNG. Как я могу это сделать?PHP: Служить разные изображения в зависимости от браузера?

+0

это [ссылка] (https://www.google.com.au/webhp?sourceid=chrome-instant&ion=1&espv=2&ie=UTF-8 # q = css% 20browser% 20dependent% 20style) должно быть хорошим местом для начала – gwillie

+0

Мне любопытно, что ваш SVG в том, что Chrome не может отобразить его правильно, но другие браузеры могут ... – wavemode

+0

@wavemode Я отлаживал SVG и теперь он отлично отображает Chrome. проблема была вызвана различием в том, как Chrome создает пути с шагом, тоньше 1px. Мне не нужны эти штрихи, поэтому я удалил их все из XML. Это, конечно же, не делает этот вопрос менее обоснованным, поскольку знание того, как обслуживать специфический для браузера контент с PHP, безумно полезно. Если вам интересно, вот код, который я изменил (для всех заполнений). ИСПОЛЬЗУЕМЫЙ БЫТЬ: style = "fill: # cdc4b9; stroke: # cdc4b9; stroke-width: 0.25907141; stroke-miterlimit: 4; непрозрачность штриха: 1; stroke-dasharray: none" NOW SHORTENED TO: style = "fill: # cdc4b9;» – Mentalist

ответ

1

чтения the user agent string и служат содержание условно:

<?php 

if (strpos($_SERVER['HTTP_USER_AGENT'], 'Chrome') !== false) 
{ 
    ?> 
     <img src="mycontent.png"> 
    <?php 
} else { 
    ?> 
     <svg>mycontent</svg> 
    <?php 
} 

?> 
+0

Спасибо! Это сработало, но ваш код нуждается в?> В конце, чтобы закрыть PHP. Добавьте это, и я приму это как ответ. (Не хочу, чтобы эта небольшая проблема с разметкой вызывала путаницу для других) – Mentalist

+0

На самом деле PHP не требует закрывающего тега. На самом деле лучше всего [не включать] (http://stackoverflow.com/questions/4410704/why-would-one-omit-the-close-tag). – wavemode

+0

Спасибо за дополнительную информацию. Все, что я знаю, я получил следующую ошибку, прежде чем добавить закрывающий тег, и добавив, что он разрешил его: Ошибка синтаксиса: ошибка синтаксиса, неожиданный «<» в ... filepath/test.php в строке 24. «<» В строке 24 a закрывающий тег, поэтому он попытался проанализировать HTML как PHP. Любые идеи, что еще может быть исправлено для этого, если закрытие PHP не является рекомендуемым решением? В любом случае я теперь считаю, что этот вопрос ответил, так как я думаю, что наши комментарии достаточно проясняются для любых других читателей, у которых могут быть проблемы. Приветствия. – Mentalist

Смежные вопросы