есть ли класс / скрипт / возможность проверить сайты на адаптивный дизайн? Это может быть что-то вроде этого:
if (is_responsive('http://www.site.tld')) {
echo 'is responsive';
}
else {
echo 'is not responsive';
}
Есть идеи?
Есть два возможных * способа сделать это:
Вы можете использовать JavaScript, чтобы определить, есть ли какие-либо медиа-запросы в вашем CSS, а затем отправить переменную true / false в PHP, используя Ajax.
Возможно, даже используйте ваш серверный язык для чтения вашего CSS-файла и используйте RegEx для поиска любых медиа-запросов в файле.
Эти методы не гарантированно работают, и на самом деле не существует «стандартного», «безопасного» или «нехакерского» способа сделать это, также вы НЕ МОГУ использовать серверную технологию для прямой обработки медиазапросов.
RegEx, которые вы можете использовать, чтобы соответствовать @media
Правила таковы:
^\@media\s(.*?)\{$
^ = подтвердить позицию в начале строки
\ @ = соответствует символу @ буквально
media = буквально соответствует символам media
\ s = соответствует любому пробелу [\ r \ n \ t \ f]
.*? = соответствует любому символу (кроме новой строки)
{= соответствует символу {буквально
$ = подтвердить позицию в конце строки
\@media\s(.*?)\{
\ @ = соответствует символу @ буквально
media = буквально соответствует символам media
\ s = соответствует любому пробелу [\ r \ n \ t \ f]
.*? = соответствует любому символу (кроме новой строки)
{= соответствует символу {буквально
Также вы можете использовать i
сделать регистр нечувствительным к регистру (i
игнорирует только случай [a-zA-Z])
Вот четыре возможных способа обнаружения @media
правила использования RegEx:
/^\@media\s(.*?)\{$/
/^\@media\s(.*?)\{$/i
/\@media\s(.*?)\{/
/\@media\s(.*?)\{/i
Нет, технически вы не можете проверить скорость отклика с помощью PHP-скрипта, так как это на стороне клиента.
Для этого нет регулярной или идеальной функции. Для программной проверки вы можете анализировать таблицы стилей для медиа-запросов.
Итак, чтобы быть ясно, это не Рекомендую использовать его, так как медиа-запросы могут использоваться для многих вещей.
Если вы все равно хотите попробовать, это может помочь вам: @media ?[^{]+?{
,
Нет! особенно в PHP.
Вы можете попробовать проанализировать CSS для медиа-запросов или проверить, установлены ли размеры элементов в абсолютных значениях или нет.
По моему мнению, лучше всего использовать веб-движок на стороне сервера и заставить его отображать страницу с другим window.width, и проверить, изменится ли ширина документа вместе с ним. Такой модуль может быть выполнен из php, но не может быть выполнен в php. — и если у вас нет выделенного сервера, забудьте о таких трюках.