|
Post by account_disabled on Jan 29, 2024 0:16:14 GMT -5
类型的检测例如大多数 UA 字符串仍然以“Mozilla”开头以通过 90 年代使用的 Netscape 检查而 Opera 多年来一直假装是 IE。正如彼得·保罗·科赫所写: “这是一场军备竞赛。如果设备检测真正流行起来浏览器将开始欺骗其用户代理字符串最终出现在检测的右侧。” 客户端方法和媒体查询 或者最简单的方法是在客户端检测移动设备。包含移动样式表的最早技术之一涉及利用样式表的媒体类型例如: <link rel="stylesheet" href="site.css" media="screen" /> <link rel="stylesheet" href="mobile.css" media="handheld" /> 这里我们包含了两个样式表第一个site.css针对使用screen媒体类型的台式机和笔记本电脑而第二个mobile.css针对使用handheld. 虽然这将是一个很好的方。 法但设备支持是另一个问题。较旧的移动设备往往支持handheld媒体类型但它们的实现方式有所不同:有些禁用screen样式表并仅加载handheld而另一些则加载两者。 此外大多数较新的设备已经完全消除了这种handheld区别以便为用户提供功能齐全的网页而不是更乏味的移 购买电话号码列表 动布局。为了支持较新的设备我们需要使用媒体查询它允许我们将样式定位到设备宽度(您可以在 Ethan Marcotte 的文章响应式网页设计中看到媒体查询的另一个实用改编)。由于移动设备通常具有较小的屏幕因此我们可以通过检测 480px 及以下的屏幕来定位手持设备: <link rel="stylesheet" href="mobile.css" media="仅屏幕和(最大设备宽度:480px)"/> 虽然这针对的是大多数较新的设备但许多较旧的设备不支持媒体查询。 因此我们需要一种混合方法来获得最大的市场渗透率。 120+ 原生 React UI 组件与 Next.js 完全兼容 尝试 KENDOREACT 首先定义两个样式表:screen.css包含普通浏览器的所有内容并antiscreen.css覆盖移动设备上不需要的任何样式。将这两个样式表连接到另一个样式表中core.css: import url"screen.css"; import url"antiscreen.css" 手持设备; import url"antiscreen.css" 仅屏幕和 (最大设备宽度:480px); 最后handheld.css为移动浏览器定义另一个带有附加样式的样式表并将它们链接到页面上: 仅屏幕和 max-device-width:480px"/> 虽然该技术在移动设备。
|
|