使用 css / php styleswitcher 在移动视图和标准视图之间来回切换

2024-01-11

有问题的网站在这里:

http://autisticadovcacy.uniongraphics.org http://autisticadovcacy.uniongraphics.org

我最初设计这个时使用一个 css 文件作为默认、打印和移动样式,使用@media print and @media only screen and (max-width: 480px), only screen and (max-device-width: 480px)来分离这些样式。

我还有单独的样式表,用于一些与辅助功能相关的修改(字体大小增加、对比度更改)。我正在使用 PHP 样式切换器脚本来允许用户手动切换这些样式。我链接到标题中的样式切换器,如下所示:

<link rel="stylesheet" href="/wp-content/themes/asan/css/switcher.php?default=style.css" type="text/css" />

并将默认样式定义为style.css.

这一切都运行良好,直到客户表示他们希望为用户提供一种从移动设备切换回默认布局的方法。我想我应该将所有移动样式提取到一个单独的样式表中,在头文件中添加一个额外的链接以使用与以前相同的媒体查询加载该样式表,然后在页脚中添加一个样式切换链接以允许用户如果愿意的话可以切换回主样式表。

但是,当我从主样式表中删除移动样式并在加载主样式表后在标题中添加此行时:

<link media="handheld, only screen and (max-width: 480px), only screen and (max-device-width: 480px)" rel="stylesheet" type="text/css" href="/wp-content/themes/asan/css/mobile.css" />

……不知何故,移动风格不再排在最后。 mobile.css 文件正在加载,但仅显示标记为 !important 的样式;其他一切都默认为主样式表。

我想这可能是因为移动样式表是在样式切换器脚本之外加载的,所以我尝试了

<link media="handheld, only screen and (max-width: 480px), only screen and (max-device-width: 480px)" rel="stylesheet" type="text/css" href="/wp-content/themes/asan/css/switcher.php?default=mobile.css" />

但这也行不通。

任何人都可以发现我的设置错误,和/或推荐一种更好的方法来允许用户在标准视图和移动视图之间切换(缺少创建一个完全独立的移动网站并使用重定向,我希望避免这种情况) )?


对于处理此问题的其他人 - 我使用了 Device Theme Switcher WP 插件:https://github.com/jamesmehorter/device-theme-switcher/ https://github.com/jamesmehorter/device-theme-switcher/。该插件允许您为手持设备和平板电脑定义单独的主题,并使用用户代理检测将访问者发送到适当的主题,而且还允许您在移动布局中包含“查看完整站点”链接,以便用户可以返回到标准视图他们要。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 css / php styleswitcher 在移动视图和标准视图之间来回切换 的相关文章

  • 如何在 leaflet.js 中设置 layer.control 的样式?

    我正在尝试更改图层控件中的默认下拉菜单图标 我希望图标旁边有文字 有什么办法可以做到这一点吗 也许使用 JQuery 和 CSS 我正在开发一个基于此示例的传单项目 http leafletjs com examples layers co
  • 比例背景图像

    我想放大和缩小页面中的背景图像 我尝试过多种方法 但似乎没有一种方法能按照我想要的方式工作 我的页面的网址是http quaaoutlodge com drupal 7 14 http quaaoutlodge com drupal 7 1
  • css3动画硬闪烁(帧之间没有淡入淡出)

    尝试使用 css3 动画连续闪烁三个元素 我已经让它运行了 但是每一帧都有一个淡入淡出 我想将其删除 理想情况下 每个元素保持可见 1 秒 然后立即隐藏 我尝试将动画设置为帧0 and 99 for opacity 1 and 100 fo
  • PHP表单提交后如何显示成功消息?

    这是代码 我想要这样 表单提交 gt page2 php gt 重定向 gt page1 php 这是消息 弹出窗口或其他内容 page1 php
  • php , simple_html_dom.php, 获取所选选项

    我有一个像这样的 html 块 localurl
  • 类别树的路由

    我正在使用Tree http www gediminasm org article tree nestedset behavior extension for doctrine 2类别树的学说扩展并希望有如下路线 cat subcat1 s
  • 当控制器类扩展父控制器时,为什么我们仍然需要父构造函数?

    我是 CodeIgniter 和 OOP 的初学者 我正在读一页 CI 教程here http ellislab com codeigniter user guide tutorial news section html 我发现了一些让我产
  • 将 NULL 变量插入数据库

    我将变量设置为 NULL 我试图将其插入数据库 但由于某种原因 它们一直以 0 的形式提交 我确信我试图插入的列允许 NULL 并且默认值设置为 NULL 这是我的代码 insert NULL query mysql query INSER
  • CSS 中的 * 有什么作用?

    明星是做什么的 这叫什么 对我来说 这是某种通配符 它叫什么名字 以便我可以阅读它 div zoom 1 this zoom 1 display inline display inline and this whats the differ
  • 通过 SVG 背景传递鼠标事件

    我有两个 SVG 元素 每个元素覆盖整个屏幕 html body height 100 svg position absolute top 0 left 0 bottom 0 right 0
  • 如何从表中选择所有偶数 id?

    我想从 MySQL 数据库的表中选择所有甚至帖子 ID 然后显示它们 我还想获取所有带有奇怪 id 的帖子并将它们显示在其他地方 我想使用 PHP 来完成此操作 因为这是我使用的服务器端语言 或者 我是否必须选择所有帖子 然后使用 Java
  • Firefox:如何测试首选颜色方案?

    在 Firefox 67 中 可以使用媒体查询来检测用户对浅色或深色主题的偏好 https davidwalsh name demo prefers color scheme php 在我的 Firefox 版本 在 Ubuntu 下 中
  • 父>子CSS选择器

    我经常使用这个CSS选择器parent gt child 我的设计在 Mozilla 和 Opera 中看起来不错 但在 IE 中 就很糟糕了 我知道 gt 在 IE 中无法识别 但是 IE 中的替代方案是什么 一种替代方法是使用通用选择器
  • 如何在 Kohana 中包装 PHP 遗留代码?

    我有大量用 PHP 编写的遗留代码 这些代码不是在任何特定框架上编写的 而是主要是老式风格 即内联 PHP 然而 我的大部分新代码都是在 Kohana 3 1 X 框架上编写的 尽管 Kohana 确实允许遗留代码和 Kohana 文件在同
  • 无法使用模式 r: fopen(): AWS Elastic Beanstalk 打开

    错误 无法使用模式 r fopen 打开 文件名不能为空当我尝试上传较大的文件 超过 5MB 时 我不断收到此错误 我已将 PHP 应用程序上传到 AWS Elastic Beanstalk 并将文件上传到 AWS S3 我的代码中甚至没有
  • CSS:将加载指示器放置在屏幕中央

    如何将加载指示器放置在屏幕中央 目前我正在使用一个小占位符 它似乎工作得很好 但是 当我向下滚动时 加载指示器保持在该预定义位置 我怎样才能让它跟随滚动 使其始终位于顶部 busy position absolute left 50 top
  • 依赖注入容器什么时候会变得太大,我该怎么办?

    我们都知道为什么依赖注入很棒因为它使代码耦合更少 更容易测试 并且更容易阅读 然后有些人决定使用依赖注入容器 like pimple http pimple sensiolabs org PHP 可以协助依赖倒置 http en wikip
  • 有没有办法防止输入 type=“number” 获得多个点值?

    我只想得到十进制值 如 1 5 0 56 等 但它允许多个点 有什么办法可以预防吗 您可以使用pattern属性
  • 如何使用 Mockery 在第 N 次调用模拟方法时抛出异常

    我需要测试我编写的某些代码多次调用另一个类上的方法时的行为 其中一次调用将导致抛出异常 我在用Mockery http docs mockery io模拟可能引发异常的类 因此 就我而言 该方法将被调用三次 我需要它在第二次抛出异常 这是我
  • 正则表达式 - 匹配单词缩写

    我正在考虑提供以下正则表达式作为答案这个问题 https stackoverflow com questions 2110010 how to find wordpresss installed on domain or server pr

随机推荐