Don*_*000 0 php detection responsive-design
是否有类/脚本/可能性来检查网站的响应式设计?它可能是这样的:
if (is_responsive('http://www.site.tld')) {
echo 'is responsive';
}
else {
echo 'is not responsive';
}
Run Code Online (Sandbox Code Playgroud)
有任何想法吗?
小智 7
有两种方法可以做到这一点:
您可以使用JavaScript来检测CSS中是否存在任何媒体查询,然后使用Ajax将真/假变量发送到PHP
甚至可能使用您的服务器端语言来读取您的CSS文件并使用RegEx来搜索文件中的任何媒体查询.
这些方法都不能保证工作,实在是没有"标准","安全"或"非hackey"这样的方式,你也CAN NOT使用服务器端的技术直接处理媒体查询.
可用于匹配@media规则的RegEx 是:
^\@media\s(.*?)\{$
^ =在字符串的开始位置断言
\ @ =匹配的字符@字面上
媒体=匹配的字符媒体字面上
\ S =匹配任何空白字符[\ r \n \吨\ F]
.*?=匹配任何字符(换行符除外)
{=匹配字符{字
面值$ =字符串末尾的断言位置
\@media\s(.*?)\{
\ @ =匹配字符@ literally
media =匹配字符媒体字面上
\ s =匹配任何空格字符[\ r \n\t\f]
.*?=匹配任何字符(换行符除外)
{=匹配字符{字面意思
你也可以使用它i来使RegEx不区分大小写(i只忽略[a-zA-Z]的情况)
以下是@media使用RegEx 检测规则的四种可能方法:
/^\@media\s(.*?)\{$//^\@media\s(.*?)\{$/i/\@media\s(.*?)\{//\@media\s(.*?)\{/i