支持高密度视网膜显示的5种方法
布伦丹·戴维斯(Brendan Davis)在我最近的文章“响应式网络设计和滚动条:Chrome的实现更好? 简短的答案是:不 - 但是我们需要更深入地研究他们可能引起的问题。 什么是视网膜?
“视网膜”是苹果的双密度屏幕的品牌名称,但其他制造商正在创建类似的显示器。该技术用于最近的iPhone,iPad,MacBook Pros和其他高端设备。 例如,MacBook Pro 15“的分辨率为2,880×1,800或220像素 /英寸。在这个规模上,大多数人无法在典型的观看距离上注意到单个像素 - 应用程序和网站太小而无法使用。
因此,该设备恢复为1,440×900的标准分辨率,但是附加像素可用于使字体和图形看起来更光滑。有什么问题?
>标准分辨率位图图像在视网膜显示屏上看起来可能是块状的。 400 x 300的照片缩放到800 x 600像素,但没有其他细节。与光滑字体和其他高分辨率图像相比,这可能是显而易见的。
>现实世界的用法
>如果您环顾网络,您会因为认为每个人都有视网膜显示屏而被原谅。目前,它仅在高端设备中可用,但是这些设备被开发人员垂涎,因此导致了不成比例的在线讨论。在现实世界中,使用类似显示的人的百分比为低单人物。
>让我们介绍一下:如果您不是为1%的IE6/7用户开发,那么您可能不应该太担心使用Rentina的人 - 尤其是因为他们仍然可以查看您的网站。 也就是说,类似视网膜的屏幕最终将迁移到所有设备。现在几乎没有理由烦恼,但是某些前进计划没有任何伤害。让我们以推荐顺序查看选项……>
1。使用SVG和CSS3效果线索在名称中,但可扩展的向量图形是…
可伸缩!
> svg的大小无关紧要 - 它总是很平稳,因为它是使用向量(线条和形状)而定义的,而是比单个像素。对于照片,图表和图表的理想选择,
> svg是不切实际的。主要缺点是IE8及以下缺乏支持,但您始终可以提供PNG后备或使用诸如Raphaël或svgweb之类的垫片。另请参阅:如何将可扩展的向量图形添加到您的网页。>您也可以完全替换一些图像。例如,可以单独使用CSS3复制标题,渐变,角或阴影。它们的质量会更高,导致HTTP请求较少,并且使用较少的带宽。
>2。使用WebFonts图标
我使用WebFonts图标越多,我就越爱它们。像SVG一样,字体是向量,因此它们是可扩展的,因此您可以使用包含图标的字体集。它们非常适合经常使用的小型形状,例如电子邮件信封,电话,小部件控件和社交媒体徽标。它们还可以在包括IE6在内的每个浏览器中工作。
有很多商业和免费图标字体套件可用:
- > tymeson
- >字体真棒
- 标志性
- 基础
或您可以使用托管字体服务,例如我们喜欢图标字体。
我建议使用Fontello或Icomoon等在线工具创建自己的小型自定义图标。>
3。当实用时,请使用高分辨率图像
视网膜的像素是标准屏幕的四倍。如果您有400 x 300映像(120,000像素),则需要使用800 x 600替代方案(480,000像素)在高密度显示器上呈现良好。 但是,高分辨率文件大小不一定要大四倍。每个图像都不同,但是如果它包含可省略的颜色或细节的坚实块,则使用800 x 600图像并将其扩展在浏览器中。务实:如果标准图像为200kb,高分辨率版本为250kb,则使用图像替换技术具有可忽略的好处。在整个过程中都使用更好的版本。
4。使用CSS图像更换
>有时会使图像的高分辨率版本大四倍或更多。在这种情况下,您可能需要考虑图像更换技术,即标准图像被视网膜显示屏上的较大替代方案所取代。可以使用以下媒体查询代码:
缺点:
#myimage { width: 400px; height: 300px; background: url(lo-res.jpg) 0 0 no-repeat; } @media screen and (-webkit-min-device-pixel-ratio: 1.5), screen and (-moz-min-device-pixel-ratio: 1.5), screen and (min-device-pixel-ratio: 1.5) { #myimage { background-image: url(hi-res.jpg); } }
>
一些浏览器将下载这两个图像。- 请记住,这些用户中的许多将在较慢的移动网络上使用智能手机或平板电脑。检测连接速度比确定像素密度更有益。
- 5。使用JavaScript图像替换 可以使用以下代码实现
一旦确定了视网膜显示屏,您就可以:
- 循环浏览所有页面图像并提取URL。
- >将“@2x”附加到文件名,并尝试使用AJAX加载结果图像URL。
- 如果找到,请用高分辨率替代品替换当前图像。 >
>
我的建议:要实用并保持简单。不要花费大量时间来尝试解决与用户相称的设备上的较小渲染问题。当然,当您的老板收到他的新iPad并开始抱怨图像质量时,这些都不重要……>
>对本文的评论已关闭。有关于视网膜展示的疑问吗?为什么不在我们的论坛上询问>
以上是支持高密度视网膜显示的5种方法的详细内容。更多信息请关注PHP中文网其他相关文章!

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

Video Face Swap
使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

JavaScript是现代Web开发的基石,它的主要功能包括事件驱动编程、动态内容生成和异步编程。1)事件驱动编程允许网页根据用户操作动态变化。2)动态内容生成使得页面内容可以根据条件调整。3)异步编程确保用户界面不被阻塞。JavaScript广泛应用于网页交互、单页面应用和服务器端开发,极大地提升了用户体验和跨平台开发的灵活性。

JavaScript的最新趋势包括TypeScript的崛起、现代框架和库的流行以及WebAssembly的应用。未来前景涵盖更强大的类型系统、服务器端JavaScript的发展、人工智能和机器学习的扩展以及物联网和边缘计算的潜力。

不同JavaScript引擎在解析和执行JavaScript代码时,效果会有所不同,因为每个引擎的实现原理和优化策略各有差异。1.词法分析:将源码转换为词法单元。2.语法分析:生成抽象语法树。3.优化和编译:通过JIT编译器生成机器码。4.执行:运行机器码。V8引擎通过即时编译和隐藏类优化,SpiderMonkey使用类型推断系统,导致在相同代码上的性能表现不同。

JavaScript是现代Web开发的核心语言,因其多样性和灵活性而广泛应用。1)前端开发:通过DOM操作和现代框架(如React、Vue.js、Angular)构建动态网页和单页面应用。2)服务器端开发:Node.js利用非阻塞I/O模型处理高并发和实时应用。3)移动和桌面应用开发:通过ReactNative和Electron实现跨平台开发,提高开发效率。

本文展示了与许可证确保的后端的前端集成,并使用Next.js构建功能性Edtech SaaS应用程序。 前端获取用户权限以控制UI的可见性并确保API要求遵守角色库

Python更适合初学者,学习曲线平缓,语法简洁;JavaScript适合前端开发,学习曲线较陡,语法灵活。1.Python语法直观,适用于数据科学和后端开发。2.JavaScript灵活,广泛用于前端和服务器端编程。

从C/C 转向JavaScript需要适应动态类型、垃圾回收和异步编程等特点。1)C/C 是静态类型语言,需手动管理内存,而JavaScript是动态类型,垃圾回收自动处理。2)C/C 需编译成机器码,JavaScript则为解释型语言。3)JavaScript引入闭包、原型链和Promise等概念,增强了灵活性和异步编程能力。

我使用您的日常技术工具构建了功能性的多租户SaaS应用程序(一个Edtech应用程序),您可以做同样的事情。 首先,什么是多租户SaaS应用程序? 多租户SaaS应用程序可让您从唱歌中为多个客户提供服务
